openc3-cosmos-tool-bucketexplorer 5.4.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md ADDED
@@ -0,0 +1,28 @@
1
+ ## OpenC3 COSMOS Bucket Explorer Plugin
2
+
3
+ [Documentation](https://openc3.com)
4
+
5
+ This plugin provides the Bucket Explorer user interface
6
+
7
+ ## Getting Started
8
+
9
+ 1. At the OpenC3 Admin - Plugins, upload the openc3-cosmos-tool-bucketexplorer.gem file
10
+
11
+ ## Contributing
12
+
13
+ We encourage you to contribute to OpenC3 COSMOS!
14
+
15
+ Contributing is easy.
16
+
17
+ 1. Fork the project
18
+ 2. Create a feature branch
19
+ 3. Make your changes
20
+ 4. Submit a pull request
21
+
22
+ Before any contributions can be incorporated we do require all contributors to agree to a Contributor License Agreement
23
+
24
+ This protects both you and us and you retain full rights to any code you write.
25
+
26
+ ## License
27
+
28
+ This OpenC3 COSMOS plugin is released under the AGPLv3.0 with a few addendums. See [LICENSE.txt](LICENSE.txt)
data/Rakefile ADDED
@@ -0,0 +1,39 @@
1
+ # encoding: ascii-8bit
2
+
3
+ # Copyright 2023 OpenC3, In.
4
+ # All Rights Reserved.
5
+ #
6
+ # This program is free software; you can modify and/or redistribute it
7
+ # under the terms of the GNU Affero General Public License
8
+ # as published by the Free Software Foundation; version 3 with
9
+ # attribution addendums as found in the LICENSE.txt
10
+ #
11
+ # This program is distributed in the hope that it will be useful,
12
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ # GNU Affero General Public License for more details.
15
+ #
16
+ # This file may also be used under the terms of a commercial license
17
+ # if purchased from OpenC3, Inc.
18
+
19
+ PLUGIN_NAME = Dir['*.gemspec'][0].split('.')[0..-2].join('.')
20
+
21
+ task :require_version do
22
+ if ENV['VERSION']
23
+ if ENV['VERSION'] =~ /-/
24
+ # Add Timestamp to prerelease versions
25
+ ENV['VERSION'] = ENV['VERSION'] + "." + Time.now.utc.strftime("%Y%m%d%H%M%S")
26
+ end
27
+ else
28
+ puts "VERSION is required: rake <task> VERSION=X.X.X"
29
+ exit 1
30
+ end
31
+ end
32
+
33
+ task :build => [:require_version] do
34
+ _, platform, *_ = RUBY_PLATFORM.split("-")
35
+ if platform == 'mswin32' or platform == 'mingw32'
36
+ puts "Warning: Building gem on Windows will lose file permissions"
37
+ end
38
+ system("gem build #{PLUGIN_NAME}")
39
+ end
data/plugin.txt ADDED
@@ -0,0 +1,5 @@
1
+ TOOL bucketexplorer "Bucket Explorer"
2
+ INLINE_URL js/app.js
3
+ ICON mdi-pail
4
+ POSITION 11
5
+ CATEGORY Utilities
@@ -0,0 +1,4 @@
1
+ <!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Vue App</title><main><h1>Your Microfrontend is not here</h1><p>The @openc3/cosmos-tool-bucketexplorer microfrontend is running in "integrated" mode, since standalone-single-spa-webpack-plugin is disabled. This means that it does not work as a standalone application without changing configuration.</p><h2>How do I develop this microfrontend?</h2><p>To develop this microfrontend, try the following steps:</p><ol><li>Copy the following URL to your clipboard: <a target="_blank" rel="noopener" id="mf-url"></a></li><li>In a new browser tab, go to the your single-spa web app. This is where your "root config" is running. You do not have to run the root config locally if it is already running on a deployed environment - go to the deployed environment directly.</li><li>In the browser console, run <code>localStorage.setItem('devtools', true);</code> Refresh the page.</li><li>A yellowish rectangle should appear at the bottom right of your screen. Click on it. Find the name @openc3/cosmos-tool-bucketexplorer and click on it. If it is not present, click on Add New Module.</li><li>Paste the URL above into the input that appears. Refresh the page.</li><li>Congrats, your local code is now being used!</li></ol><p></p><p>For further information about "integrated" mode, see the following links:</p><ul><li><a target="_blank" rel="noopener" href="https://single-spa.js.org/docs/recommended-setup#local-development">Local Development Overview</a></li><li><a target="_blank" rel="noopener" href="https://github.com/joeldenning/import-map-overrides">Import Map Overrides Documentation</a></li></ul><p></p><h2>If you prefer Standalone mode</h2><p>To run this microfrontend in "standalone" mode, the standalone-single-spa-webpack-plugin must not be disabled. In some cases, this is done by running <code>npm run start:standalone</code>. Alternatively, you can add <code>--env standalone</code> to your package.json start script if you are using webpack-config-single-spa.</p>If neither of those work for you, see more details about enabling standalone mode at <a target="_blank" rel="noopener" href="https://github.com/single-spa/standalone-single-spa-webpack-plugin">Standalone Plugin Documentation</a>.<p></p><script>const mfLink = document.getElementById('mf-url');
2
+ const fullSrc = new URL('/tools/bucketexplorer//tools/bucketexplorer/js/app.js', window.location.href);
3
+ mfLink.href = fullSrc;
4
+ mfLink.textContent = fullSrc;</script></main></head><body><div id="app"></div></body></html>
@@ -0,0 +1,2 @@
1
+ (self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]=self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]||[]).push([[141],{2141:function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return O}});t(7950),t(4908);function l(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="aa0d58f4c6f1ce30feb2781cc34591d3cd7ed9ab",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:686}},4:{start:{line:1,column:247},end:{line:1,column:481}},5:{start:{line:1,column:311},end:{line:1,column:336}},6:{start:{line:1,column:336},end:{line:1,column:367}},7:{start:{line:1,column:759},end:{line:1,column:773}},8:{start:{line:8,column:134},end:{line:8,column:320}},9:{start:{line:8,column:373},end:{line:8,column:473}},10:{start:{line:8,column:519},end:{line:8,column:672}},11:{start:{line:8,column:595},end:{line:8,column:629}},12:{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:224},end:{line:1,column:225}},loc:{start:{line:1,column:246},end:{line:1,column:482}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:294},end:{line:1,column:295}},loc:{start:{line:1,column:310},end:{line:1,column:368}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:743},end:{line:1,column:744}},loc:{start:{line:1,column:758},end:{line:1,column:774}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:8,column:123},end:{line:8,column:124}},loc:{start:{line:8,column:133},end:{line:8,column:321}},line:8},5:{name:"(anonymous_5)",decl:{start:{line:8,column:354},end:{line:8,column:355}},loc:{start:{line:8,column:372},end:{line:8,column:474}},line:8},6:{name:"(anonymous_6)",decl:{start:{line:8,column:500},end:{line:8,column:501}},loc:{start:{line:8,column:518},end:{line:8,column:673}},line:8},7:{name:"(anonymous_7)",decl:{start:{line:8,column:578},end:{line:8,column:579}},loc:{start:{line:8,column:594},end:{line:8,column:630}},line:8}},branchMap:{0:{loc:{start:{line:8,column:527},end:{line:8,column:671}},type:"cond-expr",locations:[{start:{line:8,column:553},end:{line:8,column:662}},{start:{line:8,column:663},end:{line:8,column:671}}],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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"aa0d58f4c6f1ce30feb2781cc34591d3cd7ed9ab"},a=t[o]||(t[o]={});a[n]&&a[n].hash===e||(a[n]=i);var c=a[n];return l=function(){return c},c}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-list",[e("span",{staticClass:"ma-2"},[n._v("Buckets (click to browse):")]),n._l(n.buckets,(function(t,o){return l().f[1]++,l().s[4]++,e("v-list-item",{key:o,on:{click:function(e){return l().f[2]++,l().s[5]++,e.stopPropagation(),l().s[6]++,n.selectBucket(t)}}},[e("v-icon",{staticClass:"mr-2"},[n._v("mdi-bucket")]),e("v-list-item-title",[n._v(n._s(t))])],1)}))],2),e("v-card",{attrs:{width:"100%"}},[e("v-card-title",[n._v(" "+n._s(n.bucket)+" 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[3]++,l().s[7]++,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[4]++,l().s[8]++,[e("v-icon",{staticClass:"ml-2",on:{click:n.backArrow}},[n._v("mdi-chevron-left-box-outline")]),e("span",{staticClass:".text-body-1 ma-2"},[n._v("/"+n._s(n.path))])]},proxy:!0},{key:"item.name",fn:function(t){var o=t.item;return l().f[5]++,l().s[9]++,[e("v-icon",{staticClass:"mr-2"},[n._v(n._s(o.icon))]),n._v(n._s(o.name)+" ")]}},{key:"item.download",fn:function(t){var o=t.item;return l().f[6]++,l().s[10]++,["mdi-file"==o.icon?(l().b[0][0]++,e("v-icon",{on:{click:function(e){return l().f[7]++,l().s[11]++,n.downloadFile(o.name)}}},[n._v("mdi-download-box")])):(l().b[0][1]++,n._e())]}}])})],1)],1)},i=(l().s[12]++,[]),a=(t(2501),t(6728),t(8178),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)])}),c=[],s=(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}}),r=s,u=(t(4888),t(3483)),m=(0,u.Z)(r,a,c,!1,null,"2eb37f67",null),d=m.exports,A=t(6964),p=t(5789),h=t(9502),f=(t(9529),t(1235),t(8188),t(8233),t(9644)),v=t.n(f),b=t(4091),C=new b["default"],k=v().create({baseURL:location.origin,timeout:6e4,params:{}});k.interceptors.response.use((function(n){return n}),(function(n){if(n.response){var e,t,l,o,i,a,c,s,r,u;if(401===n.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0),n.response.headers["ignore-errors"]&&n.response.headers["ignore-errors"].includes(n.response.status.toString()))return Promise.reject(n);var m="HTTP ".concat(n.response.status," - ");if(null!==(e=n.response)&&void 0!==e&&e.statusText&&(m+="".concat(n.response.statusText," ")),null!==(t=n.response)&&void 0!==t&&null!==(l=t.config)&&void 0!==l&&l.data&&(m+="".concat(n.response.config.data," ")),null!==(o=n.response)&&void 0!==o&&null!==(i=o.data)&&void 0!==i&&i.message)m+="".concat(n.response.data.message);else if(null!==(a=n.response)&&void 0!==a&&null!==(c=a.data)&&void 0!==c&&c.exception)m+="".concat(n.response.data.exception);else if(null!==(s=n.response)&&void 0!==s&&null!==(r=s.data)&&void 0!==r&&null!==(u=r.error)&&void 0!==u&&u.message)n.response.data.error.class&&(m+="".concat(n.response.data.error.class," ")),m+="".concat(n.response.data.error.message);else{var d;m+="".concat(null===(d=n.response)||void 0===d?void 0:d.data)}throw C.$notify&&C.$notify.serious({title:"Network error",body:m}),n}throw n}));var _=k,g=function(){var n=(0,h.Z)((0,p.Z)().mark((function n(e,t){var l,o,i,a,c,s,r,u,m,d=arguments;return(0,p.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(l=d.length>2&&void 0!==d[2]?d[2]:{},o=l.data,i=l.params,a=void 0===i?{}:i,c=l.headers,s=l.noAuth,r=void 0!==s&&s,u=l.noScope,m=void 0!==u&&u,r){n.next=11;break}return n.prev=2,n.next=5,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);case 5:n.next=10;break;case 7:n.prev=7,n.t0=n["catch"](2),OpenC3Auth.login();case 10:c["Authorization"]=localStorage.openc3Token;case 11:return m||a["scope"]||(a["scope"]=window.openc3Scope),n.abrupt("return",_({method:e,url:t,data:o,params:a,headers:c}));case 13:case"end":return n.stop()}}),n,null,[[2,7]])})));return function(e,t){return n.apply(this,arguments)}}(),x={Accept:"application/json"},y=(0,A.Z)((0,A.Z)({},x),{},{"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?x:l,i=e.noScope,a=e.noAuth;return g("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?y:o,a=e.noScope,c=e.noAuth;return g("put",n,{data:t,params:l,headers:i,noScope:a,noAuth:c})},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?y:o,a=e.noScope,c=e.noAuth;return g("post",n,{data:t,params:l,headers:i,noScope:a,noAuth:c})},delete:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,o=void 0===l?x:l,i=e.noScope,a=e.noAuth;return g("delete",n,{params:t,headers:o,noScope:i,noAuth:a})}};function S(){var n="/openc3/plugins/packages/openc3-cosmos-tool-bucketexplorer/src/tools/BucketExplorer/BucketExplorer.vue",e="2a6bc9b998388cb45a26e7b03d47e8c365391e9c",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:10,column:4},end:{line:23,column:5}},1:{start:{line:26,column:4},end:{line:28,column:6}},2:{start:{line:27,column:6},end:{line:27,column:34}},3:{start:{line:29,column:4},end:{line:34,column:5}},4:{start:{line:30,column:18},end:{line:30,column:52}},5:{start:{line:31,column:6},end:{line:31,column:28}},6:{start:{line:32,column:6},end:{line:32,column:42}},7:{start:{line:33,column:6},end:{line:33,column:24}},8:{start:{line:38,column:6},end:{line:43,column:8}},9:{start:{line:44,column:6},end:{line:44,column:24}},10:{start:{line:47,column:6},end:{line:47,column:40}},11:{start:{line:47,column:34},end:{line:47,column:40}},12:{start:{line:48,column:6},end:{line:48,column:26}},13:{start:{line:49,column:6},end:{line:49,column:20}},14:{start:{line:50,column:6},end:{line:50,column:19}},15:{start:{line:54,column:6},end:{line:54,column:34}},16:{start:{line:54,column:28},end:{line:54,column:34}},17:{start:{line:55,column:18},end:{line:55,column:38}},18:{start:{line:56,column:6},end:{line:56,column:60}},19:{start:{line:59,column:6},end:{line:61,column:7}},20:{start:{line:60,column:8},end:{line:60,column:24}},21:{start:{line:62,column:6},end:{line:62,column:19}},22:{start:{line:65,column:6},end:{line:73,column:7}},23:{start:{line:66,column:8},end:{line:71,column:9}},24:{start:{line:68,column:10},end:{line:68,column:34}},25:{start:{line:70,column:10},end:{line:70,column:39}},26:{start:{line:72,column:8},end:{line:72,column:21}},27:{start:{line:76,column:6},end:{line:92,column:10}},28:{start:{line:83,column:23},end:{line:83,column:50}},29:{start:{line:84,column:10},end:{line:84,column:39}},30:{start:{line:85,column:10},end:{line:85,column:49}},31:{start:{line:86,column:10},end:{line:86,column:22}},32:{start:{line:89,column:10},end:{line:91,column:12}},33:{start:{line:95,column:6},end:{line:114,column:8}},34:{start:{line:100,column:8},end:{line:102,column:10}},35:{start:{line:101,column:10},end:{line:101,column:53}},36:{start:{line:103,column:8},end:{line:113,column:9}},37:{start:{line:105,column:12},end:{line:111,column:13}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:9,column:2},end:{line:9,column:3}},loc:{start:{line:9,column:9},end:{line:24,column:3}},line:9},1:{name:"(anonymous_1)",decl:{start:{line:25,column:2},end:{line:25,column:3}},loc:{start:{line:25,column:12},end:{line:35,column:3}},line:25},2:{name:"(anonymous_2)",decl:{start:{line:26,column:48},end:{line:26,column:49}},loc:{start:{line:26,column:62},end:{line:28,column:5}},line:26},3:{name:"(anonymous_3)",decl:{start:{line:37,column:4},end:{line:37,column:5}},loc:{start:{line:37,column:13},end:{line:45,column:5}},line:37},4:{name:"(anonymous_4)",decl:{start:{line:46,column:4},end:{line:46,column:5}},loc:{start:{line:46,column:25},end:{line:51,column:5}},line:46},5:{name:"(anonymous_5)",decl:{start:{line:52,column:4},end:{line:52,column:5}},loc:{start:{line:52,column:16},end:{line:63,column:5}},line:52},6:{name:"(anonymous_6)",decl:{start:{line:64,column:4},end:{line:64,column:5}},loc:{start:{line:64,column:21},end:{line:74,column:5}},line:64},7:{name:"(anonymous_7)",decl:{start:{line:75,column:4},end:{line:75,column:5}},loc:{start:{line:75,column:27},end:{line:93,column:5}},line:75},8:{name:"(anonymous_8)",decl:{start:{line:81,column:14},end:{line:81,column:15}},loc:{start:{line:81,column:28},end:{line:87,column:9}},line:81},9:{name:"(anonymous_9)",decl:{start:{line:88,column:15},end:{line:88,column:16}},loc:{start:{line:88,column:29},end:{line:92,column:9}},line:88},10:{name:"(anonymous_10)",decl:{start:{line:94,column:4},end:{line:94,column:5}},loc:{start:{line:94,column:18},end:{line:115,column:5}},line:94},11:{name:"(anonymous_11)",decl:{start:{line:99,column:13},end:{line:99,column:14}},loc:{start:{line:99,column:27},end:{line:114,column:7}},line:99},12:{name:"(anonymous_12)",decl:{start:{line:100,column:42},end:{line:100,column:43}},loc:{start:{line:100,column:54},end:{line:102,column:9}},line:100},13:{name:"(anonymous_13)",decl:{start:{line:104,column:31},end:{line:104,column:32}},loc:{start:{line:104,column:41},end:{line:112,column:11}},line:104}},branchMap:{0:{loc:{start:{line:29,column:4},end:{line:34,column:5}},type:"if",locations:[{start:{line:29,column:4},end:{line:34,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:29},1:{loc:{start:{line:47,column:6},end:{line:47,column:40}},type:"if",locations:[{start:{line:47,column:6},end:{line:47,column:40}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:47},2:{loc:{start:{line:54,column:6},end:{line:54,column:34}},type:"if",locations:[{start:{line:54,column:6},end:{line:54,column:34}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:54},3:{loc:{start:{line:59,column:6},end:{line:61,column:7}},type:"if",locations:[{start:{line:59,column:6},end:{line:61,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:59},4:{loc:{start:{line:65,column:6},end:{line:73,column:7}},type:"if",locations:[{start:{line:65,column:6},end:{line:73,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:65},5:{loc:{start:{line:66,column:8},end:{line:71,column:9}},type:"if",locations:[{start:{line:66,column:8},end:{line:71,column:9}},{start:{line:69,column:15},end:{line:71,column:9}}],line:66}},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},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},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0]},inputSourceMap:{version:3,sources:["BucketExplorer.vue"],names:[],mappings:";AAoFA;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",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-list>\n <span class=\"ma-2\">Buckets (click to browse):</span>\n <v-list-item\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-icon class=\"mr-2\">mdi-bucket</v-icon\n ><v-list-item-title>{{ bucket }}</v-list-item-title>\n </v-list-item>\n </v-list>\n <v-card width=\"100%\">\n <v-card-title>\n {{ bucket }} 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-icon class=\"ml-2\" @click=\"backArrow\"\n >mdi-chevron-left-box-outline</v-icon\n ><span class=\".text-body-1 ma-2\">/{{ path }}</span>\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.download=\"{ item }\">\n <v-icon\n v-if=\"item.icon == 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n >mdi-download-box</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'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n bucket: '',\n buckets: [],\n path: '',\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Download', value: 'download' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n this.bucket = parts[0]\n this.path = parts.slice(1).join('/')\n this.updateFiles()\n }\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.bucket}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.bucket === bucket) return\n this.bucket = bucket\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.bucket === '') {\n // initial bucket click\n this.bucket = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n Api.get(\n `/openc3-api/storage/download/${encodeURIComponent(\n this.path\n )}${filename}?bucket=OPENC3_${this.bucket.toUpperCase()}_BUCKET`\n )\n .then((response) => {\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = response.data.url\n link.setAttribute('download', filename)\n link.click()\n })\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.bucket}`,\n })\n })\n },\n updateFiles() {\n Api.get(\n `/openc3-api/storage/files/OPENC3_${this.bucket.toUpperCase()}_BUCKET/${\n this.path\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 download: true,\n }\n })\n )\n })\n },\n },\n}\n<\/script>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"2a6bc9b998388cb45a26e7b03d47e8c365391e9c"},i=t[l]||(t[l]={});i[n]&&i[n].hash===e||(i[n]=o);var a=i[n];return S=function(){return a},a}S();var E={components:{TopBar:d},data:function(){return S().f[0]++,S().s[0]++,{title:"COSMOS Bucket Explorer",search:"",bucket:"",buckets:[],path:"",files:[],headers:[{text:"Name",value:"name"},{text:"Size",value:"size"},{text:"Modified Date",value:"modified"},{text:"Download",value:"download"}]}},created:function(){var n=this;if(S().f[1]++,S().s[1]++,w.get("/openc3-api/storage/buckets").then((function(e){S().f[2]++,S().s[2]++,n.buckets=e.data})),S().s[3]++,this.$route.params.path){S().b[0][0]++;var e=(S().s[4]++,this.$route.params.path.split("/"));S().s[5]++,this.bucket=e[0],S().s[6]++,this.path=e.slice(1).join("/"),S().s[7]++,this.updateFiles()}else S().b[0][1]++},methods:{update:function(){S().f[3]++,S().s[8]++,this.$router.push({name:"Bucket Explorer",params:{path:"".concat(this.bucket,"/").concat(this.path)}}),S().s[9]++,this.updateFiles()},selectBucket:function(n){if(S().f[4]++,S().s[10]++,this.bucket===n)return S().b[1][0]++,void S().s[11]++;S().b[1][1]++,S().s[12]++,this.bucket=n,S().s[13]++,this.path="",S().s[14]++,this.update()},backArrow:function(){if(S().f[5]++,S().s[15]++,""===this.path)return S().b[2][0]++,void S().s[16]++;S().b[2][1]++;var n=(S().s[17]++,this.path.split("/"));S().s[18]++,this.path=n.slice(0,n.length-2).join("/"),S().s[19]++,n.length>2?(S().b[3][0]++,S().s[20]++,this.path+="/"):S().b[3][1]++,S().s[21]++,this.update()},fileClick:function(n){S().f[6]++,S().s[22]++,"mdi-folder"===n.icon?(S().b[4][0]++,S().s[23]++,""===this.bucket?(S().b[5][0]++,S().s[24]++,this.bucket=n.name):(S().b[5][1]++,S().s[25]++,this.path+="".concat(n.name,"/")),S().s[26]++,this.update()):S().b[4][1]++},downloadFile:function(n){var e=this;S().f[7]++,S().s[27]++,w.get("/openc3-api/storage/download/".concat(encodeURIComponent(this.path)).concat(n,"?bucket=OPENC3_").concat(this.bucket.toUpperCase(),"_BUCKET")).then((function(e){S().f[8]++;var t=(S().s[28]++,document.createElement("a"));S().s[29]++,t.href=e.data.url,S().s[30]++,t.setAttribute("download",n),S().s[31]++,t.click()})).catch((function(t){S().f[9]++,S().s[32]++,e.$notify.caution({title:"Unable to download file ".concat(e.path).concat(n," from bucket ").concat(e.bucket)})}))},updateFiles:function(){var n=this;S().f[10]++,S().s[33]++,w.get("/openc3-api/storage/files/OPENC3_".concat(this.bucket.toUpperCase(),"_BUCKET/").concat(this.path)).then((function(e){S().f[11]++,S().s[34]++,n.files=e.data[0].map((function(n){return S().f[12]++,S().s[35]++,{name:n,icon:"mdi-folder"}})),S().s[36]++,n.files=n.files.concat(e.data[1].map((function(n){return S().f[13]++,S().s[37]++,{name:n.name,icon:"mdi-file",size:n.size,modified:n.modified,download:!0}})))}))}}},B=E,T=(0,u.Z)(B,o,i,!1,null,null,null),O=T.exports},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),c=a()(o());c.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"]=c},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
+ //# sourceMappingURL=141.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js/141.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/../openc3-tool-common/src/components/TopBar.vue?386c","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-list',[_c('span',{staticClass:\"ma-2\"},[_vm._v(\"Buckets (click to browse):\")]),_vm._l((_vm.buckets),function(bucket,index){return _c('v-list-item',{key:index,on:{\"click\":function($event){$event.stopPropagation();return _vm.selectBucket(bucket)}}},[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\"mdi-bucket\")]),_c('v-list-item-title',[_vm._v(_vm._s(bucket))])],1)})],2),_c('v-card',{attrs:{\"width\":\"100%\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.bucket)+\" 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-icon',{staticClass:\"ml-2\",on:{\"click\":_vm.backArrow}},[_vm._v(\"mdi-chevron-left-box-outline\")]),_c('span',{staticClass:\".text-body-1 ma-2\"},[_vm._v(\"/\"+_vm._s(_vm.path))])]},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.download\",fn:function({ item }){return [(item.icon == 'mdi-file')?_c('v-icon',{on:{\"click\":function($event){return _vm.downloadFile(item.name)}}},[_vm._v(\"mdi-download-box\")]):_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)\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 await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)\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-list>\n <span class=\"ma-2\">Buckets (click to browse):</span>\n <v-list-item\n v-for=\"(bucket, index) in buckets\"\n :key=\"index\"\n @click.stop=\"selectBucket(bucket)\"\n >\n <v-icon class=\"mr-2\">mdi-bucket</v-icon\n ><v-list-item-title>{{ bucket }}</v-list-item-title>\n </v-list-item>\n </v-list>\n <v-card width=\"100%\">\n <v-card-title>\n {{ bucket }} 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-icon class=\"ml-2\" @click=\"backArrow\"\n >mdi-chevron-left-box-outline</v-icon\n ><span class=\".text-body-1 ma-2\">/{{ path }}</span>\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.download=\"{ item }\">\n <v-icon\n v-if=\"item.icon == 'mdi-file'\"\n @click=\"downloadFile(item.name)\"\n >mdi-download-box</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'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'COSMOS Bucket Explorer',\n search: '',\n bucket: '',\n buckets: [],\n path: '',\n files: [],\n headers: [\n { text: 'Name', value: 'name' },\n { text: 'Size', value: 'size' },\n { text: 'Modified Date', value: 'modified' },\n { text: 'Download', value: 'download' },\n ],\n }\n },\n created() {\n Api.get('/openc3-api/storage/buckets').then((response) => {\n this.buckets = response.data\n })\n if (this.$route.params.path) {\n let parts = this.$route.params.path.split('/')\n this.bucket = parts[0]\n this.path = parts.slice(1).join('/')\n this.updateFiles()\n }\n },\n methods: {\n update() {\n this.$router.push({\n name: 'Bucket Explorer',\n params: {\n path: `${this.bucket}/${this.path}`,\n },\n })\n this.updateFiles()\n },\n selectBucket(bucket) {\n if (this.bucket === bucket) return\n this.bucket = bucket\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.bucket === '') {\n // initial bucket click\n this.bucket = event.name\n } else {\n this.path += `${event.name}/`\n }\n this.update()\n }\n },\n downloadFile(filename) {\n Api.get(\n `/openc3-api/storage/download/${encodeURIComponent(\n this.path\n )}${filename}?bucket=OPENC3_${this.bucket.toUpperCase()}_BUCKET`\n )\n .then((response) => {\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = response.data.url\n link.setAttribute('download', filename)\n link.click()\n })\n .catch((response) => {\n this.$notify.caution({\n title: `Unable to download file ${this.path}${filename} from bucket ${this.bucket}`,\n })\n })\n },\n updateFiles() {\n Api.get(\n `/openc3-api/storage/files/OPENC3_${this.bucket.toUpperCase()}_BUCKET/${\n this.path\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 download: true,\n }\n })\n )\n })\n },\n },\n}\n</script>\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=c86d2872&\"\nimport script from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\nexport * from \"./BucketExplorer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// 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!./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":["render","_vm","this","_c","_self","attrs","title","staticClass","_v","_l","buckets","bucket","index","key","on","$event","stopPropagation","selectBucket","_s","model","value","search","callback","$$v","expression","headers","files","showFirstLastPage","itemsPerPageOptions","firstIcon","lastIcon","prevIcon","nextIcon","fileClick","scopedSlots","_u","fn","backArrow","path","proxy","item","icon","name","downloadFile","_e","staticRenderFns","menus","menu","i","_g","_b","formatDT","label","domProps","radioGroup","items","option","j","divider","disabled","command","radio","checkbox","checked","$set","style","props","type","default","methods","mounted","document","component","vueInstance","Vue","axiosInstance","axios","baseURL","location","origin","timeout","params","interceptors","response","use","error","status","OpenC3Auth","updateToken","defaultMinValidity","includes","toString","Promise","reject","body","statusText","config","data","message","exception","class","$notify","serious","request","method","url","noAuth","noScope","login","localStorage","openc3Token","window","openc3Scope","acceptOnlyDefaultHeaders","Accept","fullDefaultHeaders","get","put","post","delete","components","TopBar","text","created","Api","update","encodeURIComponent","then","link","catch","updateFiles","size","modified","download","___CSS_LOADER_EXPORT___","push","module","id","content","__esModule","locals","exports","add"],"sourceRoot":""}
@@ -0,0 +1,4 @@
1
+ (self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]=self["webpackChunk_openc3_cosmos_tool_bucketexplorer"]||[]).push([[735],{9644:function(t,e,r){t.exports=r(5644)},353:function(t,e,r){"use strict";var n=r(3044),o=r(6955),i=r(2233),a=r(8030),s=r(7948),u=r(1875),c=r(842),f=r(8560),l=r(1218),h=r(8047),p=r(738);t.exports=function(t){return new Promise((function(e,r){var d,v=t.data,m=t.headers,y=t.responseType;function g(){t.cancelToken&&t.cancelToken.unsubscribe(d),t.signal&&t.signal.removeEventListener("abort",d)}n.isFormData(v)&&n.isStandardBrowserEnv()&&delete m["Content-Type"];var w=new XMLHttpRequest;if(t.auth){var E=t.auth.username||"",b=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";m.Authorization="Basic "+btoa(E+":"+b)}var x=s(t.baseURL,t.url);function O(){if(w){var n="getAllResponseHeaders"in w?u(w.getAllResponseHeaders()):null,i=y&&"text"!==y&&"json"!==y?w.response:w.responseText,a={data:i,status:w.status,statusText:w.statusText,headers:n,config:t,request:w};o((function(t){e(t),g()}),(function(t){r(t),g()}),a),w=null}}if(w.open(t.method.toUpperCase(),a(x,t.params,t.paramsSerializer),!0),w.timeout=t.timeout,"onloadend"in w?w.onloadend=O:w.onreadystatechange=function(){w&&4===w.readyState&&(0!==w.status||w.responseURL&&0===w.responseURL.indexOf("file:"))&&setTimeout(O)},w.onabort=function(){w&&(r(new l("Request aborted",l.ECONNABORTED,t,w)),w=null)},w.onerror=function(){r(new l("Network Error",l.ERR_NETWORK,t,w,w)),w=null},w.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",n=t.transitional||f;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),r(new l(e,n.clarifyTimeoutError?l.ETIMEDOUT:l.ECONNABORTED,t,w)),w=null},n.isStandardBrowserEnv()){var R=(t.withCredentials||c(x))&&t.xsrfCookieName?i.read(t.xsrfCookieName):void 0;R&&(m[t.xsrfHeaderName]=R)}"setRequestHeader"in w&&n.forEach(m,(function(t,e){"undefined"===typeof v&&"content-type"===e.toLowerCase()?delete m[e]:w.setRequestHeader(e,t)})),n.isUndefined(t.withCredentials)||(w.withCredentials=!!t.withCredentials),y&&"json"!==y&&(w.responseType=t.responseType),"function"===typeof t.onDownloadProgress&&w.addEventListener("progress",t.onDownloadProgress),"function"===typeof t.onUploadProgress&&w.upload&&w.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(d=function(t){w&&(r(!t||t&&t.type?new h:t),w.abort(),w=null)},t.cancelToken&&t.cancelToken.subscribe(d),t.signal&&(t.signal.aborted?d():t.signal.addEventListener("abort",d))),v||(v=null);var S=p(x);S&&-1===["http","https","file"].indexOf(S)?r(new l("Unsupported protocol "+S+":",l.ERR_BAD_REQUEST,t)):w.send(v)}))}},5644:function(t,e,r){"use strict";var n=r(3044),o=r(3644),i=r(3234),a=r(2937),s=r(663);function u(t){var e=new i(t),r=o(i.prototype.request,e);return n.extend(r,i.prototype,e),n.extend(r,e),r.create=function(e){return u(a(t,e))},r}var c=u(s);c.Axios=i,c.CanceledError=r(8047),c.CancelToken=r(4089),c.isCancel=r(8041),c.VERSION=r(9241).version,c.toFormData=r(9027),c.AxiosError=r(1218),c.Cancel=c.CanceledError,c.all=function(t){return Promise.all(t)},c.spread=r(783),c.isAxiosError=r(5587),t.exports=c,t.exports["default"]=c},4089:function(t,e,r){"use strict";var n=r(8047);function o(t){if("function"!==typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var r=this;this.promise.then((function(t){if(r._listeners){var e,n=r._listeners.length;for(e=0;e<n;e++)r._listeners[e](t);r._listeners=null}})),this.promise.then=function(t){var e,n=new Promise((function(t){r.subscribe(t),e=t})).then(t);return n.cancel=function(){r.unsubscribe(e)},n},t((function(t){r.reason||(r.reason=new n(t),e(r.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]},o.prototype.unsubscribe=function(t){if(this._listeners){var e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}},o.source=function(){var t,e=new o((function(e){t=e}));return{token:e,cancel:t}},t.exports=o},8047:function(t,e,r){"use strict";var n=r(1218),o=r(3044);function i(t){n.call(this,null==t?"canceled":t,n.ERR_CANCELED),this.name="CanceledError"}o.inherits(i,n,{__CANCEL__:!0}),t.exports=i},8041:function(t){"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},3234:function(t,e,r){"use strict";var n=r(3044),o=r(8030),i=r(946),a=r(6895),s=r(2937),u=r(7948),c=r(3455),f=c.validators;function l(t){this.defaults=t,this.interceptors={request:new i,response:new i}}l.prototype.request=function(t,e){"string"===typeof t?(e=e||{},e.url=t):e=t||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var r=e.transitional;void 0!==r&&c.assertOptions(r,{silentJSONParsing:f.transitional(f.boolean),forcedJSONParsing:f.transitional(f.boolean),clarifyTimeoutError:f.transitional(f.boolean)},!1);var n=[],o=!0;this.interceptors.request.forEach((function(t){"function"===typeof t.runWhen&&!1===t.runWhen(e)||(o=o&&t.synchronous,n.unshift(t.fulfilled,t.rejected))}));var i,u=[];if(this.interceptors.response.forEach((function(t){u.push(t.fulfilled,t.rejected)})),!o){var l=[a,void 0];Array.prototype.unshift.apply(l,n),l=l.concat(u),i=Promise.resolve(e);while(l.length)i=i.then(l.shift(),l.shift());return i}var h=e;while(n.length){var p=n.shift(),d=n.shift();try{h=p(h)}catch(v){d(v);break}}try{i=a(h)}catch(v){return Promise.reject(v)}while(u.length)i=i.then(u.shift(),u.shift());return i},l.prototype.getUri=function(t){t=s(this.defaults,t);var e=u(t.baseURL,t.url);return o(e,t.params,t.paramsSerializer)},n.forEach(["delete","get","head","options"],(function(t){l.prototype[t]=function(e,r){return this.request(s(r||{},{method:t,url:e,data:(r||{}).data}))}})),n.forEach(["post","put","patch"],(function(t){function e(e){return function(r,n,o){return this.request(s(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:r,data:n}))}}l.prototype[t]=e(),l.prototype[t+"Form"]=e(!0)})),t.exports=l},1218:function(t,e,r){"use strict";var n=r(3044);function o(t,e,r,n,o){Error.call(this),this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o)}n.inherits(o,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var i=o.prototype,a={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach((function(t){a[t]={value:t}})),Object.defineProperties(o,a),Object.defineProperty(i,"isAxiosError",{value:!0}),o.from=function(t,e,r,a,s,u){var c=Object.create(i);return n.toFlatObject(t,c,(function(t){return t!==Error.prototype})),o.call(c,t.message,e,r,a,s),c.name=t.name,u&&Object.assign(c,u),c},t.exports=o},946:function(t,e,r){"use strict";var n=r(3044);function o(){this.handlers=[]}o.prototype.use=function(t,e,r){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.forEach=function(t){n.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},7948:function(t,e,r){"use strict";var n=r(9192),o=r(8762);t.exports=function(t,e){return t&&!n(e)?o(t,e):e}},6895:function(t,e,r){"use strict";var n=r(3044),o=r(8556),i=r(8041),a=r(663),s=r(8047);function u(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s}t.exports=function(t){u(t),t.headers=t.headers||{},t.data=o.call(t,t.data,t.headers,t.transformRequest),t.headers=n.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]}));var e=t.adapter||a.adapter;return e(t).then((function(e){return u(t),e.data=o.call(t,e.data,e.headers,t.transformResponse),e}),(function(e){return i(e)||(u(t),e&&e.response&&(e.response.data=o.call(t,e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},2937:function(t,e,r){"use strict";var n=r(3044);t.exports=function(t,e){e=e||{};var r={};function o(t,e){return n.isPlainObject(t)&&n.isPlainObject(e)?n.merge(t,e):n.isPlainObject(e)?n.merge({},e):n.isArray(e)?e.slice():e}function i(r){return n.isUndefined(e[r])?n.isUndefined(t[r])?void 0:o(void 0,t[r]):o(t[r],e[r])}function a(t){if(!n.isUndefined(e[t]))return o(void 0,e[t])}function s(r){return n.isUndefined(e[r])?n.isUndefined(t[r])?void 0:o(void 0,t[r]):o(void 0,e[r])}function u(r){return r in e?o(t[r],e[r]):r in t?o(void 0,t[r]):void 0}var c={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:u};return n.forEach(Object.keys(t).concat(Object.keys(e)),(function(t){var e=c[t]||i,o=e(t);n.isUndefined(o)&&e!==u||(r[t]=o)})),r}},6955:function(t,e,r){"use strict";var n=r(1218);t.exports=function(t,e,r){var o=r.config.validateStatus;r.status&&o&&!o(r.status)?e(new n("Request failed with status code "+r.status,[n.ERR_BAD_REQUEST,n.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):t(r)}},8556:function(t,e,r){"use strict";var n=r(3044),o=r(663);t.exports=function(t,e,r){var i=this||o;return n.forEach(r,(function(r){t=r.call(i,t,e)})),t}},663:function(t,e,r){"use strict";var n=r(3044),o=r(8868),i=r(1218),a=r(8560),s=r(9027),u={"Content-Type":"application/x-www-form-urlencoded"};function c(t,e){!n.isUndefined(t)&&n.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}function f(){var t;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof process&&"[object process]"===Object.prototype.toString.call(process))&&(t=r(353)),t}function l(t,e,r){if(n.isString(t))try{return(e||JSON.parse)(t),n.trim(t)}catch(o){if("SyntaxError"!==o.name)throw o}return(r||JSON.stringify)(t)}var h={transitional:a,adapter:f(),transformRequest:[function(t,e){if(o(e,"Accept"),o(e,"Content-Type"),n.isFormData(t)||n.isArrayBuffer(t)||n.isBuffer(t)||n.isStream(t)||n.isFile(t)||n.isBlob(t))return t;if(n.isArrayBufferView(t))return t.buffer;if(n.isURLSearchParams(t))return c(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString();var r,i=n.isObject(t),a=e&&e["Content-Type"];if((r=n.isFileList(t))||i&&"multipart/form-data"===a){var u=this.env&&this.env.FormData;return s(r?{"files[]":t}:t,u&&new u)}return i||"application/json"===a?(c(e,"application/json"),l(t)):t}],transformResponse:[function(t){var e=this.transitional||h.transitional,r=e&&e.silentJSONParsing,o=e&&e.forcedJSONParsing,a=!r&&"json"===this.responseType;if(a||o&&n.isString(t)&&t.length)try{return JSON.parse(t)}catch(s){if(a){if("SyntaxError"===s.name)throw i.from(s,i.ERR_BAD_RESPONSE,this,null,this.response);throw s}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:r(4684)},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],(function(t){h.headers[t]={}})),n.forEach(["post","put","patch"],(function(t){h.headers[t]=n.merge(u)})),t.exports=h},8560:function(t){"use strict";t.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},9241:function(t){t.exports={version:"0.27.2"}},3644:function(t){"use strict";t.exports=function(t,e){return function(){for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];return t.apply(e,r)}}},8030:function(t,e,r){"use strict";var n=r(3044);function o(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,r){if(!e)return t;var i;if(r)i=r(e);else if(n.isURLSearchParams(e))i=e.toString();else{var a=[];n.forEach(e,(function(t,e){null!==t&&"undefined"!==typeof t&&(n.isArray(t)?e+="[]":t=[t],n.forEach(t,(function(t){n.isDate(t)?t=t.toISOString():n.isObject(t)&&(t=JSON.stringify(t)),a.push(o(e)+"="+o(t))})))})),i=a.join("&")}if(i){var s=t.indexOf("#");-1!==s&&(t=t.slice(0,s)),t+=(-1===t.indexOf("?")?"?":"&")+i}return t}},8762:function(t){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},2233:function(t,e,r){"use strict";var n=r(3044);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,r,o,i,a){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(i)&&s.push("domain="+i),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},9192:function(t){"use strict";t.exports=function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}},5587:function(t,e,r){"use strict";var n=r(3044);t.exports=function(t){return n.isObject(t)&&!0===t.isAxiosError}},842:function(t,e,r){"use strict";var n=r(3044);t.exports=n.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function o(t){var n=t;return e&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return t=o(window.location.href),function(e){var r=n.isString(e)?o(e):e;return r.protocol===t.protocol&&r.host===t.host}}():function(){return function(){return!0}}()},8868:function(t,e,r){"use strict";var n=r(3044);t.exports=function(t,e){n.forEach(t,(function(r,n){n!==e&&n.toUpperCase()===e.toUpperCase()&&(t[e]=r,delete t[n])}))}},4684:function(t){t.exports=null},1875:function(t,e,r){"use strict";var n=r(3044),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];t.exports=function(t){var e,r,i,a={};return t?(n.forEach(t.split("\n"),(function(t){if(i=t.indexOf(":"),e=n.trim(t.substr(0,i)).toLowerCase(),r=n.trim(t.substr(i+1)),e){if(a[e]&&o.indexOf(e)>=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([r]):a[e]?a[e]+", "+r:r}})),a):a}},738:function(t){"use strict";t.exports=function(t){var e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}},783:function(t){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},9027:function(t,e,r){"use strict";var n=r(3044);function o(t,e){e=e||new FormData;var r=[];function o(t){return null===t?"":n.isDate(t)?t.toISOString():n.isArrayBuffer(t)||n.isTypedArray(t)?"function"===typeof Blob?new Blob([t]):Buffer.from(t):t}function i(t,a){if(n.isPlainObject(t)||n.isArray(t)){if(-1!==r.indexOf(t))throw Error("Circular reference detected in "+a);r.push(t),n.forEach(t,(function(t,r){if(!n.isUndefined(t)){var s,u=a?a+"."+r:r;if(t&&!a&&"object"===typeof t)if(n.endsWith(r,"{}"))t=JSON.stringify(t);else if(n.endsWith(r,"[]")&&(s=n.toArray(t)))return void s.forEach((function(t){!n.isUndefined(t)&&e.append(u,o(t))}));i(t,u)}})),r.pop()}else e.append(a,o(t))}return i(t),e}t.exports=o},3455:function(t,e,r){"use strict";var n=r(9241).version,o=r(1218),i={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){i[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}}));var a={};function s(t,e,r){if("object"!==typeof t)throw new o("options must be an object",o.ERR_BAD_OPTION_VALUE);var n=Object.keys(t),i=n.length;while(i-- >0){var a=n[i],s=e[a];if(s){var u=t[a],c=void 0===u||s(u,a,t);if(!0!==c)throw new o("option "+a+" must be "+c,o.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new o("Unknown option "+a,o.ERR_BAD_OPTION)}}i.transitional=function(t,e,r){function i(t,e){return"[Axios v"+n+"] Transitional option '"+t+"'"+e+(r?". "+r:"")}return function(r,n,s){if(!1===t)throw new o(i(n," has been removed"+(e?" in "+e:"")),o.ERR_DEPRECATED);return e&&!a[n]&&(a[n]=!0,console.warn(i(n," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(r,n,s)}},t.exports={assertOptions:s,validators:i}},3044:function(t,e,r){"use strict";var n=r(3644),o=Object.prototype.toString,i=function(t){return function(e){var r=o.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())}}(Object.create(null));function a(t){return t=t.toLowerCase(),function(e){return i(e)===t}}function s(t){return Array.isArray(t)}function u(t){return"undefined"===typeof t}function c(t){return null!==t&&!u(t)&&null!==t.constructor&&!u(t.constructor)&&"function"===typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}var f=a("ArrayBuffer");function l(t){var e;return e="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&f(t.buffer),e}function h(t){return"string"===typeof t}function p(t){return"number"===typeof t}function d(t){return null!==t&&"object"===typeof t}function v(t){if("object"!==i(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}var m=a("Date"),y=a("File"),g=a("Blob"),w=a("FileList");function E(t){return"[object Function]"===o.call(t)}function b(t){return d(t)&&E(t.pipe)}function x(t){var e="[object FormData]";return t&&("function"===typeof FormData&&t instanceof FormData||o.call(t)===e||E(t.toString)&&t.toString()===e)}var O=a("URLSearchParams");function R(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function S(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)}function _(t,e){if(null!==t&&"undefined"!==typeof t)if("object"!==typeof t&&(t=[t]),s(t))for(var r=0,n=t.length;r<n;r++)e.call(null,t[r],r,t);else for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.call(null,t[o],o,t)}function A(){var t={};function e(e,r){v(t[r])&&v(e)?t[r]=A(t[r],e):v(e)?t[r]=A({},e):s(e)?t[r]=e.slice():t[r]=e}for(var r=0,n=arguments.length;r<n;r++)_(arguments[r],e);return t}function j(t,e,r){return _(e,(function(e,o){t[o]=r&&"function"===typeof e?n(e,r):e})),t}function N(t){return 65279===t.charCodeAt(0)&&(t=t.slice(1)),t}function T(t,e,r,n){t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,r&&Object.assign(t.prototype,r)}function L(t,e,r){var n,o,i,a={};e=e||{};do{n=Object.getOwnPropertyNames(t),o=n.length;while(o-- >0)i=n[o],a[i]||(e[i]=t[i],a[i]=!0);t=Object.getPrototypeOf(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e}function C(t,e,r){t=String(t),(void 0===r||r>t.length)&&(r=t.length),r-=e.length;var n=t.indexOf(e,r);return-1!==n&&n===r}function P(t){if(!t)return null;var e=t.length;if(u(e))return null;var r=new Array(e);while(e-- >0)r[e]=t[e];return r}var U=function(t){return function(e){return t&&e instanceof t}}("undefined"!==typeof Uint8Array&&Object.getPrototypeOf(Uint8Array));t.exports={isArray:s,isArrayBuffer:f,isBuffer:c,isFormData:x,isArrayBufferView:l,isString:h,isNumber:p,isObject:d,isPlainObject:v,isUndefined:u,isDate:m,isFile:y,isBlob:g,isFunction:E,isStream:b,isURLSearchParams:O,isStandardBrowserEnv:S,forEach:_,merge:A,extend:j,trim:R,stripBOM:N,inherits:T,toFlatObject:L,kindOf:i,kindOfTest:a,endsWith:C,toArray:P,isTypedArray:U,isFileList:w}},2101:function(t){t.exports=Object.is||function(t,e){return t===e?0!==t||1/t===1/e:t!=t&&e!=e}},7525:function(t,e,r){var n=r(9859),o=r(4555);o(n.JSON,"JSON",!0)},8275:function(t,e,r){var n=r(4555);n(Math,"Math",!0)},1639:function(t,e,r){"use strict";var n=r(3103),o=r(266),i=r(5968),a=r(8885),s=r(6733),u=r(9650),c=r(8311),f=r(3326),l=r(5300),h=r(3349),p=r(17),d=r(95),v=r(4231),m=d("replace"),y=TypeError,g=i("".indexOf),w=i("".replace),E=i("".slice),b=Math.max,x=function(t,e,r){return r>t.length?-1:""===e?r:g(t,e,r)};n({target:"String",proto:!0},{replaceAll:function(t,e){var r,n,i,d,O,R,S,_,A,j=a(this),N=0,T=0,L="";if(!u(t)){if(r=c(t),r&&(n=f(a(h(t))),!~g(n,"g")))throw y("`.replaceAll` does not allow non-global regexes");if(i=l(t,m),i)return o(i,t,j,e);if(v&&r)return w(f(j),t,e)}d=f(j),O=f(t),R=s(e),R||(e=f(e)),S=O.length,_=b(1,S),N=x(d,O,0);while(-1!==N)A=R?f(e(O,N,d)):p(O,d,N,[],void 0,e),L+=E(d,T,N)+A,T=N+S,N=x(d,O,N+_);return T<d.length&&(L+=E(d,T)),L}})},4908:function(t,e,r){"use strict";var n=r(266),o=r(4954),i=r(1176),a=r(9650),s=r(8885),u=r(2101),c=r(3326),f=r(5300),l=r(8115);o("search",(function(t,e,r){return[function(e){var r=s(this),o=a(e)?void 0:f(e,t);return o?n(o,e,r):new RegExp(e)[t](c(r))},function(t){var n=i(this),o=c(t),a=r(e,n,o);if(a.done)return a.value;var s=n.lastIndex;u(s,0)||(n.lastIndex=0);var f=l(n,o);return u(n.lastIndex,s)||(n.lastIndex=s),null===f?-1:f.index}]}))},6882:function(t,e,r){var n=r(3524);n("asyncIterator")},8859:function(t,e,r){var n=r(1333),o=r(3524),i=r(4555);o("toStringTag"),i(n("Symbol"),"Symbol")},9502:function(t,e,r){"use strict";r.d(e,{Z:function(){return o}});r(8188);function n(t,e,r,n,o,i,a){try{var s=t[i](a),u=s.value}catch(c){return void r(c)}s.done?e(u):Promise.resolve(u).then(n,o)}function o(t){return function(){var e=this,r=arguments;return new Promise((function(o,i){var a=t.apply(e,r);function s(t){n(a,o,i,s,u,"next",t)}function u(t){n(a,o,i,s,u,"throw",t)}s(void 0)}))}}},5789:function(t,e,r){"use strict";r.d(e,{Z:function(){return o}});r(5094),r(4115),r(634),r(8188),r(796),r(8673),r(6886),r(6882),r(8859),r(7525),r(8275),r(6928),r(1372),r(6728),r(1939),r(2506),r(2501);var n=r(6259);function o(){
2
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
3
+ o=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,i=Object.defineProperty||function(t,e,r){t[e]=r.value},a="function"==typeof Symbol?Symbol:{},s=a.iterator||"@@iterator",u=a.asyncIterator||"@@asyncIterator",c=a.toStringTag||"@@toStringTag";function f(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{f({},"")}catch(T){f=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var o=e&&e.prototype instanceof d?e:d,a=Object.create(o.prototype),s=new A(n||[]);return i(a,"_invoke",{value:O(t,r,s)}),a}function h(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(T){return{type:"throw",arg:T}}}t.wrap=l;var p={};function d(){}function v(){}function m(){}var y={};f(y,s,(function(){return this}));var g=Object.getPrototypeOf,w=g&&g(g(j([])));w&&w!==e&&r.call(w,s)&&(y=w);var E=m.prototype=d.prototype=Object.create(y);function b(t){["next","throw","return"].forEach((function(e){f(t,e,(function(t){return this._invoke(e,t)}))}))}function x(t,e){function o(i,a,s,u){var c=h(t[i],t,a);if("throw"!==c.type){var f=c.arg,l=f.value;return l&&"object"==(0,n.Z)(l)&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){o("next",t,s,u)}),(function(t){o("throw",t,s,u)})):e.resolve(l).then((function(t){f.value=t,s(f)}),(function(t){return o("throw",t,s,u)}))}u(c.arg)}var a;i(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return a=a?a.then(n,n):n()}})}function O(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return N()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var s=R(a,r);if(s){if(s===p)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=h(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===p)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function R(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator["return"]&&(e.method="return",e.arg=void 0,R(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var o=h(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,p;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,p):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,p)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function j(t){if(t){var e=t[s];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:N}}function N(){return{value:void 0,done:!0}}return v.prototype=m,i(E,"constructor",{value:m,configurable:!0}),i(m,"constructor",{value:v,configurable:!0}),v.displayName=f(m,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,m):(t.__proto__=m,f(t,c,"GeneratorFunction")),t.prototype=Object.create(E),t},t.awrap=function(t){return{__await:t}},b(x.prototype),f(x.prototype,u,(function(){return this})),t.AsyncIterator=x,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new x(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(E),f(E,c,"Generator"),f(E,s,(function(){return this})),f(E,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=j,A.prototype={constructor:A,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(_),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,p):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),p},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;_(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},t}}}]);
4
+ //# sourceMappingURL=735.js.map