openc3-cosmos-tool-bucketexplorer 5.10.1 → 5.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d7727beedba5f028d07886689c89d44e32c53b98b2a47afbfee2b0be00a96d3f
4
- data.tar.gz: 9a1d1514ffc8cda2c1e84e5f31437a3c85972369de77e70332ef329dcde4dced
3
+ metadata.gz: 3ecd1f342852ec4c2f86d030723d2b36a7772d7ba2af82e14f35a8b36988ee5c
4
+ data.tar.gz: ba4d67135ae91bba8d60ecd47f347a642b6b636f7820bce894dc6acf35d2f161
5
5
  SHA512:
6
- metadata.gz: 522d768eae4d169dfd5adb94226ce5fcd41d62e27e4c97335841f49dbb7c24731b13ad047ebd8285e7954287aa5e4ed487ceaa26a6585864013e0119659c0ac1
7
- data.tar.gz: 16a7fbc23e539343f0e82970d4d8fc291baa1edb5ca066bf9505292066a894917272fb1ff90f89a5c94227bd545f2dc1c64ed452187c6b2af8536d9e5dabe75c
6
+ metadata.gz: 772322c2613d41417ceaad1045218c13ab69dc3aae473dcfd00d0cc38a5d812aedf389af98228be74ad85fb2360bb6a9513517e9e97c431de9ae2997231963d1
7
+ data.tar.gz: ab6cad0284fd419b72932d0288d4273e3dca05ee802c853380d9bf1ac0af2abd073a27163e75121b5b5b84ba00df2816f6b85d2ca6e3f8e4486bda6c0d321d29
@@ -1,2 +1,2 @@
1
- (self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]=self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]||[]).push([[554],{4554:function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return E}});t(7950),t(4908);function l(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="d68756852db52053f47f699ffcfbec1d800df74e",t=new Function("return this")(),o="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",statementMap:{0:{start:{line:1,column:13},end:{line:9,column:1}},1:{start:{line:1,column:39},end:{line:1,column:43}},2:{start:{line:1,column:47},end:{line:1,column:59}},3:{start:{line:1,column:60},end:{line:8,column:1368}},4:{start:{line:1,column:321},end:{line:1,column:595}},5:{start:{line:1,column:425},end:{line:1,column:450}},6:{start:{line:1,column:450},end:{line:1,column:481}},7:{start:{line:1,column:773},end:{line:1,column:1047}},8:{start:{line:1,column:877},end:{line:1,column:902}},9:{start:{line:1,column:902},end:{line:1,column:933}},10:{start:{line:1,column:1330},end:{line:1,column:1344}},11:{start:{line:8,column:134},end:{line:8,column:776}},12:{start:{line:8,column:724},end:{line:8,column:736}},13:{start:{line:8,column:829},end:{line:8,column:929}},14:{start:{line:8,column:973},end:{line:8,column:1354}},15:{start:{line:8,column:1105},end:{line:8,column:1139}},16:{start:{line:8,column:1285},end:{line:8,column:1317}},17:{start:{line:10,column:22},end:{line:10,column:24}}},fnMap:{0:{name:"render",decl:{start:{line:1,column:22},end:{line:1,column:28}},loc:{start:{line:1,column:30},end:{line:9,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:298},end:{line:1,column:299}},loc:{start:{line:1,column:320},end:{line:1,column:596}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:408},end:{line:1,column:409}},loc:{start:{line:1,column:424},end:{line:1,column:482}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:750},end:{line:1,column:751}},loc:{start:{line:1,column:772},end:{line:1,column:1048}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:860},end:{line:1,column:861}},loc:{start:{line:1,column:876},end:{line:1,column:934}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1314},end:{line:1,column:1315}},loc:{start:{line:1,column:1329},end:{line:1,column:1345}},line:1},6:{name:"(anonymous_6)",decl:{start:{line:8,column:123},end:{line:8,column:124}},loc:{start:{line:8,column:133},end:{line:8,column:777}},line:8},7:{name:"(anonymous_7)",decl:{start:{line:8,column:708},end:{line:8,column:709}},loc:{start:{line:8,column:723},end:{line:8,column:737}},line:8},8:{name:"(anonymous_8)",decl:{start:{line:8,column:810},end:{line:8,column:811}},loc:{start:{line:8,column:828},end:{line:8,column:930}},line:8},9:{name:"(anonymous_9)",decl:{start:{line:8,column:954},end:{line:8,column:955}},loc:{start:{line:8,column:972},end:{line:8,column:1355}},line:8},10:{name:"(anonymous_10)",decl:{start:{line:8,column:1088},end:{line:8,column:1089}},loc:{start:{line:8,column:1104},end:{line:8,column:1140}},line:8},11:{name:"(anonymous_11)",decl:{start:{line:8,column:1268},end:{line:8,column:1269}},loc:{start:{line:8,column:1284},end:{line:8,column:1318}},line:8}},branchMap:{0:{loc:{start:{line:1,column:602},end:{line:1,column:1062}},type:"cond-expr",locations:[{start:{line:1,column:629},end:{line:1,column:1053}},{start:{line:1,column:1054},end:{line:1,column:1062}}],line:1},1:{loc:{start:{line:8,column:417},end:{line:8,column:771}},type:"cond-expr",locations:[{start:{line:8,column:441},end:{line:8,column:762}},{start:{line:8,column:763},end:{line:8,column:771}}],line:8},2:{loc:{start:{line:8,column:981},end:{line:8,column:1181}},type:"cond-expr",locations:[{start:{line:8,column:1008},end:{line:8,column:1172}},{start:{line:8,column:1173},end:{line:8,column:1181}}],line:8},3:{loc:{start:{line:8,column:1182},end:{line:8,column:1353}},type:"cond-expr",locations:[{start:{line:8,column:1209},end:{line:8,column:1344}},{start:{line:8,column:1345},end:{line:8,column:1353}}],line:8}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"d68756852db52053f47f699ffcfbec1d800df74e"},a=t[o]||(t[o]={});a[n]&&a[n].hash===e||(a[n]=i);var s=a[n];return l=function(){return s},s}l(),l().s[0]++;var o=function(){l().f[0]++;var n=(l().s[1]++,this),e=(l().s[2]++,n._self._c);return l().s[3]++,e("div",[e("top-bar",{attrs:{title:n.title}}),e("v-card",{attrs:{width:"100%"}},[e("div",{staticStyle:{"padding-left":"5px","padding-top":"5px"}},[e("span",{staticClass:"ma-2"},[n._v("Buckets:")]),n._l(n.buckets,(function(t,o){return l().f[1]++,l().s[4]++,e("v-chip",{key:o,staticClass:"ma-2",attrs:{color:"primary"},on:{click:function(e){return l().f[2]++,l().s[5]++,e.stopPropagation(),l().s[6]++,n.selectBucket(t)}}},[e("v-avatar",{attrs:{left:""}},[e("v-icon",[n._v("mdi-bucket")])],1),n._v(" "+n._s(t)+" ")],1)}))],2),0!==n.volumes.length?(l().b[0][0]++,e("div",{staticStyle:{"padding-left":"5px"}},[e("span",{staticClass:"ma-2"},[n._v("Volumes:")]),n._l(n.volumes,(function(t,o){return l().f[3]++,l().s[7]++,e("v-chip",{key:o,staticClass:"ma-2",attrs:{color:"primary"},on:{click:function(e){return l().f[4]++,l().s[8]++,e.stopPropagation(),l().s[9]++,n.selectVolume(t)}}},[e("v-avatar",{attrs:{left:""}},[e("v-icon",[n._v("mdi-folder")])],1),n._v(" "+n._s(t)+" ")],1)}))],2)):(l().b[0][1]++,n._e()),e("v-card-title",{staticStyle:{"padding-top":"0px"}},[n._v(" "+n._s(n.root)+" Files "),e("v-spacer"),e("v-text-field",{attrs:{"append-icon":"mdi-magnify",label:"Search","single-line":"","hide-details":""},model:{value:n.search,callback:function(e){l().f[5]++,l().s[10]++,n.search=e},expression:"search"}})],1),e("v-data-table",{attrs:{headers:n.headers,items:n.files,search:n.search,"items-per-page":1e3,"footer-props":{showFirstLastPage:!0,itemsPerPageOptions:[1e3],firstIcon:"mdi-page-first",lastIcon:"mdi-page-last",prevIcon:"mdi-chevron-left",nextIcon:"mdi-chevron-right"},"calculate-widths":"","multi-sort":"",dense:""},on:{"click:row":n.fileClick},scopedSlots:n._u([{key:"top",fn:function(){return l().f[6]++,l().s[11]++,[e("v-row",{staticClass:"pa-5"},[e("v-btn",{attrs:{icon:""}},[e("v-icon",{on:{click:n.backArrow}},[n._v("mdi-chevron-left-box-outline")])],1),e("span",{staticClass:".text-body-1 ma-2",attrs:{"data-test":"file-path"}},[n._v("/"+n._s(n.path))]),e("v-spacer"),"bucket"===n.mode?(l().b[1][0]++,e("div",{staticStyle:{display:"flex"}},[e("span",{staticClass:"pa-1"},[n._v("Upload")]),e("v-file-input",{staticClass:"file-input",attrs:{"hide-input":"","hide-details":"","prepend-icon":"mdi-upload","data-test":"upload-file"},model:{value:n.file,callback:function(e){l().f[7]++,l().s[12]++,n.file=e},expression:"file"}})],1)):(l().b[1][1]++,n._e())],1)]},proxy:!0},{key:"item.name",fn:function(t){var o=t.item;return l().f[8]++,l().s[13]++,[e("v-icon",{staticClass:"mr-2"},[n._v(n._s(o.icon))]),n._v(n._s(o.name)+" ")]}},{key:"item.action",fn:function(t){var o=t.item;return l().f[9]++,l().s[14]++,["mdi-file"===o.icon?(l().b[2][0]++,e("v-icon",{staticClass:"mr-3",attrs:{"data-test":"download-file"},on:{click:function(e){return l().f[10]++,l().s[15]++,n.downloadFile(o.name)}}},[n._v("mdi-download-box")])):(l().b[2][1]++,n._e()),"mdi-file"===o.icon?(l().b[3][0]++,e("v-icon",{attrs:{"data-test":"delete-file"},on:{click:function(e){return l().f[11]++,l().s[16]++,n.deleteFile(o.name)}}},[n._v("mdi-delete")])):(l().b[3][1]++,n._e())]}}])})],1)],1)},i=(l().s[17]++,[]),a=t(5789),s=t(6964),c=t(9502),r=(t(2501),t(8178),t(6728),t(4707),t(1497),t(5640),t(1871),t(2994),t(8188),t(3675),t(4898),t(5825),t(7170),t(8857),t(8329),t(6279),t(427),t(171),t(7093),t(1159),t(2516),t(4349),t(5273),t(6729),t(1801),t(574),t(5787),t(9271),t(3160),t(5688),t(3157),t(3333),t(315),t(556),t(2529),t(6943),t(9224),t(1157),t(8673),t(6886),t(4121),t(523),t(3673),t(753),t(8399),t(3450),function(){var n=this,e=n._self._c;return e("mounting-portal",{attrs:{"mount-to":"#openc3-menu",append:""}},[e("div",{staticClass:"v-toolbar__content"},[n._l(n.menus,(function(t,l){return e("v-menu",{key:l,attrs:{"offset-y":""},scopedSlots:n._u([{key:"activator",fn:function(l){var o=l.on,i=l.attrs;return[e("v-btn",n._g(n._b({staticClass:"mx-1",attrs:{outlined:"","data-test":n.formatDT("".concat(n.title," ").concat(t.label))}},"v-btn",i,!1),o),[e("span",{domProps:{textContent:n._s(t.label)}}),e("v-icon",{attrs:{right:""}},[n._v(" mdi-menu-down ")])],1)]}}],null,!0)},[e("v-list",[e("v-radio-group",{staticClass:"ma-0 pa-0",attrs:{value:t.radioGroup,"hide-details":"",dense:""}},[n._l(t.items,(function(l,o){return[l.divider?e("v-divider"):e("v-list-item",{key:o,attrs:{disabled:l.disabled,"data-test":n.formatDT("".concat(n.title," ").concat(t.label," ").concat(l.label))},on:{click:function(n){return l.command(l)}}},[l.radio?e("v-list-item-action",[e("v-radio",{attrs:{color:"secondary",label:l.label,value:l.label}})],1):n._e(),l.checkbox?e("v-list-item-action",[e("v-checkbox",{attrs:{color:"secondary",label:l.label},model:{value:l.checked,callback:function(e){n.$set(l,"checked",e)},expression:"option.checked"}})],1):n._e(),l.icon?e("v-list-item-icon",[e("v-icon",{attrs:{disabled:l.disabled}},[n._v(n._s(l.icon))])],1):n._e(),l.radio||l.checkbox?n._e():e("v-list-item-title",{style:"cursor: pointer;"+(l.disabled?"opacity: 0.2":"")},[n._v(n._s(l.label))])],1)]}))],2)],1)],1)})),e("v-spacer"),e("v-toolbar-title",[n._v(n._s(n.title))]),e("v-spacer")],2)])}),u=[],m=(t(5940),t(1639),{props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(n){return n.replaceAll(" ","-").toLowerCase()}},mounted:function(){"COSMOS "===this.title.substring(0,7)?document.title=this.title.substring(7):document.title=this.title}}),d=m,A=(t(4888),t(3483)),p=(0,A.Z)(d,r,u,!1,null,"2eb37f67",null),h=p.exports,f=(t(9529),t(1235),t(8233),t(9644)),v=t.n(f),C=t(4091),b=new C["default"],g=v().create({baseURL:location.origin,timeout:6e4,params:{}});g.interceptors.response.use((function(n){return n}),(function(n){if(n.response){var e,t,l,o,i;if(401===n.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(n){n&&OpenC3Auth.setTokens()})),n.response.headers["ignore-errors"]&&n.response.headers["ignore-errors"].includes(n.response.status.toString()))return Promise.reject(n);var a="HTTP ".concat(n.response.status," - ");if(null!==(e=n.response)&&void 0!==e&&e.statusText&&(a+="".concat(n.response.statusText," ")),null!==(t=n.response)&&void 0!==t&&null!==(t=t.config)&&void 0!==t&&t.data&&(a+="".concat(n.response.config.data," ")),null!==(l=n.response)&&void 0!==l&&null!==(l=l.data)&&void 0!==l&&l.message)a+="".concat(n.response.data.message);else if(null!==(o=n.response)&&void 0!==o&&null!==(o=o.data)&&void 0!==o&&o.exception)a+="".concat(n.response.data.exception);else if(null!==(i=n.response)&&void 0!==i&&null!==(i=i.data)&&void 0!==i&&null!==(i=i.error)&&void 0!==i&&i.message)n.response.data.error.class&&(a+="".concat(n.response.data.error.class," ")),a+="".concat(n.response.data.error.message);else{var s;a+="".concat(null===(s=n.response)||void 0===s?void 0:s.data)}throw b.$notify&&b.$notify.serious({title:"Network error",body:a}),n}throw n}));var k=g,_=function(){var n=(0,c.Z)((0,a.Z)().mark((function n(e,t){var l,o,i,s,c,r,u,m,d,A,p=arguments;return(0,a.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(l=p.length>2&&void 0!==p[2]?p[2]:{},o=l.data,i=l.params,s=void 0===i?{}:i,c=l.headers,r=l.noAuth,u=void 0!==r&&r,m=l.noScope,d=void 0!==m&&m,u){n.next=13;break}return n.prev=2,n.next=5,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);case 5:A=n.sent,A&&OpenC3Auth.setTokens(),n.next=12;break;case 9:n.prev=9,n.t0=n["catch"](2),OpenC3Auth.login();case 12:c["Authorization"]=localStorage.openc3Token;case 13:return d||s["scope"]||(s["scope"]=window.openc3Scope),n.abrupt("return",k({method:e,url:t,data:o,params:s,headers:c}));case 15:case"end":return n.stop()}}),n,null,[[2,9]])})));return function(e,t){return n.apply(this,arguments)}}(),y={Accept:"application/json"},x=(0,s.Z)((0,s.Z)({},y),{},{"Content-Type":"application/json"}),w={get:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,o=void 0===l?y:l,i=e.noScope,a=e.noAuth;return _("get",n,{params:t,headers:o,noScope:i,noAuth:a})},put:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,o=e.headers,i=void 0===o?x:o,a=e.noScope,s=e.noAuth;return _("put",n,{data:t,params:l,headers:i,noScope:a,noAuth:s})},post:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,o=e.headers,i=void 0===o?x:o,a=e.noScope,s=e.noAuth;return _("post",n,{data:t,params:l,headers:i,noScope:a,noAuth:s})},delete:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,o=void 0===l?y:l,i=e.noScope,a=e.noAuth;return _("delete",n,{params:t,headers:o,noScope:i,noAuth:a})}};function $(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="8412a914bb3ff91ffb86550bf043d201c9bbbf3b",t=new Function("return this")(),l="__coverage__",o={path:"/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",statementMap:{0:{start:{line:11,column:4},end:{line:27,column:5}},1:{start:{line:30,column:4},end:{line:32,column:6}},2:{start:{line:31,column:6},end:{line:31,column:34}},3:{start:{line:33,column:4},end:{line:35,column:6}},4:{start:{line:34,column:6},end:{line:34,column:34}},5:{start:{line:36,column:4},end:{line:49,column:5}},6:{start:{line:37,column:18},end:{line:37,column:52}},7:{start:{line:38,column:6},end:{line:47,column:7}},8:{start:{line:39,column:8},end:{line:39,column:28}},9:{start:{line:41,column:8},end:{line:41,column:34}},10:{start:{line:42,column:8},end:{line:42,column:44}},11:{start:{line:44,column:8},end:{line:44,column:28}},12:{start:{line:45,column:8},end:{line:45,column:28}},13:{start:{line:46,column:8},end:{line:46,column:44}},14:{start:{line:48,column:6},end:{line:48,column:24}},15:{start:{line:54,column:6},end:{line:54,column:36}},16:{start:{line:54,column:30},end:{line:54,column:36}},17:{start:{line:56,column:41},end:{line:60,column:7}},18:{start:{line:63,column:23},end:{line:66,column:8}},19:{start:{line:67,column:6},end:{line:67,column:22}},20:{start:{line:68,column:6},end:{line:68,column:24}},21:{start:{line:73,column:6},end:{line:78,column:8}},22:{start:{line:79,column:6},end:{line:79,column:24}},23:{start:{line:82,column:6},end:{line:82,column:38}},24:{start:{line:82,column:32},end:{line:82,column:38}},25:{start:{line:83,column:6},end:{line:83,column:26}},26:{start:{line:84,column:6},end:{line:84,column:24}},27:{start:{line:85,column:6},end:{line:85,column:20}},28:{start:{line:86,column:6},end:{line:86,column:19}},29:{start:{line:89,column:6},end:{line:89,column:38}},30:{start:{line:89,column:32},end:{line:89,column:38}},31:{start:{line:90,column:6},end:{line:90,column:26}},32:{start:{line:91,column:6},end:{line:91,column:24}},33:{start:{line:92,column:6},end:{line:92,column:20}},34:{start:{line:93,column:6},end:{line:93,column:19}},35:{start:{line:97,column:6},end:{line:97,column:34}},36:{start:{line:97,column:28},end:{line:97,column:34}},37:{start:{line:98,column:18},end:{line:98,column:38}},38:{start:{line:99,column:6},end:{line:99,column:60}},39:{start:{line:102,column:6},end:{line:104,column:7}},40:{start:{line:103,column:8},end:{line:103,column:24}},41:{start:{line:105,column:6},end:{line:105,column:19}},42:{start:{line:108,column:6},end:{line:116,column:7}},43:{start:{line:109,column:8},end:{line:114,column:9}},44:{start:{line:111,column:10},end:{line:111,column:32}},45:{start:{line:113,column:10},end:{line:113,column:39}},46:{start:{line:115,column:8},end:{line:115,column:21}},47:{start:{line:119,column:17},end:{line:119,column:40}},48:{start:{line:120,column:16},end:{line:120,column:26}},49:{start:{line:121,column:6},end:{line:124,column:7}},50:{start:{line:122,column:8},end:{line:122,column:29}},51:{start:{line:123,column:8},end:{line:123,column:28}},52:{start:{line:125,column:6},end:{line:157,column:10}},53:{start:{line:131,column:21},end:{line:131,column:25}},54:{start:{line:132,column:10},end:{line:145,column:11}},55:{start:{line:133,column:12},end:{line:133,column:36}},56:{start:{line:136,column:32},end:{line:136,column:67}},57:{start:{line:138,column:31},end:{line:138,column:65}},58:{start:{line:140,column:12},end:{line:142,column:13}},59:{start:{line:140,column:25},end:{line:140,column:26}},60:{start:{line:141,column:14},end:{line:141,column:55}},61:{start:{line:143,column:25},end:{line:143,column:47}},62:{start:{line:144,column:12},end:{line:144,column:44}},63:{start:{line:147,column:23},end:{line:147,column:50}},64:{start:{line:148,column:10},end:{line:148,column:26}},65:{start:{line:149,column:10},end:{line:149,column:49}},66:{start:{line:150,column:10},end:{line:150,column:22}},67:{start:{line:154,column:10},end:{line:156,column:12}},68:{start:{line:160,column:17},end:{line:160,column:40}},69:{start:{line:161,column:6},end:{line:163,column:7}},70:{start:{line:162,column:8},end:{line:162,column:28}},71:{start:{line:164,column:6},end:{line:180,column:10}},72:{start:{line:170,column:10},end:{line:176,column:11}},73:{start:{line:179,column:10},end:{line:179,column:28}},74:{start:{line:183,column:17},end:{line:183,column:40}},75:{start:{line:184,column:6},end:{line:186,column:7}},76:{start:{line:185,column:8},end:{line:185,column:28}},77:{start:{line:187,column:6},end:{line:218,column:10}},78:{start:{line:193,column:10},end:{line:195,column:12}},79:{start:{line:194,column:12},end:{line:194,column:55}},80:{start:{line:196,column:10},end:{line:205,column:11}},81:{start:{line:198,column:14},end:{line:203,column:15}},82:{start:{line:208,column:10},end:{line:208,column:25}},83:{start:{line:209,column:10},end:{line:217,column:11}},84:{start:{line:210,column:12},end:{line:212,column:14}},85:{start:{line:214,column:12},end:{line:216,column:14}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:10,column:2},end:{line:10,column:3}},loc:{start:{line:10,column:9},end:{line:28,column:3}},line:10},1:{name:"(anonymous_1)",decl:{start:{line:29,column:2},end:{line:29,column:3}},loc:{start:{line:29,column:12},end:{line:50,column:3}},line:29},2:{name:"(anonymous_2)",decl:{start:{line:30,column:48},end:{line:30,column:49}},loc:{start:{line:30,column:62},end:{line:32,column:5}},line:30},3:{name:"(anonymous_3)",decl:{start:{line:33,column:48},end:{line:33,column:49}},loc:{start:{line:33,column:62},end:{line:35,column:5}},line:33},4:{name:"(anonymous_4)",decl:{start:{line:53,column:10},end:{line:53,column:11}},loc:{start:{line:53,column:28},end:{line:69,column:5}},line:53},5:{name:"(anonymous_5)",decl:{start:{line:72,column:4},end:{line:72,column:5}},loc:{start:{line:72,column:13},end:{line:80,column:5}},line:72},6:{name:"(anonymous_6)",decl:{start:{line:81,column:4},end:{line:81,column:5}},loc:{start:{line:81,column:25},end:{line:87,column:5}},line:81},7:{name:"(anonymous_7)",decl:{start:{line:88,column:4},end:{line:88,column:5}},loc:{start:{line:88,column:25},end:{line:94,column:5}},line:88},8:{name:"(anonymous_8)",decl:{start:{line:95,column:4},end:{line:95,column:5}},loc:{start:{line:95,column:16},end:{line:106,column:5}},line:95},9:{name:"(anonymous_9)",decl:{start:{line:107,column:4},end:{line:107,column:5}},loc:{start:{line:107,column:21},end:{line:117,column:5}},line:107},10:{name:"(anonymous_10)",decl:{start:{line:118,column:4},end:{line:118,column:5}},loc:{start:{line:118,column:27},end:{line:158,column:5}},line:118},11:{name:"(anonymous_11)",decl:{start:{line:130,column:14},end:{line:130,column:15}},loc:{start:{line:130,column:28},end:{line:151,column:9}},line:130},12:{name:"(anonymous_12)",decl:{start:{line:153,column:15},end:{line:153,column:16}},loc:{start:{line:153,column:29},end:{line:157,column:9}},line:153},13:{name:"(anonymous_13)",decl:{start:{line:159,column:4},end:{line:159,column:5}},loc:{start:{line:159,column:25},end:{line:181,column:5}},line:159},14:{name:"(anonymous_14)",decl:{start:{line:169,column:14},end:{line:169,column:15}},loc:{start:{line:169,column:26},end:{line:177,column:9}},line:169},15:{name:"(anonymous_15)",decl:{start:{line:178,column:14},end:{line:178,column:15}},loc:{start:{line:178,column:28},end:{line:180,column:9}},line:178},16:{name:"(anonymous_16)",decl:{start:{line:182,column:4},end:{line:182,column:5}},loc:{start:{line:182,column:18},end:{line:219,column:5}},line:182},17:{name:"(anonymous_17)",decl:{start:{line:192,column:14},end:{line:192,column:15}},loc:{start:{line:192,column:28},end:{line:206,column:9}},line:192},18:{name:"(anonymous_18)",decl:{start:{line:193,column:44},end:{line:193,column:45}},loc:{start:{line:193,column:56},end:{line:195,column:11}},line:193},19:{name:"(anonymous_19)",decl:{start:{line:197,column:33},end:{line:197,column:34}},loc:{start:{line:197,column:43},end:{line:204,column:13}},line:197},20:{name:"(anonymous_20)",decl:{start:{line:207,column:15},end:{line:207,column:16}},loc:{start:{line:207,column:29},end:{line:218,column:9}},line:207}},branchMap:{0:{loc:{start:{line:36,column:4},end:{line:49,column:5}},type:"if",locations:[{start:{line:36,column:4},end:{line:49,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:36},1:{loc:{start:{line:38,column:6},end:{line:47,column:7}},type:"if",locations:[{start:{line:38,column:6},end:{line:47,column:7}},{start:{line:43,column:13},end:{line:47,column:7}}],line:38},2:{loc:{start:{line:54,column:6},end:{line:54,column:36}},type:"if",locations:[{start:{line:54,column:6},end:{line:54,column:36}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:54},3:{loc:{start:{line:82,column:6},end:{line:82,column:38}},type:"if",locations:[{start:{line:82,column:6},end:{line:82,column:38}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:82},4:{loc:{start:{line:89,column:6},end:{line:89,column:38}},type:"if",locations:[{start:{line:89,column:6},end:{line:89,column:38}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:89},5:{loc:{start:{line:97,column:6},end:{line:97,column:34}},type:"if",locations:[{start:{line:97,column:6},end:{line:97,column:34}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:97},6:{loc:{start:{line:102,column:6},end:{line:104,column:7}},type:"if",locations:[{start:{line:102,column:6},end:{line:104,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:102},7:{loc:{start:{line:108,column:6},end:{line:116,column:7}},type:"if",locations:[{start:{line:108,column:6},end:{line:116,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:108},8:{loc:{start:{line:109,column:8},end:{line:114,column:9}},type:"if",locations:[{start:{line:109,column:8},end:{line:114,column:9}},{start:{line:112,column:15},end:{line:114,column:9}}],line:109},9:{loc:{start:{line:121,column:6},end:{line:124,column:7}},type:"if",locations:[{start:{line:121,column:6},end:{line:124,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:121},10:{loc:{start:{line:132,column:10},end:{line:145,column:11}},type:"if",locations:[{start:{line:132,column:10},end:{line:145,column:11}},{start:{line:134,column:17},end:{line:145,column:11}}],line:132},11:{loc:{start:{line:161,column:6},end:{line:163,column:7}},type:"if",locations:[{start:{line:161,column:6},end:{line:163,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:161},12:{loc:{start:{line:184,column:6},end:{line:186,column:7}},type:"if",locations:[{start:{line:184,column:6},end:{line:186,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:184},13:{loc:{start:{line:209,column:10},end:{line:217,column:11}},type:"if",locations:[{start:{line:209,column:10},end:{line:217,column:11}},{start:{line:213,column:17},end:{line:217,column:11}}],line:209}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0,21:0,22:0,23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0,32:0,33:0,34:0,35:0,36:0,37:0,38:0,39:0,40:0,41:0,42:0,43:0,44:0,45:0,46:0,47:0,48:0,49:0,50:0,51:0,52:0,53:0,54:0,55:0,56:0,57:0,58:0,59:0,60:0,61:0,62:0,63:0,64:0,65:0,66:0,67:0,68:0,69:0,70:0,71:0,72:0,73:0,74:0,75:0,76:0,77:0,78:0,79:0,80:0,81:0,82:0,83:0,84:0,85:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0],8:[0,0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0]},inputSourceMap:{version:3,sources:["BucketExplorer.vue"],names:[],mappings:";AAgIA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",file:"BucketExplorer.vue",sourceRoot:"src/tools/BucketExplorer",sourcesContent:["\x3c!--\n# Copyright 2023 OpenC3, Inc.\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 file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card width=\"100%\">\n <div style=\"padding-left: 5px; padding-top: 5px\">\n <span class=\"ma-2\">Buckets:</span>\n <v-chip\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-avatar left>\n <v-icon>mdi-bucket</v-icon>\n </v-avatar>\n {{ bucket }}\n </v-chip>\n </div>\n <div style=\"padding-left: 5px\" v-if=\"volumes.length !== 0\">\n <span class=\"ma-2\">Volumes:</span>\n <v-chip\n v-for=\"(volume, index) in volumes\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectVolume(volume)\"\n >\n <v-avatar left>\n <v-icon>mdi-folder</v-icon>\n </v-avatar>\n {{ volume }}\n </v-chip>\n </div>\n <v-card-title style=\"padding-top: 0px\">\n {{ root }} Files\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"files\"\n :search=\"search\"\n :items-per-page=\"1000\"\n :footer-props=\"{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n }\"\n @click:row=\"fileClick\"\n calculate-widths\n multi-sort\n dense\n >\n <template v-slot:top>\n <v-row class=\"pa-5\">\n <v-btn icon>\n <v-icon @click=\"backArrow\">mdi-chevron-left-box-outline</v-icon>\n </v-btn>\n <span class=\".text-body-1 ma-2\" data-test=\"file-path\"\n >/{{ path }}</span\n >\n <v-spacer />\n <div style=\"display: flex\" v-if=\"mode === 'bucket'\">\n <span class=\"pa-1\">Upload</span>\n <v-file-input\n v-model=\"file\"\n hide-input\n hide-details\n class=\"file-input\"\n prepend-icon=\"mdi-upload\"\n data-test=\"upload-file\"\n />\n </div>\n </v-row>\n </template>\n <template v-slot:item.name=\"{ item }\">\n <v-icon class=\"mr-2\">{{ item.icon }}</v-icon\n >{{ item.name }}\n </template>\n <template v-slot:item.action=\"{ item }\">\n <v-icon\n class=\"mr-3\"\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n data-test=\"download-file\"\n >mdi-download-box</v-icon\n >\n <v-icon\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"deleteFile(item.name)\"\n data-test=\"delete-file\"\n >mdi-delete</v-icon\n >\n </template>\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport Api from '@openc3/tool-common/src/services/api'\nimport axios from 'axios'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n root: '',\n mode: 'bucket',\n buckets: [],\n volumes: [],\n path: '',\n file: null,\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Action', value: 'action' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n Api.get('/openc3-api/storage/volumes').then((response) => {\n this.volumes = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n if (parts[0] === '') {\n this.mode = 'volume'\n // Prepend the slash to note this is a volume not a bucket\n this.root = `/${parts[1]}`\n this.path = parts.slice(2).join('/')\n } else {\n this.mode = 'bucket'\n this.root = parts[0]\n this.path = parts.slice(1).join('/')\n }\n this.updateFiles()\n }\n },\n watch: {\n // This is the upload function that is activated when the file gets set\n file: async function () {\n if (this.file === null) return\n // Reassign data to presignedRequest for readability\n const { data: presignedRequest } = await Api.get(\n `/openc3-api/storage/upload/${encodeURIComponent(\n `${this.path}${this.file.name}`\n )}?bucket=OPENC3_${this.root.toUpperCase()}_BUCKET`\n )\n // This pushes the file into storage by using the fields in the presignedRequest\n // See storage_controller.rb get_presigned_request()\n const response = await axios({\n ...presignedRequest,\n data: this.file,\n })\n this.file = null\n this.updateFiles()\n },\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.root}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.root === bucket) return\n this.mode = 'bucket'\n this.root = bucket\n this.path = ''\n this.update()\n },\n selectVolume(volume) {\n if (this.root === volume) return\n this.mode = 'volume'\n this.root = volume\n this.path = ''\n this.update()\n },\n backArrow() {\n // Nothing to do if we're at the root so return\n if (this.path === '') return\n let parts = this.path.split('/')\n this.path = parts.slice(0, parts.length - 2).join('/')\n // Only append the last slash if we're not at the root\n // The root is 2 because it's the path before clicking back\n if (parts.length > 2) {\n this.path += '/'\n }\n this.update()\n },\n fileClick(event) {\n if (event.icon === 'mdi-folder') {\n if (this.root === '') {\n // initial root click\n this.root = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n let root = this.root.toUpperCase()\n let api = 'download'\n if (this.mode === 'volume') {\n api = 'download_file'\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/${api}/${encodeURIComponent(\n this.path\n )}${filename}?${this.mode}=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n .then((response) => {\n let href = null\n if (this.mode === 'bucket') {\n href = response.data.url\n } else {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array])\n href = URL.createObjectURL(blob)\n }\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = href\n link.setAttribute('download', filename)\n link.click()\n })\n\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.root}`,\n })\n })\n },\n deleteFile(filename) {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n this.$dialog\n .confirm(`Are you sure you want to delete: ${filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(\n `/openc3-api/storage/delete/${encodeURIComponent(\n this.path\n )}${filename}?${\n this.mode\n }=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n })\n .then((response) => {\n this.updateFiles()\n })\n },\n updateFiles() {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/files/OPENC3_${root}_${this.mode.toUpperCase()}/${\n this.path\n }`\n )\n .then((response) => {\n this.files = response.data[0].map((bucket) => {\n return { name: bucket, icon: 'mdi-folder' }\n })\n this.files = this.files.concat(\n response.data[1].map((item) => {\n return {\n name: item.name,\n icon: 'mdi-file',\n size: item.size,\n modified: item.modified,\n }\n })\n )\n })\n .catch((response) => {\n this.files = []\n if (response.data.message) {\n this.$notify.caution({\n title: response.data.message,\n })\n } else {\n this.$notify.caution({\n title: response.message,\n })\n }\n })\n },\n },\n}\n<\/script>\n\n<style scoped>\n.file-input {\n padding-top: 0px;\n margin-top: 0px;\n}\n</style>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"8412a914bb3ff91ffb86550bf043d201c9bbbf3b"},i=t[l]||(t[l]={});i[n]&&i[n].hash===e||(i[n]=o);var a=i[n];return $=function(){return a},a}$();var S={components:{TopBar:h},data:function(){return $().f[0]++,$().s[0]++,{title:"COSMOS Bucket Explorer",search:"",root:"",mode:"bucket",buckets:[],volumes:[],path:"",file:null,files:[],headers:[{text:"Name",value:"name"},{text:"Size",value:"size"},{text:"Modified Date",value:"modified"},{text:"Action",value:"action"}]}},created:function(){var n=this;if($().f[1]++,$().s[1]++,w.get("/openc3-api/storage/buckets").then((function(e){$().f[2]++,$().s[2]++,n.buckets=e.data})),$().s[3]++,w.get("/openc3-api/storage/volumes").then((function(e){$().f[3]++,$().s[4]++,n.volumes=e.data})),$().s[5]++,this.$route.params.path){$().b[0][0]++;var e=($().s[6]++,this.$route.params.path.split("/"));$().s[7]++,""===e[0]?($().b[1][0]++,$().s[8]++,this.mode="volume",$().s[9]++,this.root="/".concat(e[1]),$().s[10]++,this.path=e.slice(2).join("/")):($().b[1][1]++,$().s[11]++,this.mode="bucket",$().s[12]++,this.root=e[0],$().s[13]++,this.path=e.slice(1).join("/")),$().s[14]++,this.updateFiles()}else $().b[0][1]++},watch:{file:function(){var n=(0,c.Z)((0,a.Z)().mark((function n(){var e,t;return(0,a.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if($().f[4]++,$().s[15]++,null!==this.file){n.next=8;break}return $().b[2][0]++,$().s[16]++,n.abrupt("return");case 8:$().b[2][1]++;case 9:return $().s[17]++,n.next=12,w.get("/openc3-api/storage/upload/".concat(encodeURIComponent("".concat(this.path).concat(this.file.name)),"?bucket=OPENC3_").concat(this.root.toUpperCase(),"_BUCKET"));case 12:return e=n.sent,t=e.data,$().s[18]++,n.next=17,v()((0,s.Z)((0,s.Z)({},t),{},{data:this.file}));case 17:n.sent,$().s[19]++,this.file=null,$().s[20]++,this.updateFiles();case 22:case"end":return n.stop()}}),n,this)})));function e(){return n.apply(this,arguments)}return e}()},methods:{update:function(){$().f[5]++,$().s[21]++,this.$router.push({name:"Bucket Explorer",params:{path:"".concat(this.root,"/").concat(this.path)}}),$().s[22]++,this.updateFiles()},selectBucket:function(n){if($().f[6]++,$().s[23]++,this.root===n)return $().b[3][0]++,void $().s[24]++;$().b[3][1]++,$().s[25]++,this.mode="bucket",$().s[26]++,this.root=n,$().s[27]++,this.path="",$().s[28]++,this.update()},selectVolume:function(n){if($().f[7]++,$().s[29]++,this.root===n)return $().b[4][0]++,void $().s[30]++;$().b[4][1]++,$().s[31]++,this.mode="volume",$().s[32]++,this.root=n,$().s[33]++,this.path="",$().s[34]++,this.update()},backArrow:function(){if($().f[8]++,$().s[35]++,""===this.path)return $().b[5][0]++,void $().s[36]++;$().b[5][1]++;var n=($().s[37]++,this.path.split("/"));$().s[38]++,this.path=n.slice(0,n.length-2).join("/"),$().s[39]++,n.length>2?($().b[6][0]++,$().s[40]++,this.path+="/"):$().b[6][1]++,$().s[41]++,this.update()},fileClick:function(n){$().f[9]++,$().s[42]++,"mdi-folder"===n.icon?($().b[7][0]++,$().s[43]++,""===this.root?($().b[8][0]++,$().s[44]++,this.root=n.name):($().b[8][1]++,$().s[45]++,this.path+="".concat(n.name,"/")),$().s[46]++,this.update()):$().b[7][1]++},downloadFile:function(n){var e=this;$().f[10]++;var t=($().s[47]++,this.root.toUpperCase()),l=($().s[48]++,"download");$().s[49]++,"volume"===this.mode?($().b[9][0]++,$().s[50]++,l="download_file",$().s[51]++,t=t.slice(1)):$().b[9][1]++,$().s[52]++,w.get("/openc3-api/storage/".concat(l,"/").concat(encodeURIComponent(this.path)).concat(n,"?").concat(this.mode,"=OPENC3_").concat(t,"_").concat(this.mode.toUpperCase())).then((function(t){$().f[11]++;var l=($().s[53]++,null);if($().s[54]++,"bucket"===e.mode)$().b[10][0]++,$().s[55]++,l=t.data.url;else{$().b[10][1]++;var o=($().s[56]++,window.atob(t.data.contents)),i=($().s[57]++,new Uint8Array(o.length));$().s[58]++;for(var a=($().s[59]++,0);a<o.length;++a)$().s[60]++,i[a]=o.charCodeAt(a);var s=($().s[61]++,new Blob([i]));$().s[62]++,l=URL.createObjectURL(s)}var c=($().s[63]++,document.createElement("a"));$().s[64]++,c.href=l,$().s[65]++,c.setAttribute("download",n),$().s[66]++,c.click()})).catch((function(t){$().f[12]++,$().s[67]++,e.$notify.caution({title:"Unable to download file ".concat(e.path).concat(n," from bucket ").concat(e.root)})}))},deleteFile:function(n){var e=this;$().f[13]++;var t=($().s[68]++,this.root.toUpperCase());$().s[69]++,"volume"===this.mode?($().b[11][0]++,$().s[70]++,t=t.slice(1)):$().b[11][1]++,$().s[71]++,this.$dialog.confirm("Are you sure you want to delete: ".concat(n),{okText:"Delete",cancelText:"Cancel"}).then((function(l){return $().f[14]++,$().s[72]++,w.delete("/openc3-api/storage/delete/".concat(encodeURIComponent(e.path)).concat(n,"?").concat(e.mode,"=OPENC3_").concat(t,"_").concat(e.mode.toUpperCase()))})).then((function(n){$().f[15]++,$().s[73]++,e.updateFiles()}))},updateFiles:function(){var n=this;$().f[16]++;var e=($().s[74]++,this.root.toUpperCase());$().s[75]++,"volume"===this.mode?($().b[12][0]++,$().s[76]++,e=e.slice(1)):$().b[12][1]++,$().s[77]++,w.get("/openc3-api/storage/files/OPENC3_".concat(e,"_").concat(this.mode.toUpperCase(),"/").concat(this.path)).then((function(e){$().f[17]++,$().s[78]++,n.files=e.data[0].map((function(n){return $().f[18]++,$().s[79]++,{name:n,icon:"mdi-folder"}})),$().s[80]++,n.files=n.files.concat(e.data[1].map((function(n){return $().f[19]++,$().s[81]++,{name:n.name,icon:"mdi-file",size:n.size,modified:n.modified}})))})).catch((function(e){$().f[20]++,$().s[82]++,n.files=[],$().s[83]++,e.data.message?($().b[13][0]++,$().s[84]++,n.$notify.caution({title:e.data.message})):($().b[13][1]++,$().s[85]++,n.$notify.caution({title:e.message}))}))}}},U=S,T=(t(7323),(0,A.Z)(U,o,i,!1,null,"5e42fd88",null)),E=T.exports},3479:function(n,e,t){"use strict";t.r(e);var l=t(9601),o=t.n(l),i=t(2609),a=t.n(i),s=a()(o());s.push([n.id,".file-input[data-v-5e42fd88]{padding-top:0;margin-top:0}",""]),e["default"]=s},6294:function(n,e,t){"use strict";t.r(e);var l=t(9601),o=t.n(l),i=t(2609),a=t.n(i),s=a()(o());s.push([n.id,".v-list[data-v-2eb37f67] .v-label{margin-left:5px}.v-list-item__icon[data-v-2eb37f67]{margin-right:15px!important}.v-list-item__title[data-v-2eb37f67]{color:#fff}",""]),e["default"]=s},7323:function(n,e,t){var l=t(3479);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var o=t(3514).Z;o("d6d83bcc",l,!0,{sourceMap:!1,shadowMode:!1})},4888:function(n,e,t){var l=t(6294);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var o=t(3514).Z;o("706a3f6d",l,!0,{sourceMap:!1,shadowMode:!1})}}]);
1
+ (self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]=self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]||[]).push([[554],{4554:function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return E}});t(7950),t(4908);function l(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="d68756852db52053f47f699ffcfbec1d800df74e",t=new Function("return this")(),o="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",statementMap:{0:{start:{line:1,column:13},end:{line:9,column:1}},1:{start:{line:1,column:39},end:{line:1,column:43}},2:{start:{line:1,column:47},end:{line:1,column:59}},3:{start:{line:1,column:60},end:{line:8,column:1368}},4:{start:{line:1,column:321},end:{line:1,column:595}},5:{start:{line:1,column:425},end:{line:1,column:450}},6:{start:{line:1,column:450},end:{line:1,column:481}},7:{start:{line:1,column:773},end:{line:1,column:1047}},8:{start:{line:1,column:877},end:{line:1,column:902}},9:{start:{line:1,column:902},end:{line:1,column:933}},10:{start:{line:1,column:1330},end:{line:1,column:1344}},11:{start:{line:8,column:134},end:{line:8,column:776}},12:{start:{line:8,column:724},end:{line:8,column:736}},13:{start:{line:8,column:829},end:{line:8,column:929}},14:{start:{line:8,column:973},end:{line:8,column:1354}},15:{start:{line:8,column:1105},end:{line:8,column:1139}},16:{start:{line:8,column:1285},end:{line:8,column:1317}},17:{start:{line:10,column:22},end:{line:10,column:24}}},fnMap:{0:{name:"render",decl:{start:{line:1,column:22},end:{line:1,column:28}},loc:{start:{line:1,column:30},end:{line:9,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:298},end:{line:1,column:299}},loc:{start:{line:1,column:320},end:{line:1,column:596}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:408},end:{line:1,column:409}},loc:{start:{line:1,column:424},end:{line:1,column:482}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:750},end:{line:1,column:751}},loc:{start:{line:1,column:772},end:{line:1,column:1048}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:860},end:{line:1,column:861}},loc:{start:{line:1,column:876},end:{line:1,column:934}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1314},end:{line:1,column:1315}},loc:{start:{line:1,column:1329},end:{line:1,column:1345}},line:1},6:{name:"(anonymous_6)",decl:{start:{line:8,column:123},end:{line:8,column:124}},loc:{start:{line:8,column:133},end:{line:8,column:777}},line:8},7:{name:"(anonymous_7)",decl:{start:{line:8,column:708},end:{line:8,column:709}},loc:{start:{line:8,column:723},end:{line:8,column:737}},line:8},8:{name:"(anonymous_8)",decl:{start:{line:8,column:810},end:{line:8,column:811}},loc:{start:{line:8,column:828},end:{line:8,column:930}},line:8},9:{name:"(anonymous_9)",decl:{start:{line:8,column:954},end:{line:8,column:955}},loc:{start:{line:8,column:972},end:{line:8,column:1355}},line:8},10:{name:"(anonymous_10)",decl:{start:{line:8,column:1088},end:{line:8,column:1089}},loc:{start:{line:8,column:1104},end:{line:8,column:1140}},line:8},11:{name:"(anonymous_11)",decl:{start:{line:8,column:1268},end:{line:8,column:1269}},loc:{start:{line:8,column:1284},end:{line:8,column:1318}},line:8}},branchMap:{0:{loc:{start:{line:1,column:602},end:{line:1,column:1062}},type:"cond-expr",locations:[{start:{line:1,column:629},end:{line:1,column:1053}},{start:{line:1,column:1054},end:{line:1,column:1062}}],line:1},1:{loc:{start:{line:8,column:417},end:{line:8,column:771}},type:"cond-expr",locations:[{start:{line:8,column:441},end:{line:8,column:762}},{start:{line:8,column:763},end:{line:8,column:771}}],line:8},2:{loc:{start:{line:8,column:981},end:{line:8,column:1181}},type:"cond-expr",locations:[{start:{line:8,column:1008},end:{line:8,column:1172}},{start:{line:8,column:1173},end:{line:8,column:1181}}],line:8},3:{loc:{start:{line:8,column:1182},end:{line:8,column:1353}},type:"cond-expr",locations:[{start:{line:8,column:1209},end:{line:8,column:1344}},{start:{line:8,column:1345},end:{line:8,column:1353}}],line:8}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"d68756852db52053f47f699ffcfbec1d800df74e"},a=t[o]||(t[o]={});a[n]&&a[n].hash===e||(a[n]=i);var s=a[n];return l=function(){return s},s}l(),l().s[0]++;var o=function(){l().f[0]++;var n=(l().s[1]++,this),e=(l().s[2]++,n._self._c);return l().s[3]++,e("div",[e("top-bar",{attrs:{title:n.title}}),e("v-card",{attrs:{width:"100%"}},[e("div",{staticStyle:{"padding-left":"5px","padding-top":"5px"}},[e("span",{staticClass:"ma-2"},[n._v("Buckets:")]),n._l(n.buckets,(function(t,o){return l().f[1]++,l().s[4]++,e("v-chip",{key:o,staticClass:"ma-2",attrs:{color:"primary"},on:{click:function(e){return l().f[2]++,l().s[5]++,e.stopPropagation(),l().s[6]++,n.selectBucket(t)}}},[e("v-avatar",{attrs:{left:""}},[e("v-icon",[n._v("mdi-bucket")])],1),n._v(" "+n._s(t)+" ")],1)}))],2),0!==n.volumes.length?(l().b[0][0]++,e("div",{staticStyle:{"padding-left":"5px"}},[e("span",{staticClass:"ma-2"},[n._v("Volumes:")]),n._l(n.volumes,(function(t,o){return l().f[3]++,l().s[7]++,e("v-chip",{key:o,staticClass:"ma-2",attrs:{color:"primary"},on:{click:function(e){return l().f[4]++,l().s[8]++,e.stopPropagation(),l().s[9]++,n.selectVolume(t)}}},[e("v-avatar",{attrs:{left:""}},[e("v-icon",[n._v("mdi-folder")])],1),n._v(" "+n._s(t)+" ")],1)}))],2)):(l().b[0][1]++,n._e()),e("v-card-title",{staticStyle:{"padding-top":"0px"}},[n._v(" "+n._s(n.root)+" Files "),e("v-spacer"),e("v-text-field",{attrs:{"append-icon":"mdi-magnify",label:"Search","single-line":"","hide-details":""},model:{value:n.search,callback:function(e){l().f[5]++,l().s[10]++,n.search=e},expression:"search"}})],1),e("v-data-table",{attrs:{headers:n.headers,items:n.files,search:n.search,"items-per-page":1e3,"footer-props":{showFirstLastPage:!0,itemsPerPageOptions:[1e3],firstIcon:"mdi-page-first",lastIcon:"mdi-page-last",prevIcon:"mdi-chevron-left",nextIcon:"mdi-chevron-right"},"calculate-widths":"","multi-sort":"",dense:""},on:{"click:row":n.fileClick},scopedSlots:n._u([{key:"top",fn:function(){return l().f[6]++,l().s[11]++,[e("v-row",{staticClass:"pa-5"},[e("v-btn",{attrs:{icon:""}},[e("v-icon",{on:{click:n.backArrow}},[n._v("mdi-chevron-left-box-outline")])],1),e("span",{staticClass:".text-body-1 ma-2",attrs:{"data-test":"file-path"}},[n._v("/"+n._s(n.path))]),e("v-spacer"),"bucket"===n.mode?(l().b[1][0]++,e("div",{staticStyle:{display:"flex"}},[e("span",{staticClass:"pa-1"},[n._v("Upload")]),e("v-file-input",{staticClass:"file-input",attrs:{"hide-input":"","hide-details":"","prepend-icon":"mdi-upload","data-test":"upload-file"},model:{value:n.file,callback:function(e){l().f[7]++,l().s[12]++,n.file=e},expression:"file"}})],1)):(l().b[1][1]++,n._e())],1)]},proxy:!0},{key:"item.name",fn:function(t){var o=t.item;return l().f[8]++,l().s[13]++,[e("v-icon",{staticClass:"mr-2"},[n._v(n._s(o.icon))]),n._v(n._s(o.name)+" ")]}},{key:"item.action",fn:function(t){var o=t.item;return l().f[9]++,l().s[14]++,["mdi-file"===o.icon?(l().b[2][0]++,e("v-icon",{staticClass:"mr-3",attrs:{"data-test":"download-file"},on:{click:function(e){return l().f[10]++,l().s[15]++,n.downloadFile(o.name)}}},[n._v("mdi-download-box")])):(l().b[2][1]++,n._e()),"mdi-file"===o.icon?(l().b[3][0]++,e("v-icon",{attrs:{"data-test":"delete-file"},on:{click:function(e){return l().f[11]++,l().s[16]++,n.deleteFile(o.name)}}},[n._v("mdi-delete")])):(l().b[3][1]++,n._e())]}}])})],1)],1)},i=(l().s[17]++,[]),a=t(5789),s=t(6964),c=t(9502),r=(t(2501),t(8178),t(6728),t(4707),t(1497),t(5640),t(1871),t(8188),t(3675),t(4898),t(5825),t(7170),t(8857),t(8329),t(6279),t(427),t(171),t(7093),t(1159),t(2516),t(4349),t(5273),t(6729),t(1801),t(574),t(5787),t(9271),t(3160),t(5688),t(3157),t(3333),t(315),t(556),t(2529),t(6943),t(9224),t(1157),t(8673),t(6886),t(4121),t(523),t(3673),t(753),t(8399),t(3450),function(){var n=this,e=n._self._c;return e("mounting-portal",{attrs:{"mount-to":"#openc3-menu",append:""}},[e("div",{staticClass:"v-toolbar__content"},[n._l(n.menus,(function(t,l){return e("v-menu",{key:l,attrs:{"offset-y":""},scopedSlots:n._u([{key:"activator",fn:function(l){var o=l.on,i=l.attrs;return[e("v-btn",n._g(n._b({staticClass:"mx-1",attrs:{outlined:"","data-test":n.formatDT("".concat(n.title," ").concat(t.label))}},"v-btn",i,!1),o),[e("span",{domProps:{textContent:n._s(t.label)}}),e("v-icon",{attrs:{right:""}},[n._v(" mdi-menu-down ")])],1)]}}],null,!0)},[e("v-list",[e("v-radio-group",{staticClass:"ma-0 pa-0",attrs:{value:t.radioGroup,"hide-details":"",dense:""}},[n._l(t.items,(function(l,o){return[l.divider?e("v-divider"):e("v-list-item",{key:o,attrs:{disabled:l.disabled,"data-test":n.formatDT("".concat(n.title," ").concat(t.label," ").concat(l.label))},on:{click:function(n){return l.command(l)}}},[l.radio?e("v-list-item-action",[e("v-radio",{attrs:{color:"secondary",label:l.label,value:l.label}})],1):n._e(),l.checkbox?e("v-list-item-action",[e("v-checkbox",{attrs:{color:"secondary",label:l.label},model:{value:l.checked,callback:function(e){n.$set(l,"checked",e)},expression:"option.checked"}})],1):n._e(),l.icon?e("v-list-item-icon",[e("v-icon",{attrs:{disabled:l.disabled}},[n._v(n._s(l.icon))])],1):n._e(),l.radio||l.checkbox?n._e():e("v-list-item-title",{style:"cursor: pointer;"+(l.disabled?"opacity: 0.2":"")},[n._v(n._s(l.label))])],1)]}))],2)],1)],1)})),e("v-spacer"),e("v-toolbar-title",[n._v(n._s(n.title))]),e("v-spacer")],2)])}),u=[],m=(t(5940),t(1639),{props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(n){return n.replaceAll(" ","-").toLowerCase()}},mounted:function(){"COSMOS "===this.title.substring(0,7)?document.title=this.title.substring(7):document.title=this.title}}),d=m,A=(t(4888),t(3483)),p=(0,A.Z)(d,r,u,!1,null,"2eb37f67",null),h=p.exports,f=(t(9529),t(1235),t(8233),t(9644)),v=t.n(f),C=t(4091),b=new C["default"],g=v().create({baseURL:location.origin,timeout:6e4,params:{}});g.interceptors.response.use((function(n){return n}),(function(n){if(n.response){var e,t,l,o,i;if(401===n.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(n){n&&OpenC3Auth.setTokens()})),n.response.headers["ignore-errors"]&&n.response.headers["ignore-errors"].includes(n.response.status.toString()))return Promise.reject(n);var a="HTTP ".concat(n.response.status," - ");if(null!==(e=n.response)&&void 0!==e&&e.statusText&&(a+="".concat(n.response.statusText," ")),null!==(t=n.response)&&void 0!==t&&null!==(t=t.config)&&void 0!==t&&t.data&&(a+="".concat(n.response.config.data," ")),null!==(l=n.response)&&void 0!==l&&null!==(l=l.data)&&void 0!==l&&l.message)a+="".concat(n.response.data.message);else if(null!==(o=n.response)&&void 0!==o&&null!==(o=o.data)&&void 0!==o&&o.exception)a+="".concat(n.response.data.exception);else if(null!==(i=n.response)&&void 0!==i&&null!==(i=i.data)&&void 0!==i&&null!==(i=i.error)&&void 0!==i&&i.message)n.response.data.error.class&&(a+="".concat(n.response.data.error.class," ")),a+="".concat(n.response.data.error.message);else{var s;a+="".concat(null===(s=n.response)||void 0===s?void 0:s.data)}throw b.$notify&&b.$notify.serious({title:"Network error",body:a}),n}throw n}));var k=g,_=function(){var n=(0,c.Z)((0,a.Z)().mark((function n(e,t){var l,o,i,s,c,r,u,m,d,A,p=arguments;return(0,a.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(l=p.length>2&&void 0!==p[2]?p[2]:{},o=l.data,i=l.params,s=void 0===i?{}:i,c=l.headers,r=l.noAuth,u=void 0!==r&&r,m=l.noScope,d=void 0!==m&&m,u){n.next=13;break}return n.prev=2,n.next=5,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);case 5:A=n.sent,A&&OpenC3Auth.setTokens(),n.next=12;break;case 9:n.prev=9,n.t0=n["catch"](2),OpenC3Auth.login();case 12:c["Authorization"]=localStorage.openc3Token;case 13:return d||s["scope"]||(s["scope"]=window.openc3Scope),n.abrupt("return",k({method:e,url:t,data:o,params:s,headers:c}));case 15:case"end":return n.stop()}}),n,null,[[2,9]])})));return function(e,t){return n.apply(this,arguments)}}(),y={Accept:"application/json"},x=(0,s.Z)((0,s.Z)({},y),{},{"Content-Type":"application/json"}),w={get:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,o=void 0===l?y:l,i=e.noScope,a=e.noAuth;return _("get",n,{params:t,headers:o,noScope:i,noAuth:a})},put:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,o=e.headers,i=void 0===o?x:o,a=e.noScope,s=e.noAuth;return _("put",n,{data:t,params:l,headers:i,noScope:a,noAuth:s})},post:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,o=e.headers,i=void 0===o?x:o,a=e.noScope,s=e.noAuth;return _("post",n,{data:t,params:l,headers:i,noScope:a,noAuth:s})},delete:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,o=void 0===l?y:l,i=e.noScope,a=e.noAuth;return _("delete",n,{params:t,headers:o,noScope:i,noAuth:a})}};function $(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="8412a914bb3ff91ffb86550bf043d201c9bbbf3b",t=new Function("return this")(),l="__coverage__",o={path:"/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",statementMap:{0:{start:{line:11,column:4},end:{line:27,column:5}},1:{start:{line:30,column:4},end:{line:32,column:6}},2:{start:{line:31,column:6},end:{line:31,column:34}},3:{start:{line:33,column:4},end:{line:35,column:6}},4:{start:{line:34,column:6},end:{line:34,column:34}},5:{start:{line:36,column:4},end:{line:49,column:5}},6:{start:{line:37,column:18},end:{line:37,column:52}},7:{start:{line:38,column:6},end:{line:47,column:7}},8:{start:{line:39,column:8},end:{line:39,column:28}},9:{start:{line:41,column:8},end:{line:41,column:34}},10:{start:{line:42,column:8},end:{line:42,column:44}},11:{start:{line:44,column:8},end:{line:44,column:28}},12:{start:{line:45,column:8},end:{line:45,column:28}},13:{start:{line:46,column:8},end:{line:46,column:44}},14:{start:{line:48,column:6},end:{line:48,column:24}},15:{start:{line:54,column:6},end:{line:54,column:36}},16:{start:{line:54,column:30},end:{line:54,column:36}},17:{start:{line:56,column:41},end:{line:60,column:7}},18:{start:{line:63,column:23},end:{line:66,column:8}},19:{start:{line:67,column:6},end:{line:67,column:22}},20:{start:{line:68,column:6},end:{line:68,column:24}},21:{start:{line:73,column:6},end:{line:78,column:8}},22:{start:{line:79,column:6},end:{line:79,column:24}},23:{start:{line:82,column:6},end:{line:82,column:38}},24:{start:{line:82,column:32},end:{line:82,column:38}},25:{start:{line:83,column:6},end:{line:83,column:26}},26:{start:{line:84,column:6},end:{line:84,column:24}},27:{start:{line:85,column:6},end:{line:85,column:20}},28:{start:{line:86,column:6},end:{line:86,column:19}},29:{start:{line:89,column:6},end:{line:89,column:38}},30:{start:{line:89,column:32},end:{line:89,column:38}},31:{start:{line:90,column:6},end:{line:90,column:26}},32:{start:{line:91,column:6},end:{line:91,column:24}},33:{start:{line:92,column:6},end:{line:92,column:20}},34:{start:{line:93,column:6},end:{line:93,column:19}},35:{start:{line:97,column:6},end:{line:97,column:34}},36:{start:{line:97,column:28},end:{line:97,column:34}},37:{start:{line:98,column:18},end:{line:98,column:38}},38:{start:{line:99,column:6},end:{line:99,column:60}},39:{start:{line:102,column:6},end:{line:104,column:7}},40:{start:{line:103,column:8},end:{line:103,column:24}},41:{start:{line:105,column:6},end:{line:105,column:19}},42:{start:{line:108,column:6},end:{line:116,column:7}},43:{start:{line:109,column:8},end:{line:114,column:9}},44:{start:{line:111,column:10},end:{line:111,column:32}},45:{start:{line:113,column:10},end:{line:113,column:39}},46:{start:{line:115,column:8},end:{line:115,column:21}},47:{start:{line:119,column:17},end:{line:119,column:40}},48:{start:{line:120,column:16},end:{line:120,column:26}},49:{start:{line:121,column:6},end:{line:124,column:7}},50:{start:{line:122,column:8},end:{line:122,column:29}},51:{start:{line:123,column:8},end:{line:123,column:28}},52:{start:{line:125,column:6},end:{line:157,column:10}},53:{start:{line:131,column:21},end:{line:131,column:25}},54:{start:{line:132,column:10},end:{line:145,column:11}},55:{start:{line:133,column:12},end:{line:133,column:36}},56:{start:{line:136,column:32},end:{line:136,column:67}},57:{start:{line:138,column:31},end:{line:138,column:65}},58:{start:{line:140,column:12},end:{line:142,column:13}},59:{start:{line:140,column:25},end:{line:140,column:26}},60:{start:{line:141,column:14},end:{line:141,column:55}},61:{start:{line:143,column:25},end:{line:143,column:47}},62:{start:{line:144,column:12},end:{line:144,column:44}},63:{start:{line:147,column:23},end:{line:147,column:50}},64:{start:{line:148,column:10},end:{line:148,column:26}},65:{start:{line:149,column:10},end:{line:149,column:49}},66:{start:{line:150,column:10},end:{line:150,column:22}},67:{start:{line:154,column:10},end:{line:156,column:12}},68:{start:{line:160,column:17},end:{line:160,column:40}},69:{start:{line:161,column:6},end:{line:163,column:7}},70:{start:{line:162,column:8},end:{line:162,column:28}},71:{start:{line:164,column:6},end:{line:180,column:10}},72:{start:{line:170,column:10},end:{line:176,column:11}},73:{start:{line:179,column:10},end:{line:179,column:28}},74:{start:{line:183,column:17},end:{line:183,column:40}},75:{start:{line:184,column:6},end:{line:186,column:7}},76:{start:{line:185,column:8},end:{line:185,column:28}},77:{start:{line:187,column:6},end:{line:218,column:10}},78:{start:{line:193,column:10},end:{line:195,column:12}},79:{start:{line:194,column:12},end:{line:194,column:55}},80:{start:{line:196,column:10},end:{line:205,column:11}},81:{start:{line:198,column:14},end:{line:203,column:15}},82:{start:{line:208,column:10},end:{line:208,column:25}},83:{start:{line:209,column:10},end:{line:217,column:11}},84:{start:{line:210,column:12},end:{line:212,column:14}},85:{start:{line:214,column:12},end:{line:216,column:14}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:10,column:2},end:{line:10,column:3}},loc:{start:{line:10,column:9},end:{line:28,column:3}},line:10},1:{name:"(anonymous_1)",decl:{start:{line:29,column:2},end:{line:29,column:3}},loc:{start:{line:29,column:12},end:{line:50,column:3}},line:29},2:{name:"(anonymous_2)",decl:{start:{line:30,column:48},end:{line:30,column:49}},loc:{start:{line:30,column:62},end:{line:32,column:5}},line:30},3:{name:"(anonymous_3)",decl:{start:{line:33,column:48},end:{line:33,column:49}},loc:{start:{line:33,column:62},end:{line:35,column:5}},line:33},4:{name:"(anonymous_4)",decl:{start:{line:53,column:10},end:{line:53,column:11}},loc:{start:{line:53,column:28},end:{line:69,column:5}},line:53},5:{name:"(anonymous_5)",decl:{start:{line:72,column:4},end:{line:72,column:5}},loc:{start:{line:72,column:13},end:{line:80,column:5}},line:72},6:{name:"(anonymous_6)",decl:{start:{line:81,column:4},end:{line:81,column:5}},loc:{start:{line:81,column:25},end:{line:87,column:5}},line:81},7:{name:"(anonymous_7)",decl:{start:{line:88,column:4},end:{line:88,column:5}},loc:{start:{line:88,column:25},end:{line:94,column:5}},line:88},8:{name:"(anonymous_8)",decl:{start:{line:95,column:4},end:{line:95,column:5}},loc:{start:{line:95,column:16},end:{line:106,column:5}},line:95},9:{name:"(anonymous_9)",decl:{start:{line:107,column:4},end:{line:107,column:5}},loc:{start:{line:107,column:21},end:{line:117,column:5}},line:107},10:{name:"(anonymous_10)",decl:{start:{line:118,column:4},end:{line:118,column:5}},loc:{start:{line:118,column:27},end:{line:158,column:5}},line:118},11:{name:"(anonymous_11)",decl:{start:{line:130,column:14},end:{line:130,column:15}},loc:{start:{line:130,column:28},end:{line:151,column:9}},line:130},12:{name:"(anonymous_12)",decl:{start:{line:153,column:15},end:{line:153,column:16}},loc:{start:{line:153,column:29},end:{line:157,column:9}},line:153},13:{name:"(anonymous_13)",decl:{start:{line:159,column:4},end:{line:159,column:5}},loc:{start:{line:159,column:25},end:{line:181,column:5}},line:159},14:{name:"(anonymous_14)",decl:{start:{line:169,column:14},end:{line:169,column:15}},loc:{start:{line:169,column:26},end:{line:177,column:9}},line:169},15:{name:"(anonymous_15)",decl:{start:{line:178,column:14},end:{line:178,column:15}},loc:{start:{line:178,column:28},end:{line:180,column:9}},line:178},16:{name:"(anonymous_16)",decl:{start:{line:182,column:4},end:{line:182,column:5}},loc:{start:{line:182,column:18},end:{line:219,column:5}},line:182},17:{name:"(anonymous_17)",decl:{start:{line:192,column:14},end:{line:192,column:15}},loc:{start:{line:192,column:28},end:{line:206,column:9}},line:192},18:{name:"(anonymous_18)",decl:{start:{line:193,column:44},end:{line:193,column:45}},loc:{start:{line:193,column:56},end:{line:195,column:11}},line:193},19:{name:"(anonymous_19)",decl:{start:{line:197,column:33},end:{line:197,column:34}},loc:{start:{line:197,column:43},end:{line:204,column:13}},line:197},20:{name:"(anonymous_20)",decl:{start:{line:207,column:15},end:{line:207,column:16}},loc:{start:{line:207,column:29},end:{line:218,column:9}},line:207}},branchMap:{0:{loc:{start:{line:36,column:4},end:{line:49,column:5}},type:"if",locations:[{start:{line:36,column:4},end:{line:49,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:36},1:{loc:{start:{line:38,column:6},end:{line:47,column:7}},type:"if",locations:[{start:{line:38,column:6},end:{line:47,column:7}},{start:{line:43,column:13},end:{line:47,column:7}}],line:38},2:{loc:{start:{line:54,column:6},end:{line:54,column:36}},type:"if",locations:[{start:{line:54,column:6},end:{line:54,column:36}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:54},3:{loc:{start:{line:82,column:6},end:{line:82,column:38}},type:"if",locations:[{start:{line:82,column:6},end:{line:82,column:38}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:82},4:{loc:{start:{line:89,column:6},end:{line:89,column:38}},type:"if",locations:[{start:{line:89,column:6},end:{line:89,column:38}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:89},5:{loc:{start:{line:97,column:6},end:{line:97,column:34}},type:"if",locations:[{start:{line:97,column:6},end:{line:97,column:34}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:97},6:{loc:{start:{line:102,column:6},end:{line:104,column:7}},type:"if",locations:[{start:{line:102,column:6},end:{line:104,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:102},7:{loc:{start:{line:108,column:6},end:{line:116,column:7}},type:"if",locations:[{start:{line:108,column:6},end:{line:116,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:108},8:{loc:{start:{line:109,column:8},end:{line:114,column:9}},type:"if",locations:[{start:{line:109,column:8},end:{line:114,column:9}},{start:{line:112,column:15},end:{line:114,column:9}}],line:109},9:{loc:{start:{line:121,column:6},end:{line:124,column:7}},type:"if",locations:[{start:{line:121,column:6},end:{line:124,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:121},10:{loc:{start:{line:132,column:10},end:{line:145,column:11}},type:"if",locations:[{start:{line:132,column:10},end:{line:145,column:11}},{start:{line:134,column:17},end:{line:145,column:11}}],line:132},11:{loc:{start:{line:161,column:6},end:{line:163,column:7}},type:"if",locations:[{start:{line:161,column:6},end:{line:163,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:161},12:{loc:{start:{line:184,column:6},end:{line:186,column:7}},type:"if",locations:[{start:{line:184,column:6},end:{line:186,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:184},13:{loc:{start:{line:209,column:10},end:{line:217,column:11}},type:"if",locations:[{start:{line:209,column:10},end:{line:217,column:11}},{start:{line:213,column:17},end:{line:217,column:11}}],line:209}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0,21:0,22:0,23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0,32:0,33:0,34:0,35:0,36:0,37:0,38:0,39:0,40:0,41:0,42:0,43:0,44:0,45:0,46:0,47:0,48:0,49:0,50:0,51:0,52:0,53:0,54:0,55:0,56:0,57:0,58:0,59:0,60:0,61:0,62:0,63:0,64:0,65:0,66:0,67:0,68:0,69:0,70:0,71:0,72:0,73:0,74:0,75:0,76:0,77:0,78:0,79:0,80:0,81:0,82:0,83:0,84:0,85:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0],8:[0,0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0]},inputSourceMap:{version:3,sources:["BucketExplorer.vue"],names:[],mappings:";AAgIA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",file:"BucketExplorer.vue",sourceRoot:"src/tools/BucketExplorer",sourcesContent:["\x3c!--\n# Copyright 2023 OpenC3, Inc.\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 file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card width=\"100%\">\n <div style=\"padding-left: 5px; padding-top: 5px\">\n <span class=\"ma-2\">Buckets:</span>\n <v-chip\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-avatar left>\n <v-icon>mdi-bucket</v-icon>\n </v-avatar>\n {{ bucket }}\n </v-chip>\n </div>\n <div style=\"padding-left: 5px\" v-if=\"volumes.length !== 0\">\n <span class=\"ma-2\">Volumes:</span>\n <v-chip\n v-for=\"(volume, index) in volumes\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectVolume(volume)\"\n >\n <v-avatar left>\n <v-icon>mdi-folder</v-icon>\n </v-avatar>\n {{ volume }}\n </v-chip>\n </div>\n <v-card-title style=\"padding-top: 0px\">\n {{ root }} Files\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"files\"\n :search=\"search\"\n :items-per-page=\"1000\"\n :footer-props=\"{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n }\"\n @click:row=\"fileClick\"\n calculate-widths\n multi-sort\n dense\n >\n <template v-slot:top>\n <v-row class=\"pa-5\">\n <v-btn icon>\n <v-icon @click=\"backArrow\">mdi-chevron-left-box-outline</v-icon>\n </v-btn>\n <span class=\".text-body-1 ma-2\" data-test=\"file-path\"\n >/{{ path }}</span\n >\n <v-spacer />\n <div style=\"display: flex\" v-if=\"mode === 'bucket'\">\n <span class=\"pa-1\">Upload</span>\n <v-file-input\n v-model=\"file\"\n hide-input\n hide-details\n class=\"file-input\"\n prepend-icon=\"mdi-upload\"\n data-test=\"upload-file\"\n />\n </div>\n </v-row>\n </template>\n <template v-slot:item.name=\"{ item }\">\n <v-icon class=\"mr-2\">{{ item.icon }}</v-icon\n >{{ item.name }}\n </template>\n <template v-slot:item.action=\"{ item }\">\n <v-icon\n class=\"mr-3\"\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n data-test=\"download-file\"\n >mdi-download-box</v-icon\n >\n <v-icon\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"deleteFile(item.name)\"\n data-test=\"delete-file\"\n >mdi-delete</v-icon\n >\n </template>\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport Api from '@openc3/tool-common/src/services/api'\nimport axios from 'axios'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n root: '',\n mode: 'bucket',\n buckets: [],\n volumes: [],\n path: '',\n file: null,\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Action', value: 'action' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n Api.get('/openc3-api/storage/volumes').then((response) => {\n this.volumes = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n if (parts[0] === '') {\n this.mode = 'volume'\n // Prepend the slash to note this is a volume not a bucket\n this.root = `/${parts[1]}`\n this.path = parts.slice(2).join('/')\n } else {\n this.mode = 'bucket'\n this.root = parts[0]\n this.path = parts.slice(1).join('/')\n }\n this.updateFiles()\n }\n },\n watch: {\n // This is the upload function that is activated when the file gets set\n file: async function () {\n if (this.file === null) return\n // Reassign data to presignedRequest for readability\n const { data: presignedRequest } = await Api.get(\n `/openc3-api/storage/upload/${encodeURIComponent(\n `${this.path}${this.file.name}`\n )}?bucket=OPENC3_${this.root.toUpperCase()}_BUCKET`\n )\n // This pushes the file into storage by using the fields in the presignedRequest\n // See storage_controller.rb get_presigned_request()\n const response = await axios({\n ...presignedRequest,\n data: this.file,\n })\n this.file = null\n this.updateFiles()\n },\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.root}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.root === bucket) return\n this.mode = 'bucket'\n this.root = bucket\n this.path = ''\n this.update()\n },\n selectVolume(volume) {\n if (this.root === volume) return\n this.mode = 'volume'\n this.root = volume\n this.path = ''\n this.update()\n },\n backArrow() {\n // Nothing to do if we're at the root so return\n if (this.path === '') return\n let parts = this.path.split('/')\n this.path = parts.slice(0, parts.length - 2).join('/')\n // Only append the last slash if we're not at the root\n // The root is 2 because it's the path before clicking back\n if (parts.length > 2) {\n this.path += '/'\n }\n this.update()\n },\n fileClick(event) {\n if (event.icon === 'mdi-folder') {\n if (this.root === '') {\n // initial root click\n this.root = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n let root = this.root.toUpperCase()\n let api = 'download'\n if (this.mode === 'volume') {\n api = 'download_file'\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/${api}/${encodeURIComponent(\n this.path\n )}${filename}?${this.mode}=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n .then((response) => {\n let href = null\n if (this.mode === 'bucket') {\n href = response.data.url\n } else {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array])\n href = URL.createObjectURL(blob)\n }\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = href\n link.setAttribute('download', filename)\n link.click()\n })\n\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.root}`,\n })\n })\n },\n deleteFile(filename) {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n this.$dialog\n .confirm(`Are you sure you want to delete: ${filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(\n `/openc3-api/storage/delete/${encodeURIComponent(\n this.path\n )}${filename}?${\n this.mode\n }=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n })\n .then((response) => {\n this.updateFiles()\n })\n },\n updateFiles() {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/files/OPENC3_${root}_${this.mode.toUpperCase()}/${\n this.path\n }`\n )\n .then((response) => {\n this.files = response.data[0].map((bucket) => {\n return { name: bucket, icon: 'mdi-folder' }\n })\n this.files = this.files.concat(\n response.data[1].map((item) => {\n return {\n name: item.name,\n icon: 'mdi-file',\n size: item.size,\n modified: item.modified,\n }\n })\n )\n })\n .catch((response) => {\n this.files = []\n if (response.data.message) {\n this.$notify.caution({\n title: response.data.message,\n })\n } else {\n this.$notify.caution({\n title: response.message,\n })\n }\n })\n },\n },\n}\n<\/script>\n\n<style scoped>\n.file-input {\n padding-top: 0px;\n margin-top: 0px;\n}\n</style>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"8412a914bb3ff91ffb86550bf043d201c9bbbf3b"},i=t[l]||(t[l]={});i[n]&&i[n].hash===e||(i[n]=o);var a=i[n];return $=function(){return a},a}$();var S={components:{TopBar:h},data:function(){return $().f[0]++,$().s[0]++,{title:"COSMOS Bucket Explorer",search:"",root:"",mode:"bucket",buckets:[],volumes:[],path:"",file:null,files:[],headers:[{text:"Name",value:"name"},{text:"Size",value:"size"},{text:"Modified Date",value:"modified"},{text:"Action",value:"action"}]}},created:function(){var n=this;if($().f[1]++,$().s[1]++,w.get("/openc3-api/storage/buckets").then((function(e){$().f[2]++,$().s[2]++,n.buckets=e.data})),$().s[3]++,w.get("/openc3-api/storage/volumes").then((function(e){$().f[3]++,$().s[4]++,n.volumes=e.data})),$().s[5]++,this.$route.params.path){$().b[0][0]++;var e=($().s[6]++,this.$route.params.path.split("/"));$().s[7]++,""===e[0]?($().b[1][0]++,$().s[8]++,this.mode="volume",$().s[9]++,this.root="/".concat(e[1]),$().s[10]++,this.path=e.slice(2).join("/")):($().b[1][1]++,$().s[11]++,this.mode="bucket",$().s[12]++,this.root=e[0],$().s[13]++,this.path=e.slice(1).join("/")),$().s[14]++,this.updateFiles()}else $().b[0][1]++},watch:{file:function(){var n=(0,c.Z)((0,a.Z)().mark((function n(){var e,t;return(0,a.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if($().f[4]++,$().s[15]++,null!==this.file){n.next=8;break}return $().b[2][0]++,$().s[16]++,n.abrupt("return");case 8:$().b[2][1]++;case 9:return $().s[17]++,n.next=12,w.get("/openc3-api/storage/upload/".concat(encodeURIComponent("".concat(this.path).concat(this.file.name)),"?bucket=OPENC3_").concat(this.root.toUpperCase(),"_BUCKET"));case 12:return e=n.sent,t=e.data,$().s[18]++,n.next=17,v()((0,s.Z)((0,s.Z)({},t),{},{data:this.file}));case 17:n.sent,$().s[19]++,this.file=null,$().s[20]++,this.updateFiles();case 22:case"end":return n.stop()}}),n,this)})));function e(){return n.apply(this,arguments)}return e}()},methods:{update:function(){$().f[5]++,$().s[21]++,this.$router.push({name:"Bucket Explorer",params:{path:"".concat(this.root,"/").concat(this.path)}}),$().s[22]++,this.updateFiles()},selectBucket:function(n){if($().f[6]++,$().s[23]++,this.root===n)return $().b[3][0]++,void $().s[24]++;$().b[3][1]++,$().s[25]++,this.mode="bucket",$().s[26]++,this.root=n,$().s[27]++,this.path="",$().s[28]++,this.update()},selectVolume:function(n){if($().f[7]++,$().s[29]++,this.root===n)return $().b[4][0]++,void $().s[30]++;$().b[4][1]++,$().s[31]++,this.mode="volume",$().s[32]++,this.root=n,$().s[33]++,this.path="",$().s[34]++,this.update()},backArrow:function(){if($().f[8]++,$().s[35]++,""===this.path)return $().b[5][0]++,void $().s[36]++;$().b[5][1]++;var n=($().s[37]++,this.path.split("/"));$().s[38]++,this.path=n.slice(0,n.length-2).join("/"),$().s[39]++,n.length>2?($().b[6][0]++,$().s[40]++,this.path+="/"):$().b[6][1]++,$().s[41]++,this.update()},fileClick:function(n){$().f[9]++,$().s[42]++,"mdi-folder"===n.icon?($().b[7][0]++,$().s[43]++,""===this.root?($().b[8][0]++,$().s[44]++,this.root=n.name):($().b[8][1]++,$().s[45]++,this.path+="".concat(n.name,"/")),$().s[46]++,this.update()):$().b[7][1]++},downloadFile:function(n){var e=this;$().f[10]++;var t=($().s[47]++,this.root.toUpperCase()),l=($().s[48]++,"download");$().s[49]++,"volume"===this.mode?($().b[9][0]++,$().s[50]++,l="download_file",$().s[51]++,t=t.slice(1)):$().b[9][1]++,$().s[52]++,w.get("/openc3-api/storage/".concat(l,"/").concat(encodeURIComponent(this.path)).concat(n,"?").concat(this.mode,"=OPENC3_").concat(t,"_").concat(this.mode.toUpperCase())).then((function(t){$().f[11]++;var l=($().s[53]++,null);if($().s[54]++,"bucket"===e.mode)$().b[10][0]++,$().s[55]++,l=t.data.url;else{$().b[10][1]++;var o=($().s[56]++,window.atob(t.data.contents)),i=($().s[57]++,new Uint8Array(o.length));$().s[58]++;for(var a=($().s[59]++,0);a<o.length;++a)$().s[60]++,i[a]=o.charCodeAt(a);var s=($().s[61]++,new Blob([i]));$().s[62]++,l=URL.createObjectURL(s)}var c=($().s[63]++,document.createElement("a"));$().s[64]++,c.href=l,$().s[65]++,c.setAttribute("download",n),$().s[66]++,c.click()})).catch((function(t){$().f[12]++,$().s[67]++,e.$notify.caution({title:"Unable to download file ".concat(e.path).concat(n," from bucket ").concat(e.root)})}))},deleteFile:function(n){var e=this;$().f[13]++;var t=($().s[68]++,this.root.toUpperCase());$().s[69]++,"volume"===this.mode?($().b[11][0]++,$().s[70]++,t=t.slice(1)):$().b[11][1]++,$().s[71]++,this.$dialog.confirm("Are you sure you want to delete: ".concat(n),{okText:"Delete",cancelText:"Cancel"}).then((function(l){return $().f[14]++,$().s[72]++,w.delete("/openc3-api/storage/delete/".concat(encodeURIComponent(e.path)).concat(n,"?").concat(e.mode,"=OPENC3_").concat(t,"_").concat(e.mode.toUpperCase()))})).then((function(n){$().f[15]++,$().s[73]++,e.updateFiles()}))},updateFiles:function(){var n=this;$().f[16]++;var e=($().s[74]++,this.root.toUpperCase());$().s[75]++,"volume"===this.mode?($().b[12][0]++,$().s[76]++,e=e.slice(1)):$().b[12][1]++,$().s[77]++,w.get("/openc3-api/storage/files/OPENC3_".concat(e,"_").concat(this.mode.toUpperCase(),"/").concat(this.path)).then((function(e){$().f[17]++,$().s[78]++,n.files=e.data[0].map((function(n){return $().f[18]++,$().s[79]++,{name:n,icon:"mdi-folder"}})),$().s[80]++,n.files=n.files.concat(e.data[1].map((function(n){return $().f[19]++,$().s[81]++,{name:n.name,icon:"mdi-file",size:n.size,modified:n.modified}})))})).catch((function(e){$().f[20]++,$().s[82]++,n.files=[],$().s[83]++,e.data.message?($().b[13][0]++,$().s[84]++,n.$notify.caution({title:e.data.message})):($().b[13][1]++,$().s[85]++,n.$notify.caution({title:e.message}))}))}}},U=S,T=(t(7323),(0,A.Z)(U,o,i,!1,null,"5e42fd88",null)),E=T.exports},3479:function(n,e,t){"use strict";t.r(e);var l=t(9601),o=t.n(l),i=t(2609),a=t.n(i),s=a()(o());s.push([n.id,".file-input[data-v-5e42fd88]{padding-top:0;margin-top:0}",""]),e["default"]=s},6294:function(n,e,t){"use strict";t.r(e);var l=t(9601),o=t.n(l),i=t(2609),a=t.n(i),s=a()(o());s.push([n.id,".v-list[data-v-2eb37f67] .v-label{margin-left:5px}.v-list-item__icon[data-v-2eb37f67]{margin-right:15px!important}.v-list-item__title[data-v-2eb37f67]{color:#fff}",""]),e["default"]=s},7323:function(n,e,t){var l=t(3479);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var o=t(3514).Z;o("d6d83bcc",l,!0,{sourceMap:!1,shadowMode:!1})},4888:function(n,e,t){var l=t(6294);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var o=t(3514).Z;o("706a3f6d",l,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
2
  //# sourceMappingURL=554.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"js/554.js","mappings":"y3IAeY,OAAAA,EAAA,kBAAAC,CAAA,EAAAA,CAAA,CAAAD,IAAAA,IAAAE,EAAA,KAfZ,IAAIC,EAAS,WAAiBH,IAAAI,EAAA,KAAC,IAAIC,GAAGL,IAAAE,EAAA,KAACI,MAAKC,GAAEP,IAAAE,EAAA,KAACG,EAAIG,MAAMD,IAAG,OAAAP,IAAAE,EAAA,KAAOK,EAAG,MAAM,CAACA,EAAG,UAAU,CAACE,MAAM,CAAC,MAAQJ,EAAIK,SAASH,EAAG,SAAS,CAACE,MAAM,CAAC,MAAQ,SAAS,CAACF,EAAG,MAAM,CAACI,YAAY,CAAC,eAAe,MAAM,cAAc,QAAQ,CAACJ,EAAG,OAAO,CAACK,YAAY,QAAQ,CAACP,EAAIQ,GAAG,cAAcR,EAAIS,GAAIT,EAAIU,SAAS,SAASC,EAAOC,GAAO,OAADjB,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KAAQK,EAAG,SAAS,CAACW,IAAID,EAAML,YAAY,OAAOH,MAAM,CAAC,MAAQ,WAAWU,GAAG,CAAC,MAAQ,SAASC,GAAiC,OAA1BpB,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KAACkB,EAAOC,kBAAkBrB,IAAAE,EAAA,KAAOG,EAAIiB,aAAaN,EAAO,IAAI,CAACT,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,KAAK,CAACF,EAAG,SAAS,CAACF,EAAIQ,GAAG,iBAAiB,GAAGR,EAAIQ,GAAG,IAAIR,EAAIkB,GAAGP,GAAQ,MAAM,EAAE,KAAI,GAA2B,IAAvBX,EAAImB,QAAQC,QAAYzB,IAAA0B,EAAA,QAAEnB,EAAG,MAAM,CAACI,YAAY,CAAC,eAAe,QAAQ,CAACJ,EAAG,OAAO,CAACK,YAAY,QAAQ,CAACP,EAAIQ,GAAG,cAAcR,EAAIS,GAAIT,EAAImB,SAAS,SAASG,EAAOV,GAAO,OAADjB,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KAAQK,EAAG,SAAS,CAACW,IAAID,EAAML,YAAY,OAAOH,MAAM,CAAC,MAAQ,WAAWU,GAAG,CAAC,MAAQ,SAASC,GAAiC,OAA1BpB,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KAACkB,EAAOC,kBAAkBrB,IAAAE,EAAA,KAAOG,EAAIuB,aAAaD,EAAO,IAAI,CAACpB,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,KAAK,CAACF,EAAG,SAAS,CAACF,EAAIQ,GAAG,iBAAiB,GAAGR,EAAIQ,GAAG,IAAIR,EAAIkB,GAAGI,GAAQ,MAAM,EAAE,KAAI,KAAE3B,IAAA0B,EAAA,QAACrB,EAAIwB,MAAKtB,EAAG,eAAe,CAACI,YAAY,CAAC,cAAc,QAAQ,CAACN,EAAIQ,GAAG,IAAIR,EAAIkB,GAAGlB,EAAIyB,MAAM,WAAWvB,EAAG,YAAYA,EAAG,eAAe,CAACE,MAAM,CAAC,cAAc,cAAc,MAAQ,SAAS,cAAc,GAAG,eAAe,IAAIsB,MAAM,CAACC,MAAO3B,EAAI4B,OAAQC,SAAS,SAAUC,GAAKnC,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAACG,EAAI4B,OAAOE,CAAG,EAAEC,WAAW,aAAa,GAAG7B,EAAG,eAAe,CAACE,MAAM,CAAC,QAAUJ,EAAIgC,QAAQ,MAAQhC,EAAIiC,MAAM,OAASjC,EAAI4B,OAAO,iBAAiB,IAAK,eAAe,CACh9CM,mBAAmB,EACnBC,oBAAqB,CAAC,KACtBC,UAAW,iBACXC,SAAU,gBACVC,SAAU,mBACVC,SAAU,qBACV,mBAAmB,GAAG,aAAa,GAAG,MAAQ,IAAIzB,GAAG,CAAC,YAAYd,EAAIwC,WAAWC,YAAYzC,EAAI0C,GAAG,CAAC,CAAC7B,IAAI,MAAM8B,GAAG,WAAW,OAADhD,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAAQ,CAACK,EAAG,QAAQ,CAACK,YAAY,QAAQ,CAACL,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,KAAK,CAACF,EAAG,SAAS,CAACY,GAAG,CAAC,MAAQd,EAAI4C,YAAY,CAAC5C,EAAIQ,GAAG,mCAAmC,GAAGN,EAAG,OAAO,CAACK,YAAY,oBAAoBH,MAAM,CAAC,YAAY,cAAc,CAACJ,EAAIQ,GAAG,IAAIR,EAAIkB,GAAGlB,EAAI6C,SAAS3C,EAAG,YAA0B,WAAbF,EAAI8C,MAAiBnD,IAAA0B,EAAA,QAAEnB,EAAG,MAAM,CAACI,YAAY,CAAC,QAAU,SAAS,CAACJ,EAAG,OAAO,CAACK,YAAY,QAAQ,CAACP,EAAIQ,GAAG,YAAYN,EAAG,eAAe,CAACK,YAAY,aAAaH,MAAM,CAAC,aAAa,GAAG,eAAe,GAAG,eAAe,aAAa,YAAY,eAAesB,MAAM,CAACC,MAAO3B,EAAI+C,KAAMlB,SAAS,SAAUC,GAAKnC,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAACG,EAAI+C,KAAKjB,CAAG,EAAEC,WAAW,WAAW,KAAEpC,IAAA0B,EAAA,QAACrB,EAAIwB,OAAM,GAAG,EAAEwB,OAAM,GAAM,CAACnC,IAAI,YAAY8B,GAAG,SAAAM,GAAkB,IAAPC,EAAID,EAAJC,KAAQ,OAAJvD,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAAW,CAACK,EAAG,SAAS,CAACK,YAAY,QAAQ,CAACP,EAAIQ,GAAGR,EAAIkB,GAAGgC,EAAKC,SAASnD,EAAIQ,GAAGR,EAAIkB,GAAGgC,EAAKE,MAAM,KAAK,GAAG,CAACvC,IAAI,cAAc8B,GAAG,SAAAU,GAAkB,IAAPH,EAAIG,EAAJH,KAAQ,OAAJvD,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAAW,CAAgB,aAAdqD,EAAKC,MAAmBxD,IAAA0B,EAAA,QAAEnB,EAAG,SAAS,CAACK,YAAY,OAAOH,MAAM,CAAC,YAAY,iBAAiBU,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAADpB,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MAAQG,EAAIsD,aAAaJ,EAAKE,KAAK,IAAI,CAACpD,EAAIQ,GAAG,wBAAqBb,IAAA0B,EAAA,QAACrB,EAAIwB,MAAoB,aAAd0B,EAAKC,MAAmBxD,IAAA0B,EAAA,QAAEnB,EAAG,SAAS,CAACE,MAAM,CAAC,YAAY,eAAeU,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAADpB,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MAAQG,EAAIuD,WAAWL,EAAKE,KAAK,IAAI,CAACpD,EAAIQ,GAAG,kBAAeb,IAAA0B,EAAA,QAACrB,EAAIwB,MAAK,QAAQ,IAAI,EACt1C,EACIgC,GAAe7D,IAAAE,EAAA,MAAG,I,8BCTlBC,G,yWAAS,WAAkB,IAAIE,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,kBAAkB,CAACE,MAAM,CAAC,WAAW,eAAe,OAAS,KAAK,CAACF,EAAG,MAAM,CAACK,YAAY,sBAAsB,CAACP,EAAIS,GAAIT,EAAIyD,OAAO,SAASC,EAAKC,GAAG,OAAOzD,EAAG,SAAS,CAACW,IAAI8C,EAAEvD,MAAM,CAAC,WAAW,IAAIqC,YAAYzC,EAAI0C,GAAG,CAAC,CAAC7B,IAAI,YAAY8B,GAAG,SAAAM,GAAuB,IAAZnC,EAAEmC,EAAFnC,GAAIV,EAAK6C,EAAL7C,MAAS,MAAO,CAACF,EAAG,QAAQF,EAAI4D,GAAG5D,EAAI6D,GAAG,CAACtD,YAAY,OAAOH,MAAM,CAAC,SAAW,GAAG,YAAYJ,EAAI8D,SAAS,GAADC,OAAI/D,EAAIK,MAAK,KAAA0D,OAAIL,EAAKM,UAAW,QAAQ5D,GAAM,GAAOU,GAAI,CAACZ,EAAG,OAAO,CAAC+D,SAAS,CAAC,YAAcjE,EAAIkB,GAAGwC,EAAKM,UAAU9D,EAAG,SAAS,CAACE,MAAM,CAAC,MAAQ,KAAK,CAACJ,EAAIQ,GAAG,sBAAsB,GAAG,IAAI,MAAK,IAAO,CAACN,EAAG,SAAS,CAACA,EAAG,gBAAgB,CAACK,YAAY,YAAYH,MAAM,CAAC,MAAQsD,EAAKQ,WAAW,eAAe,GAAG,MAAQ,KAAK,CAAClE,EAAIS,GAAIiD,EAAKS,OAAO,SAASC,EAAOC,GAAG,MAAO,CAAED,EAAOE,QAASpE,EAAG,aAAaA,EAAG,cAAc,CAACW,IAAIwD,EAAEjE,MAAM,CAAC,SAAWgE,EAAOG,SAAS,YAAYvE,EAAI8D,SAAS,GAADC,OAAI/D,EAAIK,MAAK,KAAA0D,OAAIL,EAAKM,MAAK,KAAAD,OAAIK,EAAOJ,SAAUlD,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOqD,EAAOI,QAAQJ,EAAO,IAAI,CAAEA,EAAOK,MAAOvE,EAAG,qBAAqB,CAACA,EAAG,UAAU,CAACE,MAAM,CAAC,MAAQ,YAAY,MAAQgE,EAAOJ,MAAM,MAAQI,EAAOJ,UAAU,GAAGhE,EAAIwB,KAAM4C,EAAOM,SAAUxE,EAAG,qBAAqB,CAACA,EAAG,aAAa,CAACE,MAAM,CAAC,MAAQ,YAAY,MAAQgE,EAAOJ,OAAOtC,MAAM,CAACC,MAAOyC,EAAOO,QAAS9C,SAAS,SAAUC,GAAM9B,EAAI4E,KAAKR,EAAQ,UAAWtC,EAAI,EAAEC,WAAW,qBAAqB,GAAG/B,EAAIwB,KAAM4C,EAAOjB,KAAMjD,EAAG,mBAAmB,CAACA,EAAG,SAAS,CAACE,MAAM,CAAC,SAAWgE,EAAOG,WAAW,CAACvE,EAAIQ,GAAGR,EAAIkB,GAAGkD,EAAOjB,UAAU,GAAGnD,EAAIwB,KAAO4C,EAAOK,OAAUL,EAAOM,SAAwI1E,EAAIwB,KAAlItB,EAAG,oBAAoB,CAAC2E,MAAO,oBAAsBT,EAAOG,SAAW,eAAiB,KAAM,CAACvE,EAAIQ,GAAGR,EAAIkB,GAAGkD,EAAOJ,WAAoB,GAAG,KAAI,IAAI,IAAI,EAAE,IAAG9D,EAAG,YAAYA,EAAG,kBAAkB,CAACF,EAAIQ,GAAGR,EAAIkB,GAAGlB,EAAIK,UAAUH,EAAG,aAAa,IAC5wD,GACIsD,EAAkB,GA0FtB,G,gBAAA,CACAsB,MAAA,CACArB,MAAA,CACAsB,KAAAC,MACAC,QAAA,WACA,QACA,GAEA5E,MAAA,CACA0E,KAAAG,OACAD,QAAA,KAGAE,QAAA,CAEArB,SAAA,SAAAsB,GACA,OAAAA,EAAAC,WAAA,SAAAC,aACA,GAEAC,QAAA,WACA,iBAAAlF,MAAAmF,UAAA,KACAC,SAAApF,MAAA,KAAAA,MAAAmF,UAAA,GAEAC,SAAApF,MAAA,KAAAA,KAEA,ICrH2S,I,oBCQvSqF,GAAY,OACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIF,EAAeA,EAAiB,Q,uDCM1BC,EAAc,IAAIC,EAAAA,WAElBC,EAAgBC,IAAAA,OAAa,CACjCC,QAASC,SAASC,OAClBC,QAAS,IACTC,OAAQ,CAAC,IAGXN,EAAcO,aAAaC,SAASC,KAClC,SAACD,GAAQ,OAAKA,CAAQ,IACtB,SAACE,GACC,GAAIA,EAAMF,SAAU,KAAAG,EAAAC,EAAAC,EAAAC,EAAAC,EAgBlB,GAf8B,MAA1BL,EAAMF,SAASQ,QACjBC,WAAWC,YAAYD,WAAWE,oBAAoB,GAAMC,MAC1D,SAAUC,GACJA,GACFJ,WAAWK,WAEf,IAUFZ,EAAMF,SAASrE,QAAQ,kBACvBuE,EAAMF,SAASrE,QAAQ,iBAAiBoF,SACtCb,EAAMF,SAASQ,OAAOQ,YAGxB,OAAOC,QAAQC,OAAOhB,GAExB,IAAIiB,EAAO,QAAHzD,OAAWwC,EAAMF,SAASQ,OAAM,OAOxC,GANkB,QAAlBL,EAAID,EAAMF,gBAAQ,IAAAG,GAAdA,EAAgBiB,aAClBD,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASoB,WAAU,MAEpB,QAAlBhB,EAAIF,EAAMF,gBAAQ,IAAAI,GAAQ,QAARA,EAAdA,EAAgBiB,cAAM,IAAAjB,GAAtBA,EAAwBkB,OAC1BH,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASqB,OAAOC,KAAI,MAErB,QAAlBjB,EAAIH,EAAMF,gBAAQ,IAAAK,GAAM,QAANA,EAAdA,EAAgBiB,YAAI,IAAAjB,GAApBA,EAAsBkB,QACxBJ,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASsB,KAAKC,cAC1B,GAAkB,QAAlBjB,EAAIJ,EAAMF,gBAAQ,IAAAM,GAAM,QAANA,EAAdA,EAAgBgB,YAAI,IAAAhB,GAApBA,EAAsBkB,UAC/BL,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASsB,KAAKE,gBAC1B,GAAkB,QAAlBjB,EAAIL,EAAMF,gBAAQ,IAAAO,GAAM,QAANA,EAAdA,EAAgBe,YAAI,IAAAf,GAAO,QAAPA,EAApBA,EAAsBL,aAAK,IAAAK,GAA3BA,EAA6BgB,QAClCrB,EAAMF,SAASsB,KAAKpB,MAAMuB,QAC5BN,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASsB,KAAKpB,MAAMuB,MAAK,MAE5CN,GAAQ,GAAJzD,OAAOwC,EAAMF,SAASsB,KAAKpB,MAAMqB,aAChC,KAAAG,EACLP,GAAQ,GAAJzD,OAAqB,QAArBgE,EAAOxB,EAAMF,gBAAQ,IAAA0B,OAAA,EAAdA,EAAgBJ,KAC7B,CAOA,MANIhC,EAAYqC,SACdrC,EAAYqC,QAAQC,QAAQ,CAC1B5H,MAAO,gBACPmH,KAAAA,IAGEjB,CACR,CACE,MAAMA,CAEV,IAGF,QCpEM2B,EAAO,eAAAjF,GAAAkF,EAAAA,EAAAA,IAAAC,EAAAA,EAAAA,KAAAC,MAAG,SAAAC,EACdC,EACAC,GAAG,IAAAnF,EAAAsE,EAAAc,EAAAtC,EAAAnE,EAAA0G,EAAAC,EAAAC,EAAAC,EAAA3B,EAAA4B,EAAAC,UAAA,OAAAX,EAAAA,EAAAA,KAAAY,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAC0D,GAD1D9F,EAAAyF,EAAA1H,OAAA,QAAAgI,IAAAN,EAAA,GAAAA,EAAA,GAC+D,CAAC,EAAjEnB,EAAItE,EAAJsE,KAAIc,EAAApF,EAAE8C,OAAAA,OAAM,IAAAsC,EAAG,CAAC,EAACA,EAAEzG,EAAOqB,EAAPrB,QAAO0G,EAAArF,EAAEsF,OAAAA,OAAM,IAAAD,GAAQA,EAAAE,EAAAvF,EAAEwF,QAAAA,OAAO,IAAAD,GAAQA,EAExDD,EAAQ,CAAFM,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAEerC,WAAWC,YAC/BD,WAAWE,oBACZ,OAFGE,EAAS+B,EAAAI,KAGTnC,GACFJ,WAAWK,YACZ8B,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAK,GAAAL,EAAA,YAEDnC,WAAWyC,QAAO,QAEpBvH,EAAQ,iBAAmBwH,aAAaC,YAAW,QAIpD,OAFIZ,GAAY1C,EAAO,WACtBA,EAAO,SAAWuD,OAAOC,aAC1BV,EAAAW,OAAA,SACM9D,EAAM,CACXyC,OAAAA,EACAC,IAAAA,EACAb,KAAAA,EACAxB,OAAAA,EACAnE,QAAAA,KACA,yBAAAiH,EAAAY,OAAA,GAAAvB,EAAA,kBACH,gBA5BYwB,EAAAC,GAAA,OAAA9G,EAAA+G,MAAA,KAAAjB,UAAA,KA8BPkB,EAA2B,CAC/BC,OAAQ,oBAGJC,GAAkBC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACnBH,GAAwB,IAC3B,eAAgB,qBAGlB,GACEI,IAAK,SACHxH,GAEA,IAAAyH,EAAAvB,UAAA3H,OAAA,QAAAgI,IAAAL,UAAA,GAAAA,UAAA,GADkE,CAAC,EAAjE5C,EAAMmE,EAANnE,OAAMoE,EAAAD,EAAEtI,QAAAA,OAAO,IAAAuI,EAAGN,EAAwBM,EAAE1B,EAAOyB,EAAPzB,QAASF,EAAM2B,EAAN3B,OAEvD,OAAOT,EAAQ,MAAOrF,EAAM,CAAEsD,OAAAA,EAAQnE,QAAAA,EAAS6G,QAAAA,EAASF,OAAAA,GAC1D,EAEA6B,IAAK,SACH3H,GAEA,IAAA4H,EAAA1B,UAAA3H,OAAA,QAAAgI,IAAAL,UAAA,GAAAA,UAAA,GADkE,CAAC,EAAjEpB,EAAI8C,EAAJ9C,KAAMxB,EAAMsE,EAANtE,OAAMuE,EAAAD,EAAEzI,QAAAA,OAAO,IAAA0I,EAAGP,EAAkBO,EAAE7B,EAAO4B,EAAP5B,QAASF,EAAM8B,EAAN9B,OAEvD,OAAOT,EAAQ,MAAOrF,EAAM,CAAE8E,KAAAA,EAAMxB,OAAAA,EAAQnE,QAAAA,EAAS6G,QAAAA,EAASF,OAAAA,GAChE,EAEAgC,KAAM,SACJ9H,GAEA,IAAA+H,EAAA7B,UAAA3H,OAAA,QAAAgI,IAAAL,UAAA,GAAAA,UAAA,GADkE,CAAC,EAAjEpB,EAAIiD,EAAJjD,KAAMxB,EAAMyE,EAANzE,OAAM0E,EAAAD,EAAE5I,QAAAA,OAAO,IAAA6I,EAAGV,EAAkBU,EAAEhC,EAAO+B,EAAP/B,QAASF,EAAMiC,EAANjC,OAEvD,OAAOT,EAAQ,OAAQrF,EAAM,CAAE8E,KAAAA,EAAMxB,OAAAA,EAAQnE,QAAAA,EAAS6G,QAAAA,EAASF,OAAAA,GACjE,EAEAmC,OAAQ,SACNjI,GAEA,IAAAkI,EAAAhC,UAAA3H,OAAA,QAAAgI,IAAAL,UAAA,GAAAA,UAAA,GADkE,CAAC,EAAjE5C,EAAM4E,EAAN5E,OAAM6E,EAAAD,EAAE/I,QAAAA,OAAO,IAAAgJ,EAAGf,EAAwBe,EAAEnC,EAAOkC,EAAPlC,QAASF,EAAMoC,EAANpC,OAEvD,OAAOT,EAAQ,SAAUrF,EAAM,CAAEsD,OAAAA,EAAQnE,QAAAA,EAAS6G,QAAAA,EAASF,OAAAA,GAC7D,G,k8uBCoDF,OAAAhJ,EAAA,kBAAAC,CAAA,EAAAA,CAAA,CAAAD,IAVA,OACAsL,WAAA,CACAC,OAAAA,GAEAvD,KAAA,WACA,OADAhI,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KACA,CACAQ,MAAA,yBACAuB,OAAA,GACAH,KAAA,GACAqB,KAAA,SACApC,QAAA,GACAS,QAAA,GACA0B,KAAA,GACAE,KAAA,KACAd,MAAA,GACAD,QAAA,CACA,CAAAmJ,KAAA,OAAAxJ,MAAA,QACA,CAAAwJ,KAAA,OAAAxJ,MAAA,QACA,CAAAwJ,KAAA,gBAAAxJ,MAAA,YACA,CAAAwJ,KAAA,SAAAxJ,MAAA,WAGA,EACAyJ,QAAA,eAAAC,EAAA,KAOA,GAPA1L,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KACAyL,EAAAjB,IAAA,+BAAApD,MAAA,SAAAZ,GAAA1G,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KACAwL,EAAA3K,QAAA2F,EAAAsB,IACA,IAAAhI,IAAAE,EAAA,KACAyL,EAAAjB,IAAA,+BAAApD,MAAA,SAAAZ,GAAA1G,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,KACAwL,EAAAlK,QAAAkF,EAAAsB,IACA,IAAAhI,IAAAE,EAAA,KACA,KAAA0L,OAAApF,OAAAtD,KAAA,CAAAlD,IAAA0B,EAAA,QACA,IAAAmK,GAAA7L,IAAAE,EAAA,UAAA0L,OAAApF,OAAAtD,KAAA4I,MAAA,MAAA9L,IAAAE,EAAA,KACA,KAAA2L,EAAA,IAAA7L,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,KACA,KAAAiD,KAAA,SACAnD,IAAAE,EAAA,KACA,KAAA4B,KAAA,IAAAsC,OAAAyH,EAAA,IAAA7L,IAAAE,EAAA,MACA,KAAAgD,KAAA2I,EAAAE,MAAA,GAAAC,KAAA,OACAhM,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAiD,KAAA,SAAAnD,IAAAE,EAAA,MACA,KAAA4B,KAAA+J,EAAA,GAAA7L,IAAAE,EAAA,MACA,KAAAgD,KAAA2I,EAAAE,MAAA,GAAAC,KAAA,MACAhM,IAAAE,EAAA,MACA,KAAA+L,aACA,MAAAjM,IAAA0B,EAAA,OACA,EACAwK,MAAA,CAEA9I,KAAA,eAAA+I,GAAA3D,EAAAA,EAAAA,IAAAC,EAAAA,EAAAA,KAAAC,MAAA,SAAAC,IAAA,IAAArF,EAAA8I,EAAA,OAAA3D,EAAAA,EAAAA,KAAAY,MAAA,SAAAC,GAAA,eAAAA,EAAAC,KAAAD,EAAAE,MAAA,UAAAxJ,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MACA,YAAAkD,KAAA,CAAAkG,EAAAE,KAAA,eAAAxJ,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MAAAoJ,EAAAW,OAAA,iBAAAjK,IAAA0B,EAAA,sBAAA1B,IAAAE,EAAA,MAAAoJ,EAAAE,KAAA,GAEAmC,EAAAjB,IAAA,8BAAAtG,OACAiI,mBAAA,GAAAjI,OACA,KAAAlB,MAAAkB,OAAA,KAAAhB,KAAAK,OACA,mBAAAW,OAAA,KAAAtC,KAAAwK,cAAA,YACA,QAJA,OAIAhJ,EAAAgG,EAAAI,KAJA0C,EAAA9I,EAAA0E,KAAAhI,IAAAE,EAAA,MAAAoJ,EAAAE,KAAA,GAOArD,KAAAsE,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACA2B,GAAA,IACApE,KAAA,KAAA5E,QACA,QAHAkG,EAAAI,KAAA1J,IAAAE,EAAA,MAIA,KAAAkD,KAAA,KAAApD,IAAAE,EAAA,MACA,KAAA+L,cAAA,yBAAA3C,EAAAY,OAAA,GAAAvB,EAAA,UACA,SAAAvF,IAAA,OAAA+I,EAAA9B,MAAA,KAAAjB,UAAA,QAAAhG,CAAA,CAhBA,IAkBAoC,QAAA,CACA+G,OAAA,WAAAvM,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MACA,KAAAsM,QAAAC,KAAA,CACAhJ,KAAA,kBACA+C,OAAA,CACAtD,KAAA,GAAAkB,OAAA,KAAAtC,KAAA,KAAAsC,OAAA,KAAAlB,SAEAlD,IAAAE,EAAA,MACA,KAAA+L,aACA,EACA3K,aAAA,SAAAN,GACA,GADAhB,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MACA,KAAA4B,OAAAd,EAAA,OAAAhB,IAAA0B,EAAA,aAAA1B,IAAAE,EAAA,MAAAF,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAiD,KAAA,SAAAnD,IAAAE,EAAA,MACA,KAAA4B,KAAAd,EAAAhB,IAAAE,EAAA,MACA,KAAAgD,KAAA,GAAAlD,IAAAE,EAAA,MACA,KAAAqM,QACA,EACA3K,aAAA,SAAAD,GACA,GADA3B,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MACA,KAAA4B,OAAAH,EAAA,OAAA3B,IAAA0B,EAAA,aAAA1B,IAAAE,EAAA,MAAAF,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAiD,KAAA,SAAAnD,IAAAE,EAAA,MACA,KAAA4B,KAAAH,EAAA3B,IAAAE,EAAA,MACA,KAAAgD,KAAA,GAAAlD,IAAAE,EAAA,MACA,KAAAqM,QACA,EACAtJ,UAAA,WAEA,GAFAjD,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MAEA,UAAAgD,KAAA,OAAAlD,IAAA0B,EAAA,aAAA1B,IAAAE,EAAA,MAAAF,IAAA0B,EAAA,QACA,IAAAmK,GAAA7L,IAAAE,EAAA,WAAAgD,KAAA4I,MAAA,MAAA9L,IAAAE,EAAA,MACA,KAAAgD,KAAA2I,EAAAE,MAAA,EAAAF,EAAApK,OAAA,GAAAuK,KAAA,KAEAhM,IAAAE,EAAA,MACA2L,EAAApK,OAAA,GAAAzB,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAgD,MAAA,KACAlD,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAqM,QACA,EACA1J,UAAA,SAAA6J,GAAA1M,IAAAI,EAAA,KAAAJ,IAAAE,EAAA,MACA,eAAAwM,EAAAlJ,MAAAxD,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,UAAA4B,MAAA9B,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MAEA,KAAA4B,KAAA4K,EAAAjJ,OACAzD,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA,KAAAgD,MAAA,GAAAkB,OAAAsI,EAAAjJ,KAAA,MACAzD,IAAAE,EAAA,MACA,KAAAqM,UACAvM,IAAA0B,EAAA,OACA,EACAiC,aAAA,SAAAgJ,GAAA,IAAAC,EAAA,KAAA5M,IAAAI,EAAA,MACA,IAAA0B,GAAA9B,IAAAE,EAAA,WAAA4B,KAAAwK,eACAO,GAAA7M,IAAAE,EAAA,kBAAAF,IAAAE,EAAA,MACA,gBAAAiD,MAAAnD,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACA2M,EAAA,gBAAA7M,IAAAE,EAAA,MACA4B,EAAAA,EAAAiK,MAAA,IACA/L,IAAA0B,EAAA,QAAA1B,IAAAE,EAAA,MACAyL,EAAAjB,IAAA,uBAAAtG,OACAyI,EAAA,KAAAzI,OAAAiI,mBACA,KAAAnJ,OACAkB,OAAAuI,EAAA,KAAAvI,OAAA,KAAAjB,KAAA,YAAAiB,OAAAtC,EAAA,KAAAsC,OAAA,KAAAjB,KAAAmJ,gBAEAhF,MAAA,SAAAZ,GAAA1G,IAAAI,EAAA,MACA,IAAA0M,GAAA9M,IAAAE,EAAA,YACA,GADAF,IAAAE,EAAA,MACA,WAAA0M,EAAAzJ,KAAAnD,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACA4M,EAAApG,EAAAsB,KAAAa,QACA,CAAA7I,IAAA0B,EAAA,SAEA,IAAAqL,GAAA/M,IAAAE,EAAA,MAAA6J,OAAAiD,KAAAtG,EAAAsB,KAAAiF,WAEAC,GAAAlN,IAAAE,EAAA,UAAAiN,WAAAJ,EAAAtL,SACAzB,IAAAE,EAAA,MACA,QAAA8D,GAAAhE,IAAAE,EAAA,SAAA8D,EAAA+I,EAAAtL,SAAAuC,EAAAhE,IAAAE,EAAA,MACAgN,EAAAlJ,GAAA+I,EAAAK,WAAApJ,GAEA,IAAAqJ,GAAArN,IAAAE,EAAA,UAAAoN,KAAA,CAAAJ,KAAAlN,IAAAE,EAAA,MACA4M,EAAAS,IAAAC,gBAAAH,EACA,CAEA,IAAAI,GAAAzN,IAAAE,EAAA,MAAA4F,SAAA4H,cAAA,MAAA1N,IAAAE,EAAA,MACAuN,EAAAX,KAAAA,EAAA9M,IAAAE,EAAA,MACAuN,EAAAE,aAAA,WAAAhB,GAAA3M,IAAAE,EAAA,MACAuN,EAAAG,OACA,IAEAC,OAAA,SAAAnH,GAAA1G,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACA0M,EAAAvE,QAAAyF,QAAA,CACApN,MAAA,2BAAA0D,OAAAwI,EAAA1J,MAAAkB,OAAAuI,EAAA,iBAAAvI,OAAAwI,EAAA9K,OAEA,GACA,EACA8B,WAAA,SAAA+I,GAAA,IAAAoB,EAAA,KAAA/N,IAAAI,EAAA,MACA,IAAA0B,GAAA9B,IAAAE,EAAA,WAAA4B,KAAAwK,eAAAtM,IAAAE,EAAA,MACA,gBAAAiD,MAAAnD,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACA4B,EAAAA,EAAAiK,MAAA,IACA/L,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACA,KAAA8N,QACAC,QAAA,oCAAA7J,OAAAuI,GAAA,CACAuB,OAAA,SACAC,WAAA,WAEA7G,MAAA,SAAA8G,GACA,OADApO,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACAyL,EAAAR,OAAA,8BAAA/G,OACAiI,mBACA0B,EAAA7K,OACAkB,OAAAuI,EAAA,KAAAvI,OACA2J,EAAA5K,KAAA,YAAAiB,OACAtC,EAAA,KAAAsC,OAAA2J,EAAA5K,KAAAmJ,eAEA,IACAhF,MAAA,SAAAZ,GAAA1G,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACA6N,EAAA9B,aACA,GACA,EACAA,YAAA,eAAAoC,EAAA,KAAArO,IAAAI,EAAA,MACA,IAAA0B,GAAA9B,IAAAE,EAAA,WAAA4B,KAAAwK,eAAAtM,IAAAE,EAAA,MACA,gBAAAiD,MAAAnD,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACA4B,EAAAA,EAAAiK,MAAA,IACA/L,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACAyL,EAAAjB,IAAA,oCAAAtG,OACAtC,EAAA,KAAAsC,OAAA,KAAAjB,KAAAmJ,cAAA,KAAAlI,OACA,KAAAlB,OAGAoE,MAAA,SAAAZ,GAAA1G,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACAmO,EAAA/L,MAAAoE,EAAAsB,KAAA,GAAAsG,KAAA,SAAAtN,GACA,OADAhB,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACA,CAAAuD,KAAAzC,EAAAwC,KAAA,aACA,IAAAxD,IAAAE,EAAA,MACAmO,EAAA/L,MAAA+L,EAAA/L,MAAA8B,OACAsC,EAAAsB,KAAA,GAAAsG,KAAA,SAAA/K,GACA,OADAvD,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACA,CACAuD,KAAAF,EAAAE,KACAD,KAAA,WACA+K,KAAAhL,EAAAgL,KACAC,SAAAjL,EAAAiL,SAEA,IAEA,IACAX,OAAA,SAAAnH,GAAA1G,IAAAI,EAAA,MAAAJ,IAAAE,EAAA,MACAmO,EAAA/L,MAAA,GAAAtC,IAAAE,EAAA,MACAwG,EAAAsB,KAAAC,SAAAjI,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACAmO,EAAAhG,QAAAyF,QAAA,CACApN,MAAAgG,EAAAsB,KAAAC,YAEAjI,IAAA0B,EAAA,SAAA1B,IAAAE,EAAA,MACAmO,EAAAhG,QAAAyF,QAAA,CACApN,MAAAgG,EAAAuB,UAGA,GACA,ICzV4T,ICQxT,G,SAAY,OACd,EACA9H,EACA0D,GACA,EACA,KACA,WACA,OAIF,EAAe,EAAiB,O,qFChB5B4K,EAA0B,IAA4B,KAE1DA,EAAwBhC,KAAK,CAACiC,EAAOC,GAAI,2DAA4D,KAErG,c,qFCJIF,EAA0B,IAA4B,KAE1DA,EAAwBhC,KAAK,CAACiC,EAAOC,GAAI,qKAAsK,KAE/M,c,uBCJA,IAAIC,EAAU,EAAQ,MACnBA,EAAQC,aAAYD,EAAUA,EAAQtJ,SACnB,kBAAZsJ,IAAsBA,EAAU,CAAC,CAACF,EAAOC,GAAIC,EAAS,MAC7DA,EAAQE,SAAQJ,EAAOK,QAAUH,EAAQE,QAE5C,IAAIE,EAAM,UACGA,EAAI,WAAYJ,GAAS,EAAM,CAAC,WAAY,EAAM,YAAa,G,uBCN5E,IAAIA,EAAU,EAAQ,MACnBA,EAAQC,aAAYD,EAAUA,EAAQtJ,SACnB,kBAAZsJ,IAAsBA,EAAU,CAAC,CAACF,EAAOC,GAAIC,EAAS,MAC7DA,EAAQE,SAAQJ,EAAOK,QAAUH,EAAQE,QAE5C,IAAIE,EAAM,UACGA,EAAI,WAAYJ,GAAS,EAAM,CAAC,WAAY,EAAM,YAAa,G","sources":["webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?95da","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?a437","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?4b33","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?98c2","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?f9df","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?386c","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?eb3d","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?9efc"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('top-bar',{attrs:{\"title\":_vm.title}}),_c('v-card',{attrs:{\"width\":\"100%\"}},[_c('div',{staticStyle:{\"padding-left\":\"5px\",\"padding-top\":\"5px\"}},[_c('span',{staticClass:\"ma-2\"},[_vm._v(\"Buckets:\")]),_vm._l((_vm.buckets),function(bucket,index){return _c('v-chip',{key:index,staticClass:\"ma-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.selectBucket(bucket)}}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',[_vm._v(\"mdi-bucket\")])],1),_vm._v(\" \"+_vm._s(bucket)+\" \")],1)})],2),(_vm.volumes.length !== 0)?_c('div',{staticStyle:{\"padding-left\":\"5px\"}},[_c('span',{staticClass:\"ma-2\"},[_vm._v(\"Volumes:\")]),_vm._l((_vm.volumes),function(volume,index){return _c('v-chip',{key:index,staticClass:\"ma-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.selectVolume(volume)}}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',[_vm._v(\"mdi-folder\")])],1),_vm._v(\" \"+_vm._s(volume)+\" \")],1)})],2):_vm._e(),_c('v-card-title',{staticStyle:{\"padding-top\":\"0px\"}},[_vm._v(\" \"+_vm._s(_vm.root)+\" Files \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.files,\"search\":_vm.search,\"items-per-page\":1000,\"footer-props\":{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"dense\":\"\"},on:{\"click:row\":_vm.fileClick},scopedSlots:_vm._u([{key:\"top\",fn:function(){return [_c('v-row',{staticClass:\"pa-5\"},[_c('v-btn',{attrs:{\"icon\":\"\"}},[_c('v-icon',{on:{\"click\":_vm.backArrow}},[_vm._v(\"mdi-chevron-left-box-outline\")])],1),_c('span',{staticClass:\".text-body-1 ma-2\",attrs:{\"data-test\":\"file-path\"}},[_vm._v(\"/\"+_vm._s(_vm.path))]),_c('v-spacer'),(_vm.mode === 'bucket')?_c('div',{staticStyle:{\"display\":\"flex\"}},[_c('span',{staticClass:\"pa-1\"},[_vm._v(\"Upload\")]),_c('v-file-input',{staticClass:\"file-input\",attrs:{\"hide-input\":\"\",\"hide-details\":\"\",\"prepend-icon\":\"mdi-upload\",\"data-test\":\"upload-file\"},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}})],1):_vm._e()],1)]},proxy:true},{key:\"item.name\",fn:function({ item }){return [_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(_vm._s(item.icon))]),_vm._v(_vm._s(item.name)+\" \")]}},{key:\"item.action\",fn:function({ item }){return [(item.icon === 'mdi-file')?_c('v-icon',{staticClass:\"mr-3\",attrs:{\"data-test\":\"download-file\"},on:{\"click\":function($event){return _vm.downloadFile(item.name)}}},[_vm._v(\"mdi-download-box\")]):_vm._e(),(item.icon === 'mdi-file')?_c('v-icon',{attrs:{\"data-test\":\"delete-file\"},on:{\"click\":function($event){return _vm.deleteFile(item.name)}}},[_vm._v(\"mdi-delete\")]):_vm._e()]}}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('mounting-portal',{attrs:{\"mount-to\":\"#openc3-menu\",\"append\":\"\"}},[_c('div',{staticClass:\"v-toolbar__content\"},[_vm._l((_vm.menus),function(menu,i){return _c('v-menu',{key:i,attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1\",attrs:{\"outlined\":\"\",\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label}`)}},'v-btn',attrs,false),on),[_c('span',{domProps:{\"textContent\":_vm._s(menu.label)}}),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,true)},[_c('v-list',[_c('v-radio-group',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":menu.radioGroup,\"hide-details\":\"\",\"dense\":\"\"}},[_vm._l((menu.items),function(option,j){return [(option.divider)?_c('v-divider'):_c('v-list-item',{key:j,attrs:{\"disabled\":option.disabled,\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label} ${option.label}`)},on:{\"click\":function($event){return option.command(option)}}},[(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},model:{value:(option.checked),callback:function ($$v) {_vm.$set(option, \"checked\", $$v)},expression:\"option.checked\"}})],1):_vm._e(),(option.icon)?_c('v-list-item-icon',[_c('v-icon',{attrs:{\"disabled\":option.disabled}},[_vm._v(_vm._s(option.icon))])],1):_vm._e(),(!option.radio && !option.checkbox)?_c('v-list-item-title',{style:('cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : ''))},[_vm._v(_vm._s(option.label))]):_vm._e()],1)]})],2)],1)],1)}),_c('v-spacer'),_c('v-toolbar-title',[_vm._v(_vm._s(_vm.title))]),_c('v-spacer')],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@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!./TopBar.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!./TopBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=2eb37f67&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=2eb37f67&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 \"2eb37f67\",\n null\n \n)\n\nexport default component.exports","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# 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 // 'Ignore-Errors': '500',\n // })\n if (\n error.response.headers['ignore-errors'] &&\n error.response.headers['ignore-errors'].includes(\n error.response.status.toString()\n )\n ) {\n return Promise.reject(error)\n }\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n if (vueInstance.$notify) {\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n } else {\n throw error\n }\n }\n)\n\nexport default axiosInstance\n","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n { data, params = {}, headers, noAuth = false, noScope = false } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('get', path, { params, headers, noScope, noAuth })\n },\n\n put: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('put', path, { data, params, headers, noScope, noAuth })\n },\n\n post: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('post', path, { data, params, headers, noScope, noAuth })\n },\n\n delete: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('delete', path, { params, headers, noScope, noAuth })\n },\n}\n","<!--\n# Copyright 2023 OpenC3, Inc.\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 file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card width=\"100%\">\n <div style=\"padding-left: 5px; padding-top: 5px\">\n <span class=\"ma-2\">Buckets:</span>\n <v-chip\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-avatar left>\n <v-icon>mdi-bucket</v-icon>\n </v-avatar>\n {{ bucket }}\n </v-chip>\n </div>\n <div style=\"padding-left: 5px\" v-if=\"volumes.length !== 0\">\n <span class=\"ma-2\">Volumes:</span>\n <v-chip\n v-for=\"(volume, index) in volumes\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectVolume(volume)\"\n >\n <v-avatar left>\n <v-icon>mdi-folder</v-icon>\n </v-avatar>\n {{ volume }}\n </v-chip>\n </div>\n <v-card-title style=\"padding-top: 0px\">\n {{ root }} Files\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"files\"\n :search=\"search\"\n :items-per-page=\"1000\"\n :footer-props=\"{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n }\"\n @click:row=\"fileClick\"\n calculate-widths\n multi-sort\n dense\n >\n <template v-slot:top>\n <v-row class=\"pa-5\">\n <v-btn icon>\n <v-icon @click=\"backArrow\">mdi-chevron-left-box-outline</v-icon>\n </v-btn>\n <span class=\".text-body-1 ma-2\" data-test=\"file-path\"\n >/{{ path }}</span\n >\n <v-spacer />\n <div style=\"display: flex\" v-if=\"mode === 'bucket'\">\n <span class=\"pa-1\">Upload</span>\n <v-file-input\n v-model=\"file\"\n hide-input\n hide-details\n class=\"file-input\"\n prepend-icon=\"mdi-upload\"\n data-test=\"upload-file\"\n />\n </div>\n </v-row>\n </template>\n <template v-slot:item.name=\"{ item }\">\n <v-icon class=\"mr-2\">{{ item.icon }}</v-icon\n >{{ item.name }}\n </template>\n <template v-slot:item.action=\"{ item }\">\n <v-icon\n class=\"mr-3\"\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n data-test=\"download-file\"\n >mdi-download-box</v-icon\n >\n <v-icon\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"deleteFile(item.name)\"\n data-test=\"delete-file\"\n >mdi-delete</v-icon\n >\n </template>\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport Api from '@openc3/tool-common/src/services/api'\nimport axios from 'axios'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n root: '',\n mode: 'bucket',\n buckets: [],\n volumes: [],\n path: '',\n file: null,\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Action', value: 'action' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n Api.get('/openc3-api/storage/volumes').then((response) => {\n this.volumes = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n if (parts[0] === '') {\n this.mode = 'volume'\n // Prepend the slash to note this is a volume not a bucket\n this.root = `/${parts[1]}`\n this.path = parts.slice(2).join('/')\n } else {\n this.mode = 'bucket'\n this.root = parts[0]\n this.path = parts.slice(1).join('/')\n }\n this.updateFiles()\n }\n },\n watch: {\n // This is the upload function that is activated when the file gets set\n file: async function () {\n if (this.file === null) return\n // Reassign data to presignedRequest for readability\n const { data: presignedRequest } = await Api.get(\n `/openc3-api/storage/upload/${encodeURIComponent(\n `${this.path}${this.file.name}`\n )}?bucket=OPENC3_${this.root.toUpperCase()}_BUCKET`\n )\n // This pushes the file into storage by using the fields in the presignedRequest\n // See storage_controller.rb get_presigned_request()\n const response = await axios({\n ...presignedRequest,\n data: this.file,\n })\n this.file = null\n this.updateFiles()\n },\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.root}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.root === bucket) return\n this.mode = 'bucket'\n this.root = bucket\n this.path = ''\n this.update()\n },\n selectVolume(volume) {\n if (this.root === volume) return\n this.mode = 'volume'\n this.root = volume\n this.path = ''\n this.update()\n },\n backArrow() {\n // Nothing to do if we're at the root so return\n if (this.path === '') return\n let parts = this.path.split('/')\n this.path = parts.slice(0, parts.length - 2).join('/')\n // Only append the last slash if we're not at the root\n // The root is 2 because it's the path before clicking back\n if (parts.length > 2) {\n this.path += '/'\n }\n this.update()\n },\n fileClick(event) {\n if (event.icon === 'mdi-folder') {\n if (this.root === '') {\n // initial root click\n this.root = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n let root = this.root.toUpperCase()\n let api = 'download'\n if (this.mode === 'volume') {\n api = 'download_file'\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/${api}/${encodeURIComponent(\n this.path\n )}${filename}?${this.mode}=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n .then((response) => {\n let href = null\n if (this.mode === 'bucket') {\n href = response.data.url\n } else {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array])\n href = URL.createObjectURL(blob)\n }\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = href\n link.setAttribute('download', filename)\n link.click()\n })\n\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.root}`,\n })\n })\n },\n deleteFile(filename) {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n this.$dialog\n .confirm(`Are you sure you want to delete: ${filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(\n `/openc3-api/storage/delete/${encodeURIComponent(\n this.path\n )}${filename}?${\n this.mode\n }=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n })\n .then((response) => {\n this.updateFiles()\n })\n },\n updateFiles() {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/files/OPENC3_${root}_${this.mode.toUpperCase()}/${\n this.path\n }`\n )\n .then((response) => {\n this.files = response.data[0].map((bucket) => {\n return { name: bucket, icon: 'mdi-folder' }\n })\n this.files = this.files.concat(\n response.data[1].map((item) => {\n return {\n name: item.name,\n icon: 'mdi-file',\n size: item.size,\n modified: item.modified,\n }\n })\n )\n })\n .catch((response) => {\n this.files = []\n if (response.data.message) {\n this.$notify.caution({\n title: response.data.message,\n })\n } else {\n this.$notify.caution({\n title: response.message,\n })\n }\n })\n },\n },\n}\n</script>\n\n<style scoped>\n.file-input {\n padding-top: 0px;\n margin-top: 0px;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BucketExplorer.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!./BucketExplorer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BucketExplorer.vue?vue&type=template&id=5e42fd88&scoped=true&\"\nimport script from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\nexport * from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BucketExplorer.vue?vue&type=style&index=0&id=5e42fd88&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 \"5e42fd88\",\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, \".file-input[data-v-5e42fd88]{padding-top:0;margin-top:0}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".v-list[data-v-2eb37f67] .v-label{margin-left:5px}.v-list-item__icon[data-v-2eb37f67]{margin-right:15px!important}.v-list-item__title[data-v-2eb37f67]{color:#fff}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BucketExplorer.vue?vue&type=style&index=0&id=5e42fd88&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(\"d6d83bcc\", content, true, {\"sourceMap\":false,\"shadowMode\":false});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=style&index=0&id=2eb37f67&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(\"706a3f6d\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["cov_uucdexesw","actualCoverage","s","render","f","_vm","this","_c","_self","attrs","title","staticStyle","staticClass","_v","_l","buckets","bucket","index","key","on","$event","stopPropagation","selectBucket","_s","volumes","length","b","volume","selectVolume","_e","root","model","value","search","callback","$$v","expression","headers","files","showFirstLastPage","itemsPerPageOptions","firstIcon","lastIcon","prevIcon","nextIcon","fileClick","scopedSlots","_u","fn","backArrow","path","mode","file","proxy","_ref","item","icon","name","_ref2","downloadFile","deleteFile","staticRenderFns","menus","menu","i","_g","_b","formatDT","concat","label","domProps","radioGroup","items","option","j","divider","disabled","command","radio","checkbox","checked","$set","style","props","type","Array","default","String","methods","string","replaceAll","toLowerCase","mounted","substring","document","component","vueInstance","Vue","axiosInstance","axios","baseURL","location","origin","timeout","params","interceptors","response","use","error","_error$response","_error$response2","_error$response3","_error$response4","_error$response5","status","OpenC3Auth","updateToken","defaultMinValidity","then","refreshed","setTokens","includes","toString","Promise","reject","body","statusText","config","data","message","exception","class","_error$response6","$notify","serious","request","_asyncToGenerator","_regeneratorRuntime","mark","_callee","method","url","_ref2$params","_ref2$noAuth","noAuth","_ref2$noScope","noScope","_args","arguments","wrap","_context","prev","next","undefined","sent","t0","login","localStorage","openc3Token","window","openc3Scope","abrupt","stop","_x","_x2","apply","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","_objectSpread","get","_ref3","_ref3$headers","put","_ref4","_ref4$headers","post","_ref5","_ref5$headers","delete","_ref6","_ref6$headers","components","TopBar","text","created","_this","Api","$route","parts","split","slice","join","updateFiles","watch","_file","presignedRequest","encodeURIComponent","toUpperCase","update","$router","push","event","filename","_this2","api","href","decodedData","atob","contents","uInt8Array","Uint8Array","charCodeAt","blob","Blob","URL","createObjectURL","link","createElement","setAttribute","click","catch","caution","_this3","$dialog","confirm","okText","cancelText","dialog","_this4","map","size","modified","___CSS_LOADER_EXPORT___","module","id","content","__esModule","locals","exports","add"],"sourceRoot":""}
1
+ {"version":3,"file":"js/554.js","mappings":"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","sources":["webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?95da","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?a437","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/services/axios.js","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/services/api.js","webpack://@openc3/cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?4b33","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?98c2","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?f9df","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?386c","webpack://@openc3/cosmos-tool-bucketexplorer/./src/tools/BucketExplorer/BucketExplorer.vue?eb3d","webpack://@openc3/cosmos-tool-bucketexplorer/../openc3-tool-common/src/components/TopBar.vue?9efc"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('top-bar',{attrs:{\"title\":_vm.title}}),_c('v-card',{attrs:{\"width\":\"100%\"}},[_c('div',{staticStyle:{\"padding-left\":\"5px\",\"padding-top\":\"5px\"}},[_c('span',{staticClass:\"ma-2\"},[_vm._v(\"Buckets:\")]),_vm._l((_vm.buckets),function(bucket,index){return _c('v-chip',{key:index,staticClass:\"ma-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.selectBucket(bucket)}}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',[_vm._v(\"mdi-bucket\")])],1),_vm._v(\" \"+_vm._s(bucket)+\" \")],1)})],2),(_vm.volumes.length !== 0)?_c('div',{staticStyle:{\"padding-left\":\"5px\"}},[_c('span',{staticClass:\"ma-2\"},[_vm._v(\"Volumes:\")]),_vm._l((_vm.volumes),function(volume,index){return _c('v-chip',{key:index,staticClass:\"ma-2\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.selectVolume(volume)}}},[_c('v-avatar',{attrs:{\"left\":\"\"}},[_c('v-icon',[_vm._v(\"mdi-folder\")])],1),_vm._v(\" \"+_vm._s(volume)+\" \")],1)})],2):_vm._e(),_c('v-card-title',{staticStyle:{\"padding-top\":\"0px\"}},[_vm._v(\" \"+_vm._s(_vm.root)+\" Files \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.files,\"search\":_vm.search,\"items-per-page\":1000,\"footer-props\":{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n },\"calculate-widths\":\"\",\"multi-sort\":\"\",\"dense\":\"\"},on:{\"click:row\":_vm.fileClick},scopedSlots:_vm._u([{key:\"top\",fn:function(){return [_c('v-row',{staticClass:\"pa-5\"},[_c('v-btn',{attrs:{\"icon\":\"\"}},[_c('v-icon',{on:{\"click\":_vm.backArrow}},[_vm._v(\"mdi-chevron-left-box-outline\")])],1),_c('span',{staticClass:\".text-body-1 ma-2\",attrs:{\"data-test\":\"file-path\"}},[_vm._v(\"/\"+_vm._s(_vm.path))]),_c('v-spacer'),(_vm.mode === 'bucket')?_c('div',{staticStyle:{\"display\":\"flex\"}},[_c('span',{staticClass:\"pa-1\"},[_vm._v(\"Upload\")]),_c('v-file-input',{staticClass:\"file-input\",attrs:{\"hide-input\":\"\",\"hide-details\":\"\",\"prepend-icon\":\"mdi-upload\",\"data-test\":\"upload-file\"},model:{value:(_vm.file),callback:function ($$v) {_vm.file=$$v},expression:\"file\"}})],1):_vm._e()],1)]},proxy:true},{key:\"item.name\",fn:function({ item }){return [_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(_vm._s(item.icon))]),_vm._v(_vm._s(item.name)+\" \")]}},{key:\"item.action\",fn:function({ item }){return [(item.icon === 'mdi-file')?_c('v-icon',{staticClass:\"mr-3\",attrs:{\"data-test\":\"download-file\"},on:{\"click\":function($event){return _vm.downloadFile(item.name)}}},[_vm._v(\"mdi-download-box\")]):_vm._e(),(item.icon === 'mdi-file')?_c('v-icon',{attrs:{\"data-test\":\"delete-file\"},on:{\"click\":function($event){return _vm.deleteFile(item.name)}}},[_vm._v(\"mdi-delete\")]):_vm._e()]}}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('mounting-portal',{attrs:{\"mount-to\":\"#openc3-menu\",\"append\":\"\"}},[_c('div',{staticClass:\"v-toolbar__content\"},[_vm._l((_vm.menus),function(menu,i){return _c('v-menu',{key:i,attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1\",attrs:{\"outlined\":\"\",\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label}`)}},'v-btn',attrs,false),on),[_c('span',{domProps:{\"textContent\":_vm._s(menu.label)}}),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,true)},[_c('v-list',[_c('v-radio-group',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":menu.radioGroup,\"hide-details\":\"\",\"dense\":\"\"}},[_vm._l((menu.items),function(option,j){return [(option.divider)?_c('v-divider'):_c('v-list-item',{key:j,attrs:{\"disabled\":option.disabled,\"data-test\":_vm.formatDT(`${_vm.title} ${menu.label} ${option.label}`)},on:{\"click\":function($event){return option.command(option)}}},[(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},model:{value:(option.checked),callback:function ($$v) {_vm.$set(option, \"checked\", $$v)},expression:\"option.checked\"}})],1):_vm._e(),(option.icon)?_c('v-list-item-icon',[_c('v-icon',{attrs:{\"disabled\":option.disabled}},[_vm._v(_vm._s(option.icon))])],1):_vm._e(),(!option.radio && !option.checkbox)?_c('v-list-item-title',{style:('cursor: pointer;' + (option.disabled ? 'opacity: 0.2' : ''))},[_vm._v(_vm._s(option.label))]):_vm._e()],1)]})],2)],1)],1)}),_c('v-spacer'),_c('v-toolbar-title',[_vm._v(_vm._s(_vm.title))]),_c('v-spacer')],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@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!./TopBar.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!./TopBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=2eb37f67&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=2eb37f67&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 \"2eb37f67\",\n null\n \n)\n\nexport default component.exports","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# 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 // 'Ignore-Errors': '500',\n // })\n if (\n error.response.headers['ignore-errors'] &&\n error.response.headers['ignore-errors'].includes(\n error.response.status.toString()\n )\n ) {\n return Promise.reject(error)\n }\n let body = `HTTP ${error.response.status} - `\n if (error.response?.statusText) {\n body += `${error.response.statusText} `\n }\n if (error.response?.config?.data) {\n body += `${error.response.config.data} `\n }\n if (error.response?.data?.message) {\n body += `${error.response.data.message}`\n } else if (error.response?.data?.exception) {\n body += `${error.response.data.exception}`\n } else if (error.response?.data?.error?.message) {\n if (error.response.data.error.class) {\n body += `${error.response.data.error.class} `\n }\n body += `${error.response.data.error.message}`\n } else {\n body += `${error.response?.data}`\n }\n if (vueInstance.$notify) {\n vueInstance.$notify.serious({\n title: 'Network error',\n body,\n })\n }\n throw error\n } else {\n throw error\n }\n }\n)\n\nexport default axiosInstance\n","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport axios from './axios.js'\n\nconst request = async function (\n method,\n url,\n { data, params = {}, headers, noAuth = false, noScope = false } = {}\n) {\n if (!noAuth) {\n try {\n let refreshed = await OpenC3Auth.updateToken(\n OpenC3Auth.defaultMinValidity\n )\n if (refreshed) {\n OpenC3Auth.setTokens()\n }\n } catch (error) {\n OpenC3Auth.login()\n }\n headers['Authorization'] = localStorage.openc3Token\n }\n if (!noScope && !params['scope']) {\n params['scope'] = window.openc3Scope\n }\n return axios({\n method,\n url,\n data,\n params,\n headers,\n })\n}\n\nconst acceptOnlyDefaultHeaders = {\n Accept: 'application/json',\n}\n\nconst fullDefaultHeaders = {\n ...acceptOnlyDefaultHeaders,\n 'Content-Type': 'application/json',\n}\n\nexport default {\n get: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('get', path, { params, headers, noScope, noAuth })\n },\n\n put: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('put', path, { data, params, headers, noScope, noAuth })\n },\n\n post: function (\n path,\n { data, params, headers = fullDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('post', path, { data, params, headers, noScope, noAuth })\n },\n\n delete: function (\n path,\n { params, headers = acceptOnlyDefaultHeaders, noScope, noAuth } = {}\n ) {\n return request('delete', path, { params, headers, noScope, noAuth })\n },\n}\n","<!--\n# Copyright 2023 OpenC3, Inc.\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 file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card width=\"100%\">\n <div style=\"padding-left: 5px; padding-top: 5px\">\n <span class=\"ma-2\">Buckets:</span>\n <v-chip\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-avatar left>\n <v-icon>mdi-bucket</v-icon>\n </v-avatar>\n {{ bucket }}\n </v-chip>\n </div>\n <div style=\"padding-left: 5px\" v-if=\"volumes.length !== 0\">\n <span class=\"ma-2\">Volumes:</span>\n <v-chip\n v-for=\"(volume, index) in volumes\"\n :key=\"index\"\n color=\"primary\"\n class=\"ma-2\"\n @click.stop=\"selectVolume(volume)\"\n >\n <v-avatar left>\n <v-icon>mdi-folder</v-icon>\n </v-avatar>\n {{ volume }}\n </v-chip>\n </div>\n <v-card-title style=\"padding-top: 0px\">\n {{ root }} Files\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n append-icon=\"mdi-magnify\"\n label=\"Search\"\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers=\"headers\"\n :items=\"files\"\n :search=\"search\"\n :items-per-page=\"1000\"\n :footer-props=\"{\n showFirstLastPage: true,\n itemsPerPageOptions: [1000],\n firstIcon: 'mdi-page-first',\n lastIcon: 'mdi-page-last',\n prevIcon: 'mdi-chevron-left',\n nextIcon: 'mdi-chevron-right',\n }\"\n @click:row=\"fileClick\"\n calculate-widths\n multi-sort\n dense\n >\n <template v-slot:top>\n <v-row class=\"pa-5\">\n <v-btn icon>\n <v-icon @click=\"backArrow\">mdi-chevron-left-box-outline</v-icon>\n </v-btn>\n <span class=\".text-body-1 ma-2\" data-test=\"file-path\"\n >/{{ path }}</span\n >\n <v-spacer />\n <div style=\"display: flex\" v-if=\"mode === 'bucket'\">\n <span class=\"pa-1\">Upload</span>\n <v-file-input\n v-model=\"file\"\n hide-input\n hide-details\n class=\"file-input\"\n prepend-icon=\"mdi-upload\"\n data-test=\"upload-file\"\n />\n </div>\n </v-row>\n </template>\n <template v-slot:item.name=\"{ item }\">\n <v-icon class=\"mr-2\">{{ item.icon }}</v-icon\n >{{ item.name }}\n </template>\n <template v-slot:item.action=\"{ item }\">\n <v-icon\n class=\"mr-3\"\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n data-test=\"download-file\"\n >mdi-download-box</v-icon\n >\n <v-icon\n v-if=\"item.icon === 'mdi-file'\"\n @click=\"deleteFile(item.name)\"\n data-test=\"delete-file\"\n >mdi-delete</v-icon\n >\n </template>\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport Api from '@openc3/tool-common/src/services/api'\nimport axios from 'axios'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n root: '',\n mode: 'bucket',\n buckets: [],\n volumes: [],\n path: '',\n file: null,\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Action', value: 'action' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n Api.get('/openc3-api/storage/volumes').then((response) => {\n this.volumes = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n if (parts[0] === '') {\n this.mode = 'volume'\n // Prepend the slash to note this is a volume not a bucket\n this.root = `/${parts[1]}`\n this.path = parts.slice(2).join('/')\n } else {\n this.mode = 'bucket'\n this.root = parts[0]\n this.path = parts.slice(1).join('/')\n }\n this.updateFiles()\n }\n },\n watch: {\n // This is the upload function that is activated when the file gets set\n file: async function () {\n if (this.file === null) return\n // Reassign data to presignedRequest for readability\n const { data: presignedRequest } = await Api.get(\n `/openc3-api/storage/upload/${encodeURIComponent(\n `${this.path}${this.file.name}`\n )}?bucket=OPENC3_${this.root.toUpperCase()}_BUCKET`\n )\n // This pushes the file into storage by using the fields in the presignedRequest\n // See storage_controller.rb get_presigned_request()\n const response = await axios({\n ...presignedRequest,\n data: this.file,\n })\n this.file = null\n this.updateFiles()\n },\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.root}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.root === bucket) return\n this.mode = 'bucket'\n this.root = bucket\n this.path = ''\n this.update()\n },\n selectVolume(volume) {\n if (this.root === volume) return\n this.mode = 'volume'\n this.root = volume\n this.path = ''\n this.update()\n },\n backArrow() {\n // Nothing to do if we're at the root so return\n if (this.path === '') return\n let parts = this.path.split('/')\n this.path = parts.slice(0, parts.length - 2).join('/')\n // Only append the last slash if we're not at the root\n // The root is 2 because it's the path before clicking back\n if (parts.length > 2) {\n this.path += '/'\n }\n this.update()\n },\n fileClick(event) {\n if (event.icon === 'mdi-folder') {\n if (this.root === '') {\n // initial root click\n this.root = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n let root = this.root.toUpperCase()\n let api = 'download'\n if (this.mode === 'volume') {\n api = 'download_file'\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/${api}/${encodeURIComponent(\n this.path\n )}${filename}?${this.mode}=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n .then((response) => {\n let href = null\n if (this.mode === 'bucket') {\n href = response.data.url\n } else {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array])\n href = URL.createObjectURL(blob)\n }\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = href\n link.setAttribute('download', filename)\n link.click()\n })\n\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.root}`,\n })\n })\n },\n deleteFile(filename) {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n this.$dialog\n .confirm(`Are you sure you want to delete: ${filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(\n `/openc3-api/storage/delete/${encodeURIComponent(\n this.path\n )}${filename}?${\n this.mode\n }=OPENC3_${root}_${this.mode.toUpperCase()}`\n )\n })\n .then((response) => {\n this.updateFiles()\n })\n },\n updateFiles() {\n let root = this.root.toUpperCase()\n if (this.mode === 'volume') {\n root = root.slice(1)\n }\n Api.get(\n `/openc3-api/storage/files/OPENC3_${root}_${this.mode.toUpperCase()}/${\n this.path\n }`\n )\n .then((response) => {\n this.files = response.data[0].map((bucket) => {\n return { name: bucket, icon: 'mdi-folder' }\n })\n this.files = this.files.concat(\n response.data[1].map((item) => {\n return {\n name: item.name,\n icon: 'mdi-file',\n size: item.size,\n modified: item.modified,\n }\n })\n )\n })\n .catch((response) => {\n this.files = []\n if (response.data.message) {\n this.$notify.caution({\n title: response.data.message,\n })\n } else {\n this.$notify.caution({\n title: response.message,\n })\n }\n })\n },\n },\n}\n</script>\n\n<style scoped>\n.file-input {\n padding-top: 0px;\n margin-top: 0px;\n}\n</style>\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BucketExplorer.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!./BucketExplorer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BucketExplorer.vue?vue&type=template&id=5e42fd88&scoped=true&\"\nimport script from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\nexport * from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BucketExplorer.vue?vue&type=style&index=0&id=5e42fd88&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 \"5e42fd88\",\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, \".file-input[data-v-5e42fd88]{padding-top:0;margin-top:0}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".v-list[data-v-2eb37f67] .v-label{margin-left:5px}.v-list-item__icon[data-v-2eb37f67]{margin-right:15px!important}.v-list-item__title[data-v-2eb37f67]{color:#fff}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BucketExplorer.vue?vue&type=style&index=0&id=5e42fd88&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(\"d6d83bcc\", content, true, {\"sourceMap\":false,\"shadowMode\":false});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=style&index=0&id=2eb37f67&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(\"706a3f6d\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["cov_uucdexesw","actualCoverage","s","render","f","_vm","this","_c","_self","attrs","title","staticStyle","staticClass","_v","_l","buckets","bucket","index","key","on","$event","stopPropagation","selectBucket","_s","volumes","length","b","volume","selectVolume","_e","root","model","value","search","callback","$$v","expression","headers","files","showFirstLastPage","itemsPerPageOptions","firstIcon","lastIcon","prevIcon","nextIcon","fileClick","scopedSlots","_u","fn","backArrow","path","mode","file","proxy","_ref","item","icon","name","_ref2","downloadFile","deleteFile","staticRenderFns","menus","menu","i","_g","_b","formatDT","concat","label","domProps","radioGroup","items","option","j","divider","disabled","command","radio","checkbox","checked","$set","style","props","type","Array","default","String","methods","string","replaceAll","toLowerCase","mounted","substring","document","component","vueInstance","Vue","axiosInstance","axios","baseURL","location","origin","timeout","params","interceptors","response","use","error","_error$response","_error$response2","_error$response3","_error$response4","_error$response5","status","OpenC3Auth","updateToken","defaultMinValidity","then","refreshed","setTokens","includes","toString","Promise","reject","body","statusText","config","data","message","exception","class","_error$response6","$notify","serious","request","_asyncToGenerator","_regeneratorRuntime","mark","_callee","method","url","_ref2$params","_ref2$noAuth","noAuth","_ref2$noScope","noScope","_args","arguments","wrap","_context","prev","next","undefined","sent","t0","login","localStorage","openc3Token","window","openc3Scope","abrupt","stop","_x","_x2","apply","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","_objectSpread","get","_ref3","_ref3$headers","put","_ref4","_ref4$headers","post","_ref5","_ref5$headers","delete","_ref6","_ref6$headers","components","TopBar","text","created","_this","Api","$route","parts","split","slice","join","updateFiles","watch","_file","presignedRequest","encodeURIComponent","toUpperCase","update","$router","push","event","filename","_this2","api","href","decodedData","atob","contents","uInt8Array","Uint8Array","charCodeAt","blob","Blob","URL","createObjectURL","link","createElement","setAttribute","click","catch","caution","_this3","$dialog","confirm","okText","cancelText","dialog","_this4","map","size","modified","___CSS_LOADER_EXPORT___","module","id","content","__esModule","locals","exports","add"],"sourceRoot":""}