openc3-tool-tablemanager 5.0.9 → 5.0.10

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2 +1,2 @@
1
- (self["webpackChunk_openc3_tool_tablemanager"]=self["webpackChunk_openc3_tool_tablemanager"]||[]).push([[836],{6836:function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return dn}});t(7950),t(4908),t(8178);function l(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",e="66c1a0863beea46849094081e151f477a9803e35",t=new Function("return this")(),i="__coverage__",o={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",statementMap:{0:{start:{line:1,column:13},end:{line:6,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:5,column:2310}},4:{start:{line:1,column:258},end:{line:3,column:58}},5:{start:{line:2,column:12},end:{line:2,column:41}},6:{start:{line:3,column:125},end:{line:3,column:150}},7:{start:{line:3,column:521},end:{line:3,column:538}},8:{start:{line:3,column:831},end:{line:3,column:851}},9:{start:{line:3,column:1148},end:{line:3,column:1174}},10:{start:{line:3,column:1562},end:{line:3,column:1593}},11:{start:{line:3,column:1859},end:{line:3,column:1894}},12:{start:{line:3,column:2150},end:{line:3,column:2181}},13:{start:{line:3,column:2458},end:{line:3,column:2477}},14:{start:{line:3,column:2756},end:{line:3,column:2777}},15:{start:{line:3,column:3023},end:{line:3,column:3304}},16:{start:{line:3,column:3241},end:{line:3,column:3265}},17:{start:{line:3,column:3613},end:{line:3,column:3627}},18:{start:{line:3,column:3720},end:{line:3,column:3734}},19:{start:{line:3,column:3800},end:{line:3,column:3867}},20:{start:{line:3,column:3943},end:{line:3,column:3957}},21:{start:{line:3,column:4023},end:{line:5,column:1417}},22:{start:{line:5,column:139},end:{line:5,column:269}},23:{start:{line:5,column:231},end:{line:5,column:264}},24:{start:{line:5,column:324},end:{line:5,column:1381}},25:{start:{line:5,column:634},end:{line:5,column:671}},26:{start:{line:5,column:938},end:{line:5,column:979}},27:{start:{line:5,column:1236},end:{line:5,column:1273}},28:{start:{line:5,column:1551},end:{line:5,column:1577}},29:{start:{line:5,column:1604},end:{line:5,column:1631}},30:{start:{line:5,column:1687},end:{line:5,column:1703}},31:{start:{line:5,column:1930},end:{line:5,column:1963}},32:{start:{line:5,column:1990},end:{line:5,column:2017}},33:{start:{line:5,column:2075},end:{line:5,column:2093}},34:{start:{line:5,column:2262},end:{line:5,column:2279}},35:{start:{line:7,column:22},end:{line:7,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:6,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:238},end:{line:1,column:239}},loc:{start:{line:1,column:257},end:{line:3,column:59}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:477},end:{line:1,column:478}},loc:{start:{line:1,column:483},end:{line:3,column:11}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:3,column:109},end:{line:3,column:110}},loc:{start:{line:3,column:124},end:{line:3,column:151}},line:3},4:{name:"(anonymous_4)",decl:{start:{line:3,column:505},end:{line:3,column:506}},loc:{start:{line:3,column:520},end:{line:3,column:539}},line:3},5:{name:"(anonymous_5)",decl:{start:{line:3,column:815},end:{line:3,column:816}},loc:{start:{line:3,column:830},end:{line:3,column:852}},line:3},6:{name:"(anonymous_6)",decl:{start:{line:3,column:1132},end:{line:3,column:1133}},loc:{start:{line:3,column:1147},end:{line:3,column:1175}},line:3},7:{name:"(anonymous_7)",decl:{start:{line:3,column:1545},end:{line:3,column:1546}},loc:{start:{line:3,column:1561},end:{line:3,column:1594}},line:3},8:{name:"(anonymous_8)",decl:{start:{line:3,column:1842},end:{line:3,column:1843}},loc:{start:{line:3,column:1858},end:{line:3,column:1895}},line:3},9:{name:"(anonymous_9)",decl:{start:{line:3,column:2133},end:{line:3,column:2134}},loc:{start:{line:3,column:2149},end:{line:3,column:2182}},line:3},10:{name:"(anonymous_10)",decl:{start:{line:3,column:2441},end:{line:3,column:2442}},loc:{start:{line:3,column:2457},end:{line:3,column:2478}},line:3},11:{name:"(anonymous_11)",decl:{start:{line:3,column:2739},end:{line:3,column:2740}},loc:{start:{line:3,column:2755},end:{line:3,column:2778}},line:3},12:{name:"(anonymous_12)",decl:{start:{line:3,column:2999},end:{line:3,column:3e3}},loc:{start:{line:3,column:3022},end:{line:3,column:3305}},line:3},13:{name:"(anonymous_13)",decl:{start:{line:3,column:3225},end:{line:3,column:3226}},loc:{start:{line:3,column:3240},end:{line:3,column:3266}},line:3},14:{name:"(anonymous_14)",decl:{start:{line:3,column:3597},end:{line:3,column:3598}},loc:{start:{line:3,column:3612},end:{line:3,column:3628}},line:3},15:{name:"(anonymous_15)",decl:{start:{line:3,column:3704},end:{line:3,column:3705}},loc:{start:{line:3,column:3719},end:{line:3,column:3735}},line:3},16:{name:"(anonymous_16)",decl:{start:{line:3,column:3778},end:{line:3,column:3779}},loc:{start:{line:3,column:3799},end:{line:3,column:3868}},line:3},17:{name:"(anonymous_17)",decl:{start:{line:3,column:3927},end:{line:3,column:3928}},loc:{start:{line:3,column:3942},end:{line:3,column:3958}},line:3},18:{name:"(anonymous_18)",decl:{start:{line:3,column:4001},end:{line:3,column:4002}},loc:{start:{line:3,column:4022},end:{line:5,column:1418}},line:3},19:{name:"(anonymous_19)",decl:{start:{line:5,column:120},end:{line:5,column:121}},loc:{start:{line:5,column:138},end:{line:5,column:270}},line:5},20:{name:"(anonymous_20)",decl:{start:{line:5,column:214},end:{line:5,column:215}},loc:{start:{line:5,column:230},end:{line:5,column:265}},line:5},21:{name:"(anonymous_21)",decl:{start:{line:5,column:313},end:{line:5,column:314}},loc:{start:{line:5,column:323},end:{line:5,column:1382}},line:5},22:{name:"(anonymous_22)",decl:{start:{line:5,column:617},end:{line:5,column:618}},loc:{start:{line:5,column:633},end:{line:5,column:672}},line:5},23:{name:"(anonymous_23)",decl:{start:{line:5,column:921},end:{line:5,column:922}},loc:{start:{line:5,column:937},end:{line:5,column:980}},line:5},24:{name:"(anonymous_24)",decl:{start:{line:5,column:1219},end:{line:5,column:1220}},loc:{start:{line:5,column:1235},end:{line:5,column:1274}},line:5},25:{name:"(anonymous_25)",decl:{start:{line:5,column:1534},end:{line:5,column:1535}},loc:{start:{line:5,column:1550},end:{line:5,column:1578}},line:5},26:{name:"(anonymous_26)",decl:{start:{line:5,column:1587},end:{line:5,column:1588}},loc:{start:{line:5,column:1603},end:{line:5,column:1632}},line:5},27:{name:"(anonymous_27)",decl:{start:{line:5,column:1671},end:{line:5,column:1672}},loc:{start:{line:5,column:1686},end:{line:5,column:1704}},line:5},28:{name:"(anonymous_28)",decl:{start:{line:5,column:1913},end:{line:5,column:1914}},loc:{start:{line:5,column:1929},end:{line:5,column:1964}},line:5},29:{name:"(anonymous_29)",decl:{start:{line:5,column:1973},end:{line:5,column:1974}},loc:{start:{line:5,column:1989},end:{line:5,column:2018}},line:5},30:{name:"(anonymous_30)",decl:{start:{line:5,column:2059},end:{line:5,column:2060}},loc:{start:{line:5,column:2074},end:{line:5,column:2094}},line:5},31:{name:"(anonymous_31)",decl:{start:{line:5,column:2246},end:{line:5,column:2247}},loc:{start:{line:5,column:2261},end:{line:5,column:2280}},line:5}},branchMap:{0:{loc:{start:{line:5,column:272},end:{line:5,column:1399}},type:"cond-expr",locations:[{start:{line:5,column:296},end:{line:5,column:1394}},{start:{line:5,column:1395},end:{line:5,column:1399}}],line:5},1:{loc:{start:{line:5,column:1427},end:{line:5,column:1738}},type:"cond-expr",locations:[{start:{line:5,column:1442},end:{line:5,column:1729}},{start:{line:5,column:1730},end:{line:5,column:1738}}],line:5},2:{loc:{start:{line:5,column:1739},end:{line:5,column:2130}},type:"cond-expr",locations:[{start:{line:5,column:1756},end:{line:5,column:2121}},{start:{line:5,column:2122},end:{line:5,column:2130}}],line:5}},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},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,21:0,22:0,23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0},b:{0:[0,0],1:[0,0],2:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"66c1a0863beea46849094081e151f477a9803e35"},a=t[i]||(t[i]={});a[n]&&a[n].hash===e||(a[n]=o);var c=a[n];return l=function(){return c},c}l(),l().s[0]++;var i=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:{menus:n.menus,title:n.title}}),e("v-snackbar",{attrs:{top:"",timeout:-1,color:"orange"},scopedSlots:n._u([{key:"action",fn:function(t){var i=t.attrs;return l().f[1]++,l().s[4]++,[e("v-btn",n._b({attrs:{text:"",color:"danger","data-test":"unlock-button"},on:{click:n.confirmLocalUnlock}},"v-btn",i,!1),[n._v(" Unlock ")]),e("v-btn",n._b({attrs:{text:""},on:{click:function(){l().f[2]++,l().s[5]++,n.showReadOnlyToast=!1}}},"v-btn",i,!1),[n._v(" dismiss ")])]}}]),model:{value:n.showReadOnlyToast,callback:function(e){l().f[3]++,l().s[6]++,n.showReadOnlyToast=e},expression:"showReadOnlyToast"}},[e("v-icon",[n._v(" mdi-pencil-off ")]),n._v(" "+n._s(n.lockedBy)+" is editing this script. Editor is in read-only mode ")],1),e("v-file-input",{ref:"fileInput",staticStyle:{position:"fixed",top:"-100%"},attrs:{"show-size":"",accept:".bin","data-test":"file-input"},model:{value:n.fileInput,callback:function(e){l().f[4]++,l().s[7]++,n.fileInput=e},expression:"fileInput"}}),e("v-row",{attrs:{dense:""}},[e("v-col",{attrs:{cols:"6"}},[e("v-text-field",{attrs:{outlined:"",dense:"",readonly:"","hide-details":"",label:"Filename",id:"filename","data-test":"filename"},model:{value:n.fullFilename,callback:function(e){l().f[5]++,l().s[8]++,n.fullFilename=e},expression:"fullFilename"}})],1),e("v-col",{attrs:{cols:"6"}},[e("v-text-field",{attrs:{outlined:"",dense:"",readonly:"","hide-details":"",label:"Definition",id:"definition-filename","data-test":"definition-filename"},model:{value:n.definitionFilename,callback:function(e){l().f[6]++,l().s[9]++,n.definitionFilename=e},expression:"definitionFilename"}})],1)],1),e("v-row",{staticClass:"mb-1",attrs:{dense:""}},[e("v-col",{staticClass:"mr-auto",attrs:{cols:"auto"}},[e("span",{staticClass:"text-body-1 ma-2"},[n._v("File Download:")]),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-binary"},on:{click:function(e){return l().f[7]++,l().s[10]++,n.downloadBinary(null)}}},[n._v(" Binary "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-code ")])],1),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-definition"},on:{click:function(e){return l().f[8]++,l().s[11]++,n.downloadDefinition(null)}}},[n._v(" Definition "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document-edit ")])],1),e("v-btn",{attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-report"},on:{click:function(e){return l().f[9]++,l().s[12]++,n.downloadReport(null)}}},[n._v(" Report "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-btn",{attrs:{dense:"",color:"primary",disabled:!n.uploadScript,"data-test":"upload-file"},on:{click:function(e){return l().f[10]++,l().s[13]++,n.upload()}}},[n._v(" Upload "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-upload ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-btn",{attrs:{dense:"",color:"primary",disabled:!n.downloadScript,"data-test":"download-file"},on:{click:function(e){return l().f[11]++,l().s[14]++,n.download()}}},[n._v(" Download "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-download ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-tooltip",{attrs:{bottom:""},scopedSlots:n._u([{key:"activator",fn:function(t){var i=t.on,o=t.attrs;return l().f[12]++,l().s[15]++,[e("span",n._g(n._b({},"span",o,!1),i),[e("v-checkbox",{staticClass:"shrink mt-0",attrs:{label:"B/G","data-test":"upload-background"},model:{value:n.scriptBackground,callback:function(e){l().f[13]++,l().s[16]++,n.scriptBackground=e},expression:"scriptBackground"}})],1)]}}])},[e("span",[n._v("Run upload download scripts in the background")])])],1)],1),e("v-card",[e("v-card-title",[n._v(" Items "),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[14]++,l().s[17]++,n.search=e},expression:"search"}})],1),e("v-tabs",{model:{value:n.curTab,callback:function(e){l().f[15]++,l().s[18]++,n.curTab=e},expression:"curTab"}},n._l(n.tables,(function(t,i){return l().f[16]++,l().s[19]++,e("v-tab",{key:i},[n._v(" "+n._s(t.name)+" ")])})),1),e("v-tabs-items",{model:{value:n.curTab,callback:function(e){l().f[17]++,l().s[20]++,n.curTab=e},expression:"curTab"}},n._l(n.tables,(function(t,i){return l().f[18]++,l().s[21]++,e("v-tab-item",{key:"".concat(n.filename).concat(i)},[e("v-data-table",{attrs:{headers:t.headers,items:t.rows,search:n.search,"items-per-page":20,"footer-props":{itemsPerPageOptions:[10,20,50,100,-1]},"calculate-widths":"","multi-sort":"",dense:"","data-test":t.name},scopedSlots:n._u([{key:"item",fn:function(t){var i=t.item;return l().f[19]++,l().s[22]++,[e("table-row",{key:i[0].name,attrs:{items:i},on:{change:function(e){return l().f[20]++,l().s[23]++,n.onChange(i,e)}}})]}},n.tables.length>1?(l().b[0][0]++,{key:"footer",fn:function(){return l().f[21]++,l().s[24]++,[e("div",{staticClass:"ma-3",staticStyle:{position:"absolute"}},[e("span",{staticClass:"text-body-1 mr-3"},[n._v("Table Download:")]),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-binary"},on:{click:function(e){return l().f[22]++,l().s[25]++,n.downloadBinary(t.name)}}},[n._v(" Binary "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-code ")])],1),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-definition"},on:{click:function(e){return l().f[23]++,l().s[26]++,n.downloadDefinition(t.name)}}},[n._v(" Definition "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document-edit ")])],1),e("v-btn",{attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-report"},on:{click:function(e){return l().f[24]++,l().s[27]++,n.downloadReport(t.name)}}},[n._v(" Report "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document ")])],1)],1)]},proxy:!0}):(l().b[0][1]++,null)],null,!0)})],1)})),1)],1),n.fileOpen?(l().b[1][0]++,e("file-open-save-dialog",{attrs:{type:"open","api-url":"/openc3-api/tables"},on:{file:function(e){return l().f[25]++,l().s[28]++,n.setFile(e)},error:function(e){return l().f[26]++,l().s[29]++,n.setError(e)}},model:{value:n.fileOpen,callback:function(e){l().f[27]++,l().s[30]++,n.fileOpen=e},expression:"fileOpen"}})):(l().b[1][1]++,n._e()),n.showSaveAs?(l().b[2][0]++,e("file-open-save-dialog",{attrs:{type:"save","require-target-parent-dir":"","api-url":"/openc3-api/tables","input-filename":n.filename},on:{filename:function(e){return l().f[28]++,l().s[31]++,n.saveAsFilename(e)},error:function(e){return l().f[29]++,l().s[32]++,n.setError(e)}},model:{value:n.showSaveAs,callback:function(e){l().f[30]++,l().s[33]++,n.showSaveAs=e},expression:"showSaveAs"}})):(l().b[2][1]++,n._e()),e("simple-text-dialog",{attrs:{title:n.errorTitle,text:n.errorText},model:{value:n.showError,callback:function(e){l().f[31]++,l().s[34]++,n.showError=e},expression:"showError"}})],1)},o=(l().s[35]++,[]),a=t(4948),c=(t(5794),t(2501),t(8319),t(9529),t(1235),t(6710),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(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(9224),t(6297),t(8882),t(8673),t(6886),t(4121),t(523),t(5940),t(3450),t(21)),s=t(6706),r=(t(8233),t(9644)),u=t.n(r),m=t(4091),d=new m["default"],A=u().create({baseURL:location.origin,timeout:6e4,params:{}});A.interceptors.response.use((function(n){return n}),(function(n){if(n.response){var e,t,l,i,o,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!==(i=n.response)&&void 0!==i&&null!==(o=i.data)&&void 0!==o&&o.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 A;m+="".concat(null===(A=n.response)||void 0===A?void 0:A.data)}throw d.$notify.serious({title:"Network error",body:m}),n}throw n}));var f=A,p=function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t){var l,i,o,a,s,r,u,m,d,A=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(l=A.length>2&&void 0!==A[2]?A[2]:{},i=l.data,o=l.params,a=void 0===o?{}:o,s=l.headers,r=l.noAuth,u=void 0!==r&&r,m=l.noScope,d=void 0!==m&&m,u){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:s["Authorization"]=localStorage.openc3Token;case 11:return d||a["scope"]||(a["scope"]=window.openc3Scope),n.abrupt("return",f({method:e,url:t,data:i,params:a,headers:s}));case 13:case"end":return n.stop()}}),n,null,[[2,7]])})));return function(e,t){return n.apply(this,arguments)}}(),h={Accept:"application/json"},v=(0,a.Z)((0,a.Z)({},h),{},{"Content-Type":"application/json"}),C={get:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,i=void 0===l?h:l,o=e.noScope,a=e.noAuth;return p("get",n,{params:t,headers:i,noScope:o,noAuth:a})},put:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,i=e.headers,o=void 0===i?v:i,a=e.noScope,c=e.noAuth;return p("put",n,{data:t,params:l,headers:o,noScope:a,noAuth:c})},post:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,i=e.headers,o=void 0===i?v:i,a=e.noScope,c=e.noAuth;return p("post",n,{data:t,params:l,headers:o,noScope:a,noAuth:c})},delete:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,i=void 0===l?h:l,o=e.noScope,a=e.noAuth;return p("delete",n,{params:t,headers:i,noScope:o,noAuth:a})}},b=t(6632),_=t(4567),g=t(6812),y=t(6274),k=(t(1372),t(1245),t(7233),t(5734),function(){function n(){(0,_.Z)(this,n),(0,y.Z)(this,"id",1)}return(0,g.Z)(n,[{key:"exec",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t){var l,i,o,s,r=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return l=r.length>2&&void 0!==r[2]?r[2]:{},i=r.length>3&&void 0!==r[3]?r[3]:{},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:return this.id=this.id+1,n.prev=11,l["scope"]=window.openc3Scope,n.next=15,f.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:t,id:this.id,keyword_params:l},{headers:(0,a.Z)({Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc"},i)});case 15:return o=n.sent,n.abrupt("return",o.data.result);case 19:throw n.prev=19,n.t1=n["catch"](11),s=new Error,n.t1.response?(s.name=n.t1.response.data.error.data.class,s.message=n.t1.response.data.error.data.message):n.t1.request?(s.name="Request error",s.message="Request error, no response received"):s.name="Unknown error",s;case 24:case"end":return n.stop()}}),n,this,[[2,7],[11,19]])})));function e(e,t){return n.apply(this,arguments)}return e}()},{key:"decode_openc3_type",value:function(n){if(null!==n&&"object"===(0,b.Z)(n)&&"Float"==n.json_class&&n.raw){if("NaN"==n.raw)return NaN;if("Infinity"==n.raw)return 1/0;if("-Infinity"==n.raw)return-1/0}return null}},{key:"encode_openc3_type",value:function(n){return Number.isNaN(n)?{json_class:"Float",raw:"NaN"}:n==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:n==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}},{key:"get_all_interface_info",value:function(){return this.exec("get_all_interface_info",[])}},{key:"connect_interface",value:function(n){return this.exec("connect_interface",[n])}},{key:"disconnect_interface",value:function(n){return this.exec("disconnect_interface",[n])}},{key:"get_all_router_info",value:function(){return this.exec("get_all_router_info",[])}},{key:"connect_router",value:function(n){return this.exec("connect_router",[n])}},{key:"disconnect_router",value:function(n){return this.exec("disconnect_router",[n])}},{key:"get_all_target_info",value:function(){return this.exec("get_all_target_info",[])}},{key:"get_tlm_cnts",value:function(n){return this.exec("get_tlm_cnts",[n])}},{key:"get_item",value:function(n,e,t){return this.exec("get_item",[n,e,t])}},{key:"get_parameter",value:function(n,e,t){return this.exec("get_parameter",[n,e,t])}},{key:"get_all_packet_logger_info",value:function(){return this.exec("get_all_packet_logger_info",[])}},{key:"start_logging",value:function(){return this.exec("start_logging",[])}},{key:"stop_logging",value:function(){return this.exec("stop_logging",[])}},{key:"start_cmd_log",value:function(n){return this.exec("start_cmd_log",[n])}},{key:"start_tlm_log",value:function(n){return this.exec("start_tlm_log",[n])}},{key:"stop_cmd_log",value:function(n){return this.exec("stop_cmd_log",[n])}},{key:"stop_tlm_log",value:function(n){return this.exec("stop_tlm_log",[n])}},{key:"get_server_status",value:function(){return this.exec("get_server_status",[])}},{key:"get_limits_sets",value:function(){return this.exec("get_limits_sets",[])}},{key:"get_limits_set",value:function(){return this.exec("get_limits_set",[])}},{key:"set_limits_set",value:function(n){return this.exec("set_limits_set",[n])}},{key:"get_background_tasks",value:function(){return this.exec("get_background_tasks",[])}},{key:"start_background_task",value:function(n){return this.exec("start_background_task",[n])}},{key:"stop_background_task",value:function(n){return this.exec("stop_background_task",[n])}},{key:"get_oldest_logfile",value:function(){return this.exec("get_oldest_logfile",[])}},{key:"get_target",value:function(n){return this.exec("get_target",[n])}},{key:"get_target_list",value:function(){return this.exec("get_target_list",[])}},{key:"get_telemetry",value:function(n,e){return this.exec("get_telemetry",[n,e])}},{key:"get_all_telemetry",value:function(n){return this.exec("get_all_telemetry",[n])}},{key:"get_all_telemetry_names",value:function(n){return this.exec("get_all_telemetry_names",[n])}},{key:"get_tlm_packet",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t,l){var i,o,a,s;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return n.next=2,this.exec("get_tlm_packet",[e,t],{type:l});case 2:if(i=n.sent,null!=i)for(o=i.length,a=null,s=0;s<o;s++)a=this.decode_openc3_type(i[s][1]),null!==a&&(i[s][1]=a);return n.abrupt("return",i);case 5:case"end":return n.stop()}}),n,this)})));function e(e,t,l){return n.apply(this,arguments)}return e}()},{key:"get_packet_derived_items",value:function(n,e){return this.exec("get_packet_derived_items",[n,e])}},{key:"get_tlm_buffer",value:function(n,e){return this.exec("get_tlm_buffer",[n,e])}},{key:"get_tlm_values",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e){var t,l,i,o;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return n.next=2,this.exec("get_tlm_values",[e]);case 2:for(t=n.sent,l=t[0].length,i=null,o=0;o<l;o++)i=this.decode_openc3_type(t[0][o]),null!==i&&(t[0][o]=i);return n.abrupt("return",t);case 7:case"end":return n.stop()}}),n,this)})));function e(e){return n.apply(this,arguments)}return e}()},{key:"get_limits",value:function(n,e,t){return this.exec("get_limits",[n,e,t])}},{key:"tlm",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t,l){var i,o,a,s,r=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(i=r.length>3&&void 0!==r[3]?r[3]:"CONVERTED",o=null,void 0!==t){n.next=8;break}return n.next=5,this.exec("tlm",[e]);case 5:o=n.sent,n.next=24;break;case 8:if(void 0!==l){n.next=21;break}if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(t)){n.next=15;break}return n.next=12,this.exec("tlm",[e],{type:t});case 12:o=n.sent,n.next=19;break;case 15:throw a=new Error,a.name="TypeError",a.message="Invalid data type ".concat(t,". Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS."),a;case 19:n.next=24;break;case 21:return n.next=23,this.exec("tlm",[e,t,l],{type:i});case 23:o=n.sent;case 24:return s=this.decode_openc3_type(o),null!==s&&(o=s),n.abrupt("return",o);case 27:case"end":return n.stop()}}),n,this)})));function e(e,t,l){return n.apply(this,arguments)}return e}()},{key:"get_all_commands",value:function(n){return this.exec("get_all_commands",[n])}},{key:"get_all_command_names",value:function(n){return this.exec("get_all_command_names",[n])}},{key:"get_command",value:function(n,e){return this.exec("get_command",[n,e])}},{key:"get_cmd_cnts",value:function(n){return this.exec("get_cmd_cnts",[n])}},{key:"get_cmd_value",value:function(n,e,t){var l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"CONVERTED";return this.exec("get_cmd_value",[n,e,t,l])}},{key:"get_cmd_buffer",value:function(n,e){return this.exec("get_cmd_buffer",[n,e])}},{key:"_cmd",value:function(n,e,t,l,i){var o=null;for(var a in l)Object.prototype.hasOwnProperty.call(l,a)&&(o=this.encode_openc3_type(l[a]),null!==o&&(l[a]=o));return this.exec(n,[e,t,l],{},i)}},{key:"get_cmd_hazardous",value:function(n,e,t){return void 0===e?this.exec("get_cmd_hazardous",n):this._cmd("get_cmd_hazardous",n,e,t)}},{key:"cmd",value:function(n,e,t){var l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return void 0===e?this.exec("cmd",n,{},l):this._cmd("cmd",n,e,t,l)}},{key:"cmd_no_range_check",value:function(n,e,t){return void 0===e?this.exec("cmd_no_range_check",n):this._cmd("cmd_no_range_check",n,e,t)}},{key:"cmd_raw",value:function(n,e,t){return void 0===e?this.exec("cmd_raw",n):this._cmd("cmd_raw",n,e,t)}},{key:"cmd_raw_no_range_check",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_range_check",n):this._cmd("cmd_raw_no_range_check",n,e,t)}},{key:"cmd_no_hazardous_check",value:function(n,e,t){return void 0===e?this.exec("cmd_no_hazardous_check",n):this._cmd("cmd_no_hazardous_check",n,e,t)}},{key:"cmd_no_checks",value:function(n,e,t){return void 0===e?this.exec("cmd_no_checks",n):this._cmd("cmd_no_checks",n,e,t)}},{key:"cmd_raw_no_hazardous_check",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_hazardous_check",n):this._cmd("cmd_raw_no_hazardous_check",n,e,t)}},{key:"cmd_raw_no_checks",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_checks",n):this._cmd("cmd_raw_no_checks",n,e,t)}},{key:"get_interface_names",value:function(){return this.exec("get_interface_names",[])}},{key:"send_raw",value:function(n,e){return this.exec("send_raw",[n,e])}},{key:"list_configs",value:function(n){return this.exec("list_configs",[n])}},{key:"load_config",value:function(n,e){return this.exec("load_config",[n,e])}},{key:"save_config",value:function(n,e,t){return this.exec("save_config",[n,e,t])}},{key:"delete_config",value:function(n,e){return this.exec("delete_config",[n,e])}},{key:"get_out_of_limits",value:function(){return this.exec("get_out_of_limits",[])}},{key:"get_overall_limits_state",value:function(n){return this.exec("get_overall_limits_state",[n])}},{key:"list_settings",value:function(){return this.exec("list_settings",[])}},{key:"get_all_settings",value:function(){return this.exec("get_all_settings",[])}},{key:"get_setting",value:function(n){return this.exec("get_setting",[n])}},{key:"get_settings",value:function(n){return this.exec("get_settings",n)}},{key:"save_setting",value:function(n,e){return this.exec("save_setting",[n,e])}},{key:"hashString",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e){var t,l,i;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(!window.isSecureContext){n.next=7;break}return t=(new TextEncoder).encode(e),n.next=4,crypto.subtle.digest("SHA-256",t);case 4:return l=n.sent,i=new Uint8Array(l),n.abrupt("return",Array.from(i).map((function(n){return n.toString(16).padStart(2,"0")})).join(""));case 7:case"end":return n.stop()}}),n)})));function e(e){return n.apply(this,arguments)}return e}()}]),n}()),w=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 i=l.on,o=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",o,!1),i),[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,i){return[l.divider?e("v-divider"):e("v-list-item",{key:i,attrs:{disabled:l.disabled,"data-test":n.formatDT("".concat(n.title," ").concat(t.label," ").concat(l.label))},on:{click:l.command}},[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,value:l.label},model:{value:n.checked,callback:function(e){n.checked=e},expression:"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)])},x=[],T=(t(1639),{props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(n){return n.replaceAll(" ","-").toLowerCase()}},mounted:function(){document.title=this.title}}),F=T,S=(t(9824),t(3483)),D=(0,S.Z)(F,w,x,!1,null,"5fb8d7fb",null),I=D.exports;function E(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",e="6b56357c4971159e02acc77584d3fbb23919539f",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",statementMap:{0:{start:{line:1,column:13},end:{line:2,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:1,column:441}},4:{start:{line:1,column:303},end:{line:1,column:435}},5:{start:{line:1,column:391},end:{line:1,column:431}},6:{start:{line:3,column:22},end:{line:3,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:2,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:282},end:{line:1,column:283}},loc:{start:{line:1,column:302},end:{line:1,column:436}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:374},end:{line:1,column:375}},loc:{start:{line:1,column:390},end:{line:1,column:432}},line:1}},branchMap:{0:{loc:{start:{line:1,column:153},end:{line:1,column:258}},type:"cond-expr",locations:[{start:{line:1,column:174},end:{line:1,column:249}},{start:{line:1,column:250},end:{line:1,column:258}}],line:1}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},f:{0:0,1:0,2:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"6b56357c4971159e02acc77584d3fbb23919539f"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return E=function(){return a},a}E(),E().s[0]++;var O=function(){E().f[0]++;var n=(E().s[1]++,this),e=(E().s[2]++,n._self._c);return E().s[3]++,e("tr",[e("td",{staticClass:"text-start"},[n._v(n._s(n.dataItems[0].index))]),n.oneDimensional?(E().b[0][0]++,e("td",{staticClass:"text-start"},[n._v(n._s(n.dataItems[0].name))])):(E().b[0][1]++,n._e()),n._l(n.dataItems,(function(t,l){return E().f[1]++,E().s[4]++,e("table-item",{key:t.name,attrs:{item:t},on:{change:function(e){return E().f[2]++,E().s[5]++,n.onChange(t,l,e)}}})}))],2)},R=(E().s[6]++,[]);function N(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",e="5279000e2c83e7cb9ddd59a48285c37ed2248999",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",statementMap:{0:{start:{line:1,column:13},end:{line:2,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:1,column:976}},4:{start:{line:1,column:303},end:{line:1,column:321}},5:{start:{line:1,column:598},end:{line:1,column:616}},6:{start:{line:1,column:904},end:{line:1,column:940}},7:{start:{line:3,column:22},end:{line:3,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:2,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:287},end:{line:1,column:288}},loc:{start:{line:1,column:302},end:{line:1,column:322}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:582},end:{line:1,column:583}},loc:{start:{line:1,column:597},end:{line:1,column:617}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:888},end:{line:1,column:889}},loc:{start:{line:1,column:903},end:{line:1,column:941}},line:1}},branchMap:{0:{loc:{start:{line:1,column:76},end:{line:1,column:972}},type:"cond-expr",locations:[{start:{line:1,column:93},end:{line:1,column:349}},{start:{line:1,column:350},end:{line:1,column:972}}],line:1},1:{loc:{start:{line:1,column:350},end:{line:1,column:972}},type:"cond-expr",locations:[{start:{line:1,column:372},end:{line:1,column:644}},{start:{line:1,column:645},end:{line:1,column:972}}],line:1}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0],1:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"5279000e2c83e7cb9ddd59a48285c37ed2248999"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return N=function(){return a},a}N(),N().s[0]++;var M=function(){N().f[0]++;var n=(N().s[1]++,this),e=(N().s[2]++,n._self._c);return N().s[3]++,e("td",[n.isCheckbox?(N().b[0][0]++,e("v-checkbox",{attrs:{dense:"","hide-details":"",disabled:!n.dataItem.editable,"data-test":"table-item-checkbox"},on:{change:n.checkboxChange},model:{value:n.checkValue,callback:function(e){N().f[1]++,N().s[4]++,n.checkValue=e},expression:"checkValue"}})):(N().b[0][1]++,n.dataItem.states?(N().b[1][0]++,e("v-select",{attrs:{dense:"","hide-details":"",items:n.itemStates,disabled:!n.dataItem.editable,"data-test":"table-item-select"},on:{change:n.stateChange},model:{value:n.stateValue,callback:function(e){N().f[2]++,N().s[5]++,n.stateValue=e},expression:"stateValue"}})):(N().b[1][1]++,e("v-text-field",{attrs:{solo:"",dense:"","single-line":"","hide-no-data":"","hide-details":"",disabled:!n.dataItem.editable,"data-test":"table-item-text-field"},on:{change:n.textChange},model:{value:n.dataItem.value,callback:function(e){N().f[3]++,N().s[6]++,n.$set(n.dataItem,"value",e)},expression:"dataItem.value"}})))],1)},B=(N().s[7]++,[]),$=t(8571);t(4769),t(5883),t(9228);function U(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",e="b171d632b23d95088628893755684fe62744b7ac",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",statementMap:{0:{start:{line:10,column:4},end:{line:14,column:5}},1:{start:{line:17,column:4},end:{line:19,column:5}},2:{start:{line:18,column:6},end:{line:18,column:65}},3:{start:{line:20,column:4},end:{line:22,column:5}},4:{start:{line:21,column:6},end:{line:21,column:45}},5:{start:{line:26,column:19},end:{line:26,column:23}},6:{start:{line:27,column:6},end:{line:35,column:7}},7:{start:{line:28,column:8},end:{line:32,column:9}},8:{start:{line:29,column:10},end:{line:31,column:11}},9:{start:{line:30,column:12},end:{line:30,column:26}},10:{start:{line:34,column:8},end:{line:34,column:22}},11:{start:{line:36,column:6},end:{line:36,column:19}},12:{start:{line:39,column:19},end:{line:39,column:21}},13:{start:{line:40,column:6},end:{line:42,column:7}},14:{start:{line:41,column:8},end:{line:41,column:49}},15:{start:{line:43,column:6},end:{line:43,column:19}},16:{start:{line:48,column:6},end:{line:52,column:7}},17:{start:{line:49,column:8},end:{line:49,column:39}},18:{start:{line:51,column:8},end:{line:51,column:41}},19:{start:{line:56,column:18},end:{line:58,column:7}},20:{start:{line:57,column:17},end:{line:57,column:62}},21:{start:{line:59,column:6},end:{line:59,column:33}},22:{start:{line:62,column:6},end:{line:62,column:47}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:9,column:2},end:{line:9,column:3}},loc:{start:{line:9,column:9},end:{line:15,column:3}},line:9},1:{name:"(anonymous_1)",decl:{start:{line:16,column:2},end:{line:16,column:3}},loc:{start:{line:16,column:12},end:{line:23,column:3}},line:16},2:{name:"(anonymous_2)",decl:{start:{line:25,column:16},end:{line:25,column:17}},loc:{start:{line:25,column:28},end:{line:37,column:5}},line:25},3:{name:"(anonymous_3)",decl:{start:{line:38,column:16},end:{line:38,column:17}},loc:{start:{line:38,column:28},end:{line:44,column:5}},line:38},4:{name:"(anonymous_4)",decl:{start:{line:47,column:20},end:{line:47,column:21}},loc:{start:{line:47,column:32},end:{line:53,column:5}},line:47},5:{name:"(anonymous_5)",decl:{start:{line:54,column:17},end:{line:54,column:18}},loc:{start:{line:54,column:29},end:{line:60,column:5}},line:54},6:{name:"(anonymous_6)",decl:{start:{line:57,column:8},end:{line:57,column:9}},loc:{start:{line:57,column:17},end:{line:57,column:62}},line:57},7:{name:"(anonymous_7)",decl:{start:{line:61,column:16},end:{line:61,column:17}},loc:{start:{line:61,column:28},end:{line:63,column:5}},line:61}},branchMap:{0:{loc:{start:{line:17,column:4},end:{line:19,column:5}},type:"if",locations:[{start:{line:17,column:4},end:{line:19,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:17},1:{loc:{start:{line:20,column:4},end:{line:22,column:5}},type:"if",locations:[{start:{line:20,column:4},end:{line:22,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:20},2:{loc:{start:{line:27,column:6},end:{line:35,column:7}},type:"if",locations:[{start:{line:27,column:6},end:{line:35,column:7}},{start:{line:33,column:13},end:{line:35,column:7}}],line:27},3:{loc:{start:{line:29,column:10},end:{line:31,column:11}},type:"if",locations:[{start:{line:29,column:10},end:{line:31,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:29},4:{loc:{start:{line:29,column:14},end:{line:29,column:58}},type:"binary-expr",locations:[{start:{line:29,column:14},end:{line:29,column:33}},{start:{line:29,column:37},end:{line:29,column:58}}],line:29},5:{loc:{start:{line:48,column:6},end:{line:52,column:7}},type:"if",locations:[{start:{line:48,column:6},end:{line:52,column:7}},{start:{line:50,column:13},end:{line:52,column:7}}],line:48}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0]},inputSourceMap:{version:3,sources:["TableItem.vue"],names:[],mappings:";AAwDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"TableItem.vue",sourceRoot:"src/tools/TableManager",sourcesContent:['\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <td>\n <v-checkbox\n v-if="isCheckbox"\n dense\n hide-details\n v-model="checkValue"\n @change="checkboxChange"\n :disabled="!dataItem.editable"\n data-test="table-item-checkbox"\n />\n <v-select\n v-else-if="dataItem.states"\n dense\n hide-details\n v-model="stateValue"\n :items="itemStates"\n @change="stateChange"\n :disabled="!dataItem.editable"\n data-test="table-item-select"\n />\n <v-text-field\n v-else\n solo\n dense\n single-line\n hide-no-data\n hide-details\n v-model="dataItem.value"\n @change="textChange"\n :disabled="!dataItem.editable"\n data-test="table-item-text-field"\n />\n </td>\n</template>\n\n<script>\nexport default {\n props: {\n item: {\n type: Object,\n required: true,\n },\n },\n data() {\n return {\n dataItem: this.item,\n stateValue: null,\n checkValue: false,\n }\n },\n created() {\n if (this.dataItem.states) {\n this.stateValue = this.dataItem.states[this.dataItem.value]\n }\n if (this.isCheckbox) {\n this.checkValue = this.stateValue === 1\n }\n },\n computed: {\n isCheckbox: function () {\n let result = true\n if (this.dataItem.states) {\n for (const state of Object.keys(this.dataItem.states)) {\n if (state !== \'CHECKED\' && state !== \'UNCHECKED\') {\n result = false\n }\n }\n } else {\n result = false\n }\n return result\n },\n itemStates: function () {\n let result = []\n for (const [text, value] of Object.entries(this.dataItem.states)) {\n result.push({ text: text, value: value })\n }\n return result\n },\n },\n methods: {\n checkboxChange: function () {\n if (this.checkValue) {\n this.$emit(\'change\', \'CHECKED\')\n } else {\n this.$emit(\'change\', \'UNCHECKED\')\n }\n },\n stateChange: function () {\n // Lookup the state key that corresponds to the value\n let state = Object.keys(this.dataItem.states).find(\n (key) => this.dataItem.states[key] === this.stateValue\n )\n this.$emit(\'change\', state)\n },\n textChange: function () {\n this.$emit(\'change\', this.dataItem.value)\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"b171d632b23d95088628893755684fe62744b7ac"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return U=function(){return a},a}U();var j={props:{item:{type:Object,required:!0}},data:function(){return U().f[0]++,U().s[0]++,{dataItem:this.item,stateValue:null,checkValue:!1}},created:function(){U().f[1]++,U().s[1]++,this.dataItem.states?(U().b[0][0]++,U().s[2]++,this.stateValue=this.dataItem.states[this.dataItem.value]):U().b[0][1]++,U().s[3]++,this.isCheckbox?(U().b[1][0]++,U().s[4]++,this.checkValue=1===this.stateValue):U().b[1][1]++},computed:{isCheckbox:function(){U().f[2]++;var n=(U().s[5]++,!0);if(U().s[6]++,this.dataItem.states){U().b[2][0]++,U().s[7]++;for(var e=0,t=Object.keys(this.dataItem.states);e<t.length;e++){var l=t[e];U().s[8]++,U().b[4][0]++,"CHECKED"!==l&&(U().b[4][1]++,"UNCHECKED"!==l)?(U().b[3][0]++,U().s[9]++,n=!1):U().b[3][1]++}}else U().b[2][1]++,U().s[10]++,n=!1;return U().s[11]++,n},itemStates:function(){U().f[3]++;var n=(U().s[12]++,[]);U().s[13]++;for(var e=0,t=Object.entries(this.dataItem.states);e<t.length;e++){var l=(0,$.Z)(t[e],2),i=l[0],o=l[1];U().s[14]++,n.push({text:i,value:o})}return U().s[15]++,n}},methods:{checkboxChange:function(){U().f[4]++,U().s[16]++,this.checkValue?(U().b[5][0]++,U().s[17]++,this.$emit("change","CHECKED")):(U().b[5][1]++,U().s[18]++,this.$emit("change","UNCHECKED"))},stateChange:function(){var n=this;U().f[5]++;var e=(U().s[19]++,Object.keys(this.dataItem.states).find((function(e){return U().f[6]++,U().s[20]++,n.dataItem.states[e]===n.stateValue})));U().s[21]++,this.$emit("change",e)},textChange:function(){U().f[7]++,U().s[22]++,this.$emit("change",this.dataItem.value)}}},L=j,Z=(0,S.Z)(L,M,B,!1,null,null,null),P=Z.exports;function V(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",e="54fa022521ac1c3e49273e12ef3df639b236b1fa",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",statementMap:{0:{start:{line:15,column:4},end:{line:17,column:5}},1:{start:{line:21,column:6},end:{line:25,column:7}},2:{start:{line:22,column:8},end:{line:22,column:19}},3:{start:{line:24,column:8},end:{line:24,column:20}},4:{start:{line:30,column:6},end:{line:30,column:58}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:14,column:2},end:{line:14,column:3}},loc:{start:{line:14,column:9},end:{line:18,column:3}},line:14},1:{name:"(anonymous_1)",decl:{start:{line:20,column:4},end:{line:20,column:5}},loc:{start:{line:20,column:21},end:{line:26,column:5}},line:20},2:{name:"(anonymous_2)",decl:{start:{line:29,column:14},end:{line:29,column:15}},loc:{start:{line:29,column:44},end:{line:31,column:5}},line:29}},branchMap:{0:{loc:{start:{line:21,column:6},end:{line:25,column:7}},type:"if",locations:[{start:{line:21,column:6},end:{line:25,column:7}},{start:{line:23,column:13},end:{line:25,column:7}}],line:21}},s:{0:0,1:0,2:0,3:0,4:0},f:{0:0,1:0,2:0},b:{0:[0,0]},inputSourceMap:{version:3,sources:["TableRow.vue"],names:[],mappings:";AAiCA;;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",file:"TableRow.vue",sourceRoot:"src/tools/TableManager",sourcesContent:['\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <tr>\n <td class="text-start">{{ dataItems[0].index }}</td>\n <td class="text-start" v-if="oneDimensional">{{ dataItems[0].name }}</td>\n <table-item\n v-for="(item, index) in dataItems"\n :key="item.name"\n :item="item"\n @change="onChange(item, index, $event)"\n />\n </tr>\n</template>\n\n<script>\nimport TableItem from \'@/tools/TableManager/TableItem\'\n\nexport default {\n components: {\n TableItem,\n },\n props: {\n items: {\n type: Object,\n required: true,\n },\n },\n data() {\n return {\n dataItems: this.items,\n }\n },\n computed: {\n oneDimensional() {\n if (this.dataItems.length === 1) {\n return true\n } else {\n return false\n }\n },\n },\n methods: {\n onChange: function (item, index, event) {\n this.$emit(\'change\', { index: index, event: event })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"54fa022521ac1c3e49273e12ef3df639b236b1fa"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return V=function(){return a},a}V();var H={components:{TableItem:P},props:{items:{type:Object,required:!0}},data:function(){return V().f[0]++,V().s[0]++,{dataItems:this.items}},computed:{oneDimensional:function(){return V().f[1]++,V().s[1]++,1===this.dataItems.length?(V().b[0][0]++,V().s[2]++,!0):(V().b[0][1]++,V().s[3]++,!1)}},methods:{onChange:function(n,e,t){V().f[2]++,V().s[4]++,this.$emit("change",{index:e,event:t})}}},G=H,z=(0,S.Z)(G,O,R,!1,null,null,null),q=z.exports,Y=(t(4083),function(){var n=this,e=n._self._c;return e("v-dialog",{attrs:{width:"600"},on:{keydown:function(e){return!e.type.indexOf("key")&&n._k(e.keyCode,"enter",13,e.key,"Enter")?null:n.success()}},model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[e("v-card",[e("form",{on:{submit:function(e){return e.preventDefault(),n.success.apply(null,arguments)}}},[e("v-system-bar",[e("v-spacer"),e("span",[n._v(" "+n._s(n.title)+" ")]),e("v-spacer")],1),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("v-row",{attrs:{dense:""}},[e("v-text-field",{attrs:{flat:"",autofocus:"","solo-inverted":"","hide-details":"",clearable:"",label:"Search","data-test":"file-open-save-search"},on:{input:n.handleSearch},model:{value:n.search,callback:function(e){n.search=e},expression:"search"}})],1),e("v-row",{staticClass:"mt-2",attrs:{dense:""}},[e("v-treeview",{ref:"tree",staticStyle:{width:"100%"},attrs:{dense:"",activatable:"","return-object":"",items:n.items,search:n.search,"open-on-click":"open"===n.type},on:{"update:active":n.activeFile},scopedSlots:n._u([{key:"prepend",fn:function(t){var l=t.item,i=t.open;return[l.file?e("v-icon",[n._v(" "+n._s("mdi-language-ruby")+" ")]):e("v-icon",[n._v(" "+n._s(i?"mdi-folder-open":"mdi-folder")+" ")])]}}]),model:{value:n.tree,callback:function(e){n.tree=e},expression:"tree"}})],1),e("v-row",{staticClass:"my-2"},[e("v-text-field",{attrs:{"hide-details":"",label:"Filename","data-test":"file-open-save-filename",disabled:"open"===n.type},model:{value:n.selectedFile,callback:function(e){n.selectedFile=e},expression:"selectedFile"}})],1),e("v-row",{attrs:{dense:""}},[e("span",{directives:[{name:"show",rawName:"v-show",value:n.error,expression:"error"}],staticClass:"my-2 red--text",domProps:{textContent:n._s(n.error)}})]),e("v-row",{staticClass:"mt-2"},[e("v-spacer"),e("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"file-open-save-cancel-btn",disabled:n.disableButtons},on:{click:function(e){n.show=!1}}},[n._v(" Cancel ")]),e("v-btn",{staticClass:"mx-2",attrs:{type:"submit",color:"primary","data-test":"file-open-save-submit-btn",disabled:n.disableButtons||!!n.error},on:{click:function(e){return e.preventDefault(),n.success.apply(null,arguments)}}},[n._v(" "+n._s(n.submit)+" ")])],1)],1)])],1)])],1)}),W=[],K=t(4282),J=(t(4069),t(7368),t(4471),t(1172),t(9949),{props:{type:{type:String,required:!0,validator:function(n){return-1!==["open","save"].indexOf(n)}},apiUrl:String,requireTargetParentDir:Boolean,inputFilename:String,value:Boolean},data:function(){return{tree:[],items:[],id:1,search:null,selectedFile:null,disableButtons:!1,targets:[]}},computed:{show:{get:function(){return this.value},set:function(n){this.$emit("input",n)}},title:function(){return"open"===this.type?"File Open":"File Save As..."},submit:function(){return"open"===this.type?"OPEN":"SAVE"},error:function(){if(""===this.selectedFile||null===this.selectedFile)return"No file selected must select a file";if(!this.selectedFile.match(this.validFilenameRegex)||this.selectedFile.match(/\.\.|\/\/|\.\/|\/\./)){var n="".concat(this.selectedFile," is not a valid filename. Must ");return this.requireTargetParentDir&&(n+="be in a target directory and "),n+="only contain alphanumeric characters and / ! - _ . * ' ( )",n}return null},validFilenameRegex:function(){var n="0-9a-zA-Z",e="".concat(n,"\\/\\!\\-\\_\\.\\*\\'\\(\\)"),t="[".concat(e,"]+\\.[").concat(n,"]+");if(this.requireTargetParentDir){var l="(".concat(this.targets.join("|"),")");t="\\/?".concat(l,"\\/").concat(t)}return new RegExp(t)}},created:function(){var n=this;C.get(this.apiUrl).then((function(e){n.items=[],n.id=1;var t,l=(0,K.Z)(e.data);try{for(l.s();!(t=l.n()).done;){var i=t.value;n.filepath=i,n.insertFile(n.items,1,i),n.id++}}catch(o){l.e(o)}finally{l.f()}n.inputFilename&&(n.selectedFile=n.inputFilename)})).catch((function(e){n.$emit("error","Failed to connect to OpenC3. ".concat(e))})),this.requireTargetParentDir&&C.get("/openc3-api/targets").then((function(e){n.targets=e.data}))},methods:{clear:function(){this.show=!1,this.overwrite=!1,this.disableButtons=!1},handleSearch:function(n){n?this.$refs.tree.updateAll(!0):this.$refs.tree.updateAll(!1)},activeFile:function(n){0===n.length?this.selectedFile=null:this.selectedFile=n[0].path},exists:function(n,e){var t,l=!1,i=(0,K.Z)(n);try{for(i.s();!(t=i.n()).done;){var o=t.value;if(o.path===e)return!0;if(o.path.length>1&&"*"===o.path[o.path.length-1]&&o.path.slice(0,o.path.length-1)===e)return!0;o.children&&(l=l||this.exists(o.children,e))}}catch(a){i.e(a)}finally{i.f()}return l},success:function(){null!==this.selectedFile&&("open"===this.type?this.openSuccess():this.saveSuccess())},openSuccess:function(){var n=this;this.disableButtons=!0,C.get("".concat(this.apiUrl,"/").concat(this.selectedFile)).then((function(e){var t={name:n.selectedFile,contents:e.data.contents};e.data.suites&&(t["suites"]=JSON.parse(e.data.suites)),e.data.error&&(t["error"]=e.data.error),e.data.success&&(t["success"]=e.data.success);var l=e.data.locked,i=e.data.breakpoints;n.$emit("file",{file:t,locked:l,breakpoints:i}),n.clear()})).catch((function(e){n.$emit("error","Failed to open ".concat(n.selectedFile,". ").concat(e)),n.clear()}))},saveSuccess:function(){var n=this,e=this.exists(this.items,this.selectedFile);e?this.$dialog.confirm("Are you sure you want to overwrite: ".concat(this.selectedFile),{okText:"Overwrite",cancelText:"Cancel"}).then((function(e){n.$emit("filename",n.selectedFile),n.clear()})):(this.$emit("filename",this.selectedFile),this.clear())},insertFile:function(n,e,t){var l=t.split("/");if(1===l.length)return n.push({id:this.id,name:l[0],file:"ruby",path:this.filepath}),void this.id++;var i=n.findIndex((function(n){return n.name===l[0]}));-1===i?(n.push({id:this.id,name:l[0],children:[],path:this.filepath.split("/").slice(0,e).join("/")}),this.id++,this.insertFile(n[n.length-1].children,e+1,l.slice(1).join("/"))):this.insertFile(n[i].children,e+1,l.slice(1).join("/"))}}}),X=J,Q=(0,S.Z)(X,Y,W,!1,null,null,null),nn=Q.exports,en=function(){var n=this,e=n._self._c;return e("v-dialog",{attrs:{width:n.width},model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),e("span",[n._v(" "+n._s(n.title)+" ")]),e("v-spacer"),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:n._u([{key:"activator",fn:function(t){var l=t.on,i=t.attrs;return[e("div",n._g(n._b({},"div",i,!1),l),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:n.download}},[n._v(" mdi-download ")])],1)]}}])},[e("span",[n._v(" Download ")])])],1)],1),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("span",{staticStyle:{"white-space":"pre-wrap"}},[n._v(n._s(n.text))])])]),e("v-card-actions",[e("v-spacer"),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(e){n.show=!n.show}}},[n._v(" Ok ")])],1)],1)],1)},tn=[],ln={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get:function(){return this.value},set:function(n){this.$emit("input",n)}}},methods:{download:function(){var n=new Blob([this.text],{type:"text/plain"}),e=document.createElement("a");e.href=URL.createObjectURL(n),e.setAttribute("download","".concat(this.title,".txt")),e.click()}}},on=ln,an=(0,S.Z)(on,en,tn,!1,null,null,null),cn=an.exports;function sn(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",e="5b8170b15742912765b5ce633f335faa3df00d4a",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",statementMap:{0:{start:{line:17,column:4},end:{line:39,column:5}},1:{start:{line:43,column:6},end:{line:43,column:28}},2:{start:{line:46,column:6},end:{line:46,column:59}},3:{start:{line:49,column:6},end:{line:106,column:7}},4:{start:{line:57,column:16},end:{line:57,column:30}},5:{start:{line:64,column:16},end:{line:64,column:31}},6:{start:{line:74,column:16},end:{line:74,column:31}},7:{start:{line:81,column:16},end:{line:81,column:29}},8:{start:{line:101,column:16},end:{line:101,column:29}},9:{start:{line:113,column:8},end:{line:113,column:80}},10:{start:{line:115,column:8},end:{line:116,column:33}},11:{start:{line:117,column:6},end:{line:129,column:10}},12:{start:{line:125,column:10},end:{line:125,column:34}},13:{start:{line:128,column:10},end:{line:128,column:35}},14:{start:{line:130,column:6},end:{line:142,column:10}},15:{start:{line:138,column:10},end:{line:138,column:36}},16:{start:{line:141,column:10},end:{line:141,column:37}},17:{start:{line:146,column:4},end:{line:146,column:30}},18:{start:{line:151,column:6},end:{line:151,column:28}},19:{start:{line:152,column:6},end:{line:152,column:25}},20:{start:{line:153,column:6},end:{line:153,column:26}},21:{start:{line:156,column:6},end:{line:156,column:26}},22:{start:{line:161,column:6},end:{line:175,column:7}},23:{start:{line:162,column:8},end:{line:167,column:9}},24:{start:{line:163,column:10},end:{line:163,column:40}},25:{start:{line:164,column:10},end:{line:164,column:30}},26:{start:{line:166,column:10},end:{line:166,column:39}},27:{start:{line:169,column:8},end:{line:169,column:25}},28:{start:{line:171,column:8},end:{line:171,column:47}},29:{start:{line:172,column:8},end:{line:172,column:30}},30:{start:{line:173,column:8},end:{line:173,column:30}},31:{start:{line:174,column:8},end:{line:174,column:28}},32:{start:{line:179,column:6},end:{line:179,column:31}},33:{start:{line:180,column:6},end:{line:180,column:40}},34:{start:{line:181,column:6},end:{line:181,column:44}},35:{start:{line:182,column:6},end:{line:182,column:27}},36:{start:{line:186,column:6},end:{line:186,column:26}},37:{start:{line:188,column:23},end:{line:188,column:37}},38:{start:{line:189,column:6},end:{line:189,column:46}},39:{start:{line:190,column:6},end:{line:190,column:60}},40:{start:{line:191,column:6},end:{line:191,column:60}},41:{start:{line:192,column:6},end:{line:206,column:10}},42:{start:{line:196,column:10},end:{line:196,column:32}},43:{start:{line:197,column:10},end:{line:199,column:18}},44:{start:{line:198,column:12},end:{line:198,column:33}},45:{start:{line:202,column:10},end:{line:202,column:31}},46:{start:{line:203,column:10},end:{line:203,column:40}},47:{start:{line:204,column:10},end:{line:204,column:48}},48:{start:{line:205,column:10},end:{line:205,column:31}},49:{start:{line:207,column:6},end:{line:207,column:21}},50:{start:{line:210,column:6},end:{line:210,column:28}},51:{start:{line:213,column:6},end:{line:218,column:7}},52:{start:{line:215,column:10},end:{line:215,column:34}},53:{start:{line:216,column:10},end:{line:216,column:53}},54:{start:{line:221,column:6},end:{line:243,column:7}},55:{start:{line:222,column:8},end:{line:242,column:12}},56:{start:{line:228,column:12},end:{line:230,column:14}},57:{start:{line:233,column:12},end:{line:233,column:26}},58:{start:{line:236,column:12},end:{line:241,column:13}},59:{start:{line:237,column:14},end:{line:240,column:16}},60:{start:{line:246,column:23},end:{line:246,column:37}},61:{start:{line:247,column:6},end:{line:247,column:46}},62:{start:{line:248,column:6},end:{line:248,column:60}},63:{start:{line:249,column:6},end:{line:251,column:7}},64:{start:{line:250,column:8},end:{line:250,column:43}},65:{start:{line:252,column:6},end:{line:272,column:8}},66:{start:{line:256,column:28},end:{line:256,column:63}},67:{start:{line:258,column:27},end:{line:258,column:61}},68:{start:{line:260,column:8},end:{line:262,column:9}},69:{start:{line:260,column:21},end:{line:260,column:22}},70:{start:{line:261,column:10},end:{line:261,column:51}},71:{start:{line:264,column:21},end:{line:266,column:10}},72:{start:{line:268,column:21},end:{line:268,column:48}},73:{start:{line:269,column:8},end:{line:269,column:45}},74:{start:{line:270,column:8},end:{line:270,column:61}},75:{start:{line:271,column:8},end:{line:271,column:20}},76:{start:{line:275,column:23},end:{line:275,column:37}},77:{start:{line:276,column:6},end:{line:276,column:60}},78:{start:{line:277,column:6},end:{line:279,column:7}},79:{start:{line:278,column:8},end:{line:278,column:43}},80:{start:{line:280,column:6},end:{line:291,column:8}},81:{start:{line:283,column:21},end:{line:285,column:10}},82:{start:{line:287,column:21},end:{line:287,column:48}},83:{start:{line:288,column:8},end:{line:288,column:45}},84:{start:{line:289,column:8},end:{line:289,column:61}},85:{start:{line:290,column:8},end:{line:290,column:20}},86:{start:{line:294,column:23},end:{line:294,column:37}},87:{start:{line:295,column:6},end:{line:295,column:46}},88:{start:{line:296,column:6},end:{line:296,column:60}},89:{start:{line:297,column:6},end:{line:299,column:7}},90:{start:{line:298,column:8},end:{line:298,column:43}},91:{start:{line:300,column:6},end:{line:314,column:8}},92:{start:{line:304,column:10},end:{line:305,column:54}},93:{start:{line:306,column:21},end:{line:308,column:10}},94:{start:{line:310,column:21},end:{line:310,column:48}},95:{start:{line:311,column:8},end:{line:311,column:45}},96:{start:{line:312,column:8},end:{line:312,column:61}},97:{start:{line:313,column:8},end:{line:313,column:20}},98:{start:{line:318,column:8},end:{line:318,column:80}},99:{start:{line:319,column:6},end:{line:327,column:8}},100:{start:{line:324,column:8},end:{line:326,column:9}},101:{start:{line:325,column:10},end:{line:325,column:71}},102:{start:{line:330,column:6},end:{line:354,column:29}},103:{start:{line:342,column:12},end:{line:343,column:37}},104:{start:{line:344,column:10},end:{line:352,column:12}},105:{start:{line:349,column:12},end:{line:351,column:13}},106:{start:{line:350,column:14},end:{line:350,column:75}},107:{start:{line:368,column:6},end:{line:380,column:10}},108:{start:{line:378,column:10},end:{line:378,column:30}},109:{start:{line:379,column:10},end:{line:379,column:32}},110:{start:{line:383,column:6},end:{line:383,column:65}},111:{start:{line:386,column:6},end:{line:388,column:7}},112:{start:{line:387,column:8},end:{line:387,column:62}},113:{start:{line:391,column:6},end:{line:395,column:7}},114:{start:{line:392,column:8},end:{line:394,column:38}},115:{start:{line:396,column:6},end:{line:396,column:22}},116:{start:{line:397,column:23},end:{line:397,column:37}},117:{start:{line:398,column:6},end:{line:398,column:46}},118:{start:{line:399,column:6},end:{line:399,column:55}},119:{start:{line:400,column:6},end:{line:453,column:10}},120:{start:{line:404,column:10},end:{line:404,column:54}},121:{start:{line:405,column:10},end:{line:431,column:12}},122:{start:{line:406,column:12},end:{line:430,column:13}},123:{start:{line:410,column:31},end:{line:413,column:17}},124:{start:{line:414,column:16},end:{line:428,column:17}},125:{start:{line:417,column:18},end:{line:420,column:19}},126:{start:{line:424,column:18},end:{line:427,column:19}},127:{start:{line:433,column:10},end:{line:438,column:11}},128:{start:{line:434,column:12},end:{line:437,column:14}},129:{start:{line:441,column:10},end:{line:452,column:11}},130:{start:{line:442,column:12},end:{line:445,column:14}},131:{start:{line:446,column:12},end:{line:446,column:32}},132:{start:{line:448,column:12},end:{line:451,column:14}},133:{start:{line:456,column:23},end:{line:456,column:37}},134:{start:{line:457,column:6},end:{line:457,column:45}},135:{start:{line:458,column:6},end:{line:463,column:8}},136:{start:{line:461,column:8},end:{line:461,column:46}},137:{start:{line:462,column:8},end:{line:462,column:36}},138:{start:{line:466,column:6},end:{line:466,column:29}},139:{start:{line:467,column:6},end:{line:467,column:31}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:16,column:2},end:{line:16,column:3}},loc:{start:{line:16,column:9},end:{line:40,column:3}},line:16},1:{name:"(anonymous_1)",decl:{start:{line:42,column:14},end:{line:42,column:15}},loc:{start:{line:42,column:26},end:{line:44,column:5}},line:42},2:{name:"(anonymous_2)",decl:{start:{line:45,column:4},end:{line:45,column:5}},loc:{start:{line:45,column:19},end:{line:47,column:5}},line:45},3:{name:"(anonymous_3)",decl:{start:{line:48,column:11},end:{line:48,column:12}},loc:{start:{line:48,column:23},end:{line:107,column:5}},line:48},4:{name:"(anonymous_4)",decl:{start:{line:56,column:23},end:{line:56,column:24}},loc:{start:{line:56,column:29},end:{line:58,column:15}},line:56},5:{name:"(anonymous_5)",decl:{start:{line:63,column:23},end:{line:63,column:24}},loc:{start:{line:63,column:29},end:{line:65,column:15}},line:63},6:{name:"(anonymous_6)",decl:{start:{line:73,column:23},end:{line:73,column:24}},loc:{start:{line:73,column:29},end:{line:75,column:15}},line:73},7:{name:"(anonymous_7)",decl:{start:{line:80,column:23},end:{line:80,column:24}},loc:{start:{line:80,column:29},end:{line:82,column:15}},line:80},8:{name:"(anonymous_8)",decl:{start:{line:100,column:23},end:{line:100,column:24}},loc:{start:{line:100,column:29},end:{line:102,column:15}},line:100},9:{name:"(anonymous_9)",decl:{start:{line:111,column:14},end:{line:111,column:15}},loc:{start:{line:111,column:29},end:{line:143,column:5}},line:111},10:{name:"(anonymous_10)",decl:{start:{line:124,column:14},end:{line:124,column:15}},loc:{start:{line:124,column:28},end:{line:126,column:9}},line:124},11:{name:"(anonymous_11)",decl:{start:{line:127,column:15},end:{line:127,column:16}},loc:{start:{line:127,column:26},end:{line:129,column:9}},line:127},12:{name:"(anonymous_12)",decl:{start:{line:137,column:14},end:{line:137,column:15}},loc:{start:{line:137,column:28},end:{line:139,column:9}},line:137},13:{name:"(anonymous_13)",decl:{start:{line:140,column:15},end:{line:140,column:16}},loc:{start:{line:140,column:26},end:{line:142,column:9}},line:140},14:{name:"(anonymous_14)",decl:{start:{line:145,column:2},end:{line:145,column:3}},loc:{start:{line:145,column:12},end:{line:147,column:3}},line:145},15:{name:"(anonymous_15)",decl:{start:{line:150,column:13},end:{line:150,column:14}},loc:{start:{line:150,column:25},end:{line:154,column:5}},line:150},16:{name:"(anonymous_16)",decl:{start:{line:155,column:14},end:{line:155,column:15}},loc:{start:{line:155,column:26},end:{line:157,column:5}},line:155},17:{name:"(anonymous_17)",decl:{start:{line:159,column:13},end:{line:159,column:14}},loc:{start:{line:159,column:41},end:{line:176,column:5}},line:159},18:{name:"(anonymous_18)",decl:{start:{line:178,column:4},end:{line:178,column:5}},loc:{start:{line:178,column:20},end:{line:183,column:5}},line:178},19:{name:"(anonymous_19)",decl:{start:{line:184,column:14},end:{line:184,column:15}},loc:{start:{line:184,column:26},end:{line:208,column:5}},line:184},20:{name:"(anonymous_20)",decl:{start:{line:195,column:14},end:{line:195,column:15}},loc:{start:{line:195,column:28},end:{line:200,column:9}},line:195},21:{name:"(anonymous_21)",decl:{start:{line:197,column:21},end:{line:197,column:22}},loc:{start:{line:197,column:27},end:{line:199,column:11}},line:197},22:{name:"(anonymous_22)",decl:{start:{line:201,column:15},end:{line:201,column:16}},loc:{start:{line:201,column:33},end:{line:206,column:9}},line:201},23:{name:"(anonymous_23)",decl:{start:{line:209,column:12},end:{line:209,column:13}},loc:{start:{line:209,column:24},end:{line:211,column:5}},line:209},24:{name:"(anonymous_24)",decl:{start:{line:212,column:20},end:{line:212,column:21}},loc:{start:{line:212,column:40},end:{line:219,column:5}},line:212},25:{name:"(anonymous_25)",decl:{start:{line:214,column:8},end:{line:214,column:9}},loc:{start:{line:214,column:22},end:{line:217,column:9}},line:214},26:{name:"(anonymous_26)",decl:{start:{line:220,column:12},end:{line:220,column:13}},loc:{start:{line:220,column:24},end:{line:244,column:5}},line:220},27:{name:"(anonymous_27)",decl:{start:{line:227,column:16},end:{line:227,column:17}},loc:{start:{line:227,column:28},end:{line:231,column:11}},line:227},28:{name:"(anonymous_28)",decl:{start:{line:232,column:16},end:{line:232,column:17}},loc:{start:{line:232,column:30},end:{line:234,column:11}},line:232},29:{name:"(anonymous_29)",decl:{start:{line:235,column:17},end:{line:235,column:18}},loc:{start:{line:235,column:28},end:{line:242,column:11}},line:235},30:{name:"(anonymous_30)",decl:{start:{line:245,column:20},end:{line:245,column:21}},loc:{start:{line:245,column:48},end:{line:273,column:5}},line:245},31:{name:"(anonymous_31)",decl:{start:{line:254,column:14},end:{line:254,column:15}},loc:{start:{line:254,column:28},end:{line:272,column:7}},line:254},32:{name:"(anonymous_32)",decl:{start:{line:274,column:24},end:{line:274,column:25}},loc:{start:{line:274,column:52},end:{line:292,column:5}},line:274},33:{name:"(anonymous_33)",decl:{start:{line:282,column:14},end:{line:282,column:15}},loc:{start:{line:282,column:28},end:{line:291,column:7}},line:282},34:{name:"(anonymous_34)",decl:{start:{line:293,column:20},end:{line:293,column:21}},loc:{start:{line:293,column:48},end:{line:315,column:5}},line:293},35:{name:"(anonymous_35)",decl:{start:{line:302,column:14},end:{line:302,column:15}},loc:{start:{line:302,column:28},end:{line:314,column:7}},line:302},36:{name:"(anonymous_36)",decl:{start:{line:316,column:4},end:{line:316,column:5}},loc:{start:{line:316,column:13},end:{line:328,column:5}},line:316},37:{name:"(anonymous_37)",decl:{start:{line:323,column:14},end:{line:323,column:15}},loc:{start:{line:323,column:28},end:{line:327,column:7}},line:323},38:{name:"(anonymous_38)",decl:{start:{line:329,column:4},end:{line:329,column:5}},loc:{start:{line:329,column:15},end:{line:355,column:5}},line:329},39:{name:"(anonymous_39)",decl:{start:{line:340,column:14},end:{line:340,column:15}},loc:{start:{line:340,column:20},end:{line:353,column:9}},line:340},40:{name:"(anonymous_40)",decl:{start:{line:348,column:18},end:{line:348,column:19}},loc:{start:{line:348,column:32},end:{line:352,column:11}},line:348},41:{name:"(anonymous_41)",decl:{start:{line:354,column:15},end:{line:354,column:16}},loc:{start:{line:354,column:26},end:{line:354,column:28}},line:354},42:{name:"(anonymous_42)",decl:{start:{line:367,column:24},end:{line:367,column:25}},loc:{start:{line:367,column:36},end:{line:381,column:5}},line:367},43:{name:"(anonymous_43)",decl:{start:{line:377,column:14},end:{line:377,column:15}},loc:{start:{line:377,column:20},end:{line:380,column:9}},line:377},44:{name:"(anonymous_44)",decl:{start:{line:382,column:14},end:{line:382,column:15}},loc:{start:{line:382,column:26},end:{line:384,column:5}},line:382},45:{name:"(anonymous_45)",decl:{start:{line:385,column:16},end:{line:385,column:17}},loc:{start:{line:385,column:28},end:{line:389,column:5}},line:385},46:{name:"(anonymous_46)",decl:{start:{line:390,column:19},end:{line:390,column:20}},loc:{start:{line:390,column:56},end:{line:454,column:5}},line:390},47:{name:"(anonymous_47)",decl:{start:{line:403,column:14},end:{line:403,column:15}},loc:{start:{line:403,column:28},end:{line:439,column:9}},line:403},48:{name:"(anonymous_48)",decl:{start:{line:405,column:49},end:{line:405,column:50}},loc:{start:{line:405,column:60},end:{line:431,column:11}},line:405},49:{name:"(anonymous_49)",decl:{start:{line:409,column:41},end:{line:409,column:42}},loc:{start:{line:409,column:54},end:{line:429,column:15}},line:409},50:{name:"(anonymous_50)",decl:{start:{line:440,column:15},end:{line:440,column:16}},loc:{start:{line:440,column:26},end:{line:453,column:9}},line:440},51:{name:"(anonymous_51)",decl:{start:{line:455,column:20},end:{line:455,column:21}},loc:{start:{line:455,column:40},end:{line:464,column:5}},line:455},52:{name:"(anonymous_52)",decl:{start:{line:460,column:14},end:{line:460,column:15}},loc:{start:{line:460,column:28},end:{line:463,column:7}},line:460},53:{name:"(anonymous_53)",decl:{start:{line:465,column:14},end:{line:465,column:15}},loc:{start:{line:465,column:48},end:{line:468,column:5}},line:465}},branchMap:{0:{loc:{start:{line:161,column:6},end:{line:175,column:7}},type:"if",locations:[{start:{line:161,column:6},end:{line:175,column:7}},{start:{line:168,column:13},end:{line:175,column:7}}],line:161},1:{loc:{start:{line:162,column:8},end:{line:167,column:9}},type:"if",locations:[{start:{line:162,column:8},end:{line:167,column:9}},{start:{line:165,column:15},end:{line:167,column:9}}],line:162},2:{loc:{start:{line:221,column:6},end:{line:243,column:7}},type:"if",locations:[{start:{line:221,column:6},end:{line:243,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:221},3:{loc:{start:{line:236,column:12},end:{line:241,column:13}},type:"if",locations:[{start:{line:236,column:12},end:{line:241,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:236},4:{loc:{start:{line:245,column:30},end:{line:245,column:46}},type:"default-arg",locations:[{start:{line:245,column:42},end:{line:245,column:46}}],line:245},5:{loc:{start:{line:249,column:6},end:{line:251,column:7}},type:"if",locations:[{start:{line:249,column:6},end:{line:251,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:249},6:{loc:{start:{line:274,column:34},end:{line:274,column:50}},type:"default-arg",locations:[{start:{line:274,column:46},end:{line:274,column:50}}],line:274},7:{loc:{start:{line:277,column:6},end:{line:279,column:7}},type:"if",locations:[{start:{line:277,column:6},end:{line:279,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:277},8:{loc:{start:{line:293,column:30},end:{line:293,column:46}},type:"default-arg",locations:[{start:{line:293,column:42},end:{line:293,column:46}}],line:293},9:{loc:{start:{line:297,column:6},end:{line:299,column:7}},type:"if",locations:[{start:{line:297,column:6},end:{line:299,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:297},10:{loc:{start:{line:324,column:8},end:{line:326,column:9}},type:"if",locations:[{start:{line:324,column:8},end:{line:326,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:324},11:{loc:{start:{line:349,column:12},end:{line:351,column:13}},type:"if",locations:[{start:{line:349,column:12},end:{line:351,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:349},12:{loc:{start:{line:386,column:6},end:{line:388,column:7}},type:"if",locations:[{start:{line:386,column:6},end:{line:388,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:386},13:{loc:{start:{line:386,column:10},end:{line:386,column:48}},type:"binary-expr",locations:[{start:{line:386,column:10},end:{line:386,column:30}},{start:{line:386,column:34},end:{line:386,column:48}}],line:386},14:{loc:{start:{line:390,column:29},end:{line:390,column:54}},type:"default-arg",locations:[{start:{line:390,column:50},end:{line:390,column:54}}],line:390},15:{loc:{start:{line:391,column:6},end:{line:395,column:7}},type:"if",locations:[{start:{line:391,column:6},end:{line:395,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:391},16:{loc:{start:{line:414,column:16},end:{line:428,column:17}},type:"if",locations:[{start:{line:414,column:16},end:{line:428,column:17}},{start:{line:421,column:23},end:{line:428,column:17}}],line:414},17:{loc:{start:{line:433,column:10},end:{line:438,column:11}},type:"if",locations:[{start:{line:433,column:10},end:{line:438,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:433},18:{loc:{start:{line:441,column:10},end:{line:452,column:11}},type:"if",locations:[{start:{line:441,column:10},end:{line:452,column:11}},{start:{line:447,column:17},end:{line:452,column:11}}],line:441}},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,86:0,87:0,88:0,89:0,90:0,91:0,92:0,93:0,94:0,95:0,96:0,97:0,98:0,99:0,100:0,101:0,102:0,103:0,104:0,105:0,106:0,107:0,108:0,109:0,110:0,111:0,112:0,113:0,114:0,115:0,116:0,117:0,118:0,119:0,120:0,121:0,122:0,123:0,124:0,125:0,126:0,127:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:0,136:0,137:0,138:0,139: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,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},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0],5:[0,0],6:[0],7:[0,0],8:[0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0],14:[0],15:[0,0],16:[0,0],17:[0,0],18:[0,0]},inputSourceMap:{version:3,sources:["TableManager.vue"],names:[],mappings:";AA4QA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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",file:"TableManager.vue",sourceRoot:"src/tools/TableManager",sourcesContent:["\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <div>\n <top-bar :menus=\"menus\" :title=\"title\" />\n <v-snackbar v-model=\"showReadOnlyToast\" top :timeout=\"-1\" color=\"orange\">\n <v-icon> mdi-pencil-off </v-icon>\n {{ lockedBy }} is editing this script. Editor is in read-only mode\n <template v-slot:action=\"{ attrs }\">\n <v-btn\n text\n v-bind=\"attrs\"\n color=\"danger\"\n @click=\"confirmLocalUnlock\"\n data-test=\"unlock-button\"\n >\n Unlock\n </v-btn>\n <v-btn\n text\n v-bind=\"attrs\"\n @click=\"\n () => {\n showReadOnlyToast = false\n }\n \"\n >\n dismiss\n </v-btn>\n </template>\n </v-snackbar>\n <v-file-input\n show-size\n v-model=\"fileInput\"\n ref=\"fileInput\"\n accept=\".bin\"\n data-test=\"file-input\"\n style=\"position: fixed; top: -100%\"\n />\n <v-row dense>\n <v-col cols=\"6\">\n <v-text-field\n outlined\n dense\n readonly\n hide-details\n label=\"Filename\"\n v-model=\"fullFilename\"\n id=\"filename\"\n data-test=\"filename\"\n />\n </v-col>\n <v-col cols=\"6\">\n <v-text-field\n outlined\n dense\n readonly\n hide-details\n label=\"Definition\"\n v-model=\"definitionFilename\"\n id=\"definition-filename\"\n data-test=\"definition-filename\"\n />\n </v-col>\n </v-row>\n <v-row dense class=\"mb-1\">\n <v-col cols=\"auto\" class=\"mr-auto\">\n <span class=\"text-body-1 ma-2\">File Download:</span>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadBinary(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-binary\"\n >\n Binary\n <v-icon right dark> mdi-file-code </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadDefinition(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-definition\"\n >\n Definition\n <v-icon right dark> mdi-file-document-edit </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n @click=\"downloadReport(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-report\"\n >\n Report\n <v-icon right dark> mdi-file-document </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-btn\n dense\n color=\"primary\"\n @click=\"upload()\"\n :disabled=\"!uploadScript\"\n data-test=\"upload-file\"\n >\n Upload\n <v-icon right dark> mdi-file-upload </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-btn\n dense\n color=\"primary\"\n @click=\"download()\"\n :disabled=\"!downloadScript\"\n data-test=\"download-file\"\n >\n Download\n <v-icon right dark> mdi-file-download </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <span v-bind=\"attrs\" v-on=\"on\">\n <v-checkbox\n v-model=\"scriptBackground\"\n label=\"B/G\"\n class=\"shrink mt-0\"\n data-test=\"upload-background\"\n />\n </span>\n </template>\n <span>Run upload download scripts in the background</span>\n </v-tooltip>\n </v-col>\n </v-row>\n <v-card>\n <v-card-title>\n Items\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-tabs v-model=\"curTab\">\n <v-tab v-for=\"(table, index) in tables\" :key=\"index\">\n {{ table.name }}\n </v-tab>\n </v-tabs>\n <v-tabs-items v-model=\"curTab\">\n <v-tab-item\n v-for=\"(table, index) in tables\"\n :key=\"`${filename}${index}`\"\n >\n <v-data-table\n :headers=\"table.headers\"\n :items=\"table.rows\"\n :search=\"search\"\n :items-per-page=\"20\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, -1],\n }\"\n calculate-widths\n multi-sort\n dense\n :data-test=\"table.name\"\n >\n <template v-slot:item=\"{ item }\">\n <table-row\n :items=\"item\"\n :key=\"item[0].name\"\n @change=\"onChange(item, $event)\"\n />\n </template>\n <template v-slot:footer v-if=\"tables.length > 1\">\n <div style=\"position: absolute\" class=\"ma-3\">\n <span class=\"text-body-1 mr-3\">Table Download:</span>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadBinary(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-binary\"\n >\n Binary\n <v-icon right dark> mdi-file-code </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadDefinition(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-definition\"\n >\n Definition\n <v-icon right dark> mdi-file-document-edit </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n @click=\"downloadReport(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-report\"\n >\n Report\n <v-icon right dark> mdi-file-document </v-icon>\n </v-btn>\n </div>\n </template>\n </v-data-table>\n </v-tab-item>\n </v-tabs-items>\n </v-card>\n <file-open-save-dialog\n v-if=\"fileOpen\"\n v-model=\"fileOpen\"\n type=\"open\"\n api-url=\"/openc3-api/tables\"\n @file=\"setFile($event)\"\n @error=\"setError($event)\"\n />\n <file-open-save-dialog\n v-if=\"showSaveAs\"\n v-model=\"showSaveAs\"\n type=\"save\"\n require-target-parent-dir\n api-url=\"/openc3-api/tables\"\n :input-filename=\"filename\"\n @filename=\"saveAsFilename($event)\"\n @error=\"setError($event)\"\n />\n <simple-text-dialog\n v-model=\"showError\"\n :title=\"errorTitle\"\n :text=\"errorText\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@openc3/tool-common/src/services/api'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport TableRow from '@/tools/TableManager/TableRow'\nimport FileOpenSaveDialog from '@openc3/tool-common/src/components/FileOpenSaveDialog'\nimport SimpleTextDialog from '@openc3/tool-common/src/components/SimpleTextDialog'\n\nexport default {\n components: {\n TopBar,\n TableRow,\n FileOpenSaveDialog,\n SimpleTextDialog,\n },\n data() {\n return {\n title: 'Table Manager',\n search: '',\n curTab: null,\n tables: [],\n api: null,\n definition: null,\n fileInput: '',\n definitionFilename: '',\n fileNew: false,\n filename: '',\n fileModified: '',\n lockedBy: null,\n fileOpen: false,\n showSave: false,\n showSaveAs: false,\n showError: false,\n errorTitle: '',\n errorText: '',\n uploadScript: false,\n downloadScript: false,\n scriptBackground: true,\n }\n },\n computed: {\n readOnly: function () {\n return !!this.lockedBy\n },\n fullFilename() {\n return `${this.filename} ${this.fileModified}`.trim()\n },\n menus: function () {\n return [\n {\n label: 'File',\n items: [\n {\n label: 'New File',\n icon: 'mdi-file-plus',\n command: () => {\n this.newFile()\n },\n },\n {\n label: 'Open File',\n icon: 'mdi-folder-open',\n command: () => {\n this.openFile()\n },\n },\n {\n divider: true,\n },\n {\n label: 'Save File',\n icon: 'mdi-content-save',\n command: () => {\n this.saveFile()\n },\n },\n {\n label: 'Save As...',\n icon: 'mdi-content-save',\n command: () => {\n this.saveAs()\n },\n },\n {\n divider: true,\n },\n // {\n // label: 'Load Binary',\n // icon: 'mdi-cloud-upload',\n // command: () => {\n // this.loadBinary()\n // },\n // },\n // {\n // divider: true,\n // },\n {\n label: 'Delete File',\n icon: 'mdi-delete',\n command: () => {\n this.delete()\n },\n },\n ],\n },\n ]\n },\n },\n watch: {\n // Everytime the filename changes we figure out if there is an associated upload & download script\n filename: function (val) {\n let upload =\n this.filename.split('/').slice(0, 2).join('/') + '/procedures/upload.rb'\n let download =\n this.filename.split('/').slice(0, 2).join('/') +\n '/procedures/download.rb'\n Api.get(`/openc3-api/tables/${upload}`, {\n headers: {\n Accept: 'application/json',\n // Since we're just checking for existance, 404 is possible so ignore it\n 'Ignore-Errors': '404',\n },\n })\n .then((response) => {\n this.uploadScript = true\n })\n .catch((error) => {\n this.uploadScript = false\n })\n Api.get(`/openc3-api/tables/${download}`, {\n headers: {\n Accept: 'application/json',\n // Since we're just checking for existance, 404 is possible so ignore it\n 'Ignore-Errors': '404',\n },\n })\n .then((response) => {\n this.downloadScript = true\n })\n .catch((error) => {\n this.downloadScript = false\n })\n },\n },\n created() {\n this.api = new OpenC3Api()\n },\n methods: {\n // File menu actions\n newFile: function () {\n this.fileModified = ''\n this.fileNew = true\n this.fileOpen = true\n },\n openFile: function () {\n this.fileOpen = true\n },\n // Called by the FileOpenDialog to set the file contents\n setFile: function ({ file, locked }) {\n // They opened a definition file so create a new binary\n if (file.name.includes('.txt')) {\n if (this.fileNew) {\n this.buildNewBinary(file.name)\n this.fileNew = false\n } else {\n this.getDefinition(file.name)\n }\n } else {\n this.unlockFile() // first unlock what was just being edited\n // Split off the ' *' which indicates a file is modified on the server\n this.filename = file.name.split('*')[0]\n this.fileModified = ''\n this.lockedBy = locked\n this.getDefinition()\n }\n },\n // Called by the FileOpenSaveDialog on error\n setError(event) {\n this.errorTitle = 'Error'\n this.errorText = `Error: ${event}`\n this.errorText = response.data.message\n this.showError = true\n },\n saveFile: function () {\n // Save a file by posting the new contents\n this.showSave = true\n\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n formData.append('tables', JSON.stringify(this.tables))\n Api.post(`/openc3-api/tables/${this.filename}`, {\n data: formData,\n })\n .then((response) => {\n this.fileModified = ''\n setTimeout(() => {\n this.showSave = false\n }, 2000)\n })\n .catch(({ response }) => {\n this.showSave = false\n this.errorTitle = 'Save Error'\n this.errorText = response.data.message\n this.showError = true\n })\n this.lockFile() // Ensure this file is locked for editing\n },\n saveAs: function () {\n this.showSaveAs = true\n },\n saveAsFilename: function (filename) {\n Api.put(`/openc3-api/tables/${this.filename}/save-as/${filename}`).then(\n (response) => {\n this.filename = filename\n this.getDefinition(this.definitionFilename)\n }\n )\n },\n delete: function () {\n if (this.filename !== '') {\n this.$dialog\n .confirm(`Permanently delete file: ${this.filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(`/openc3-api/tables/${this.filename}`, {\n data: {},\n })\n })\n .then((response) => {\n this.newFile()\n })\n .catch((error) => {\n if (error) {\n this.$notify.caution({\n title: 'Error',\n body: `Error deleting file: ${error}`,\n })\n }\n })\n }\n },\n downloadBinary: function (tableName = null) {\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/binary`, {\n data: formData,\n }).then((response) => {\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 // Return BLOB image after conversion\n const blob = new Blob([uInt8Array], {\n type: 'application/octet-stream',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n downloadDefinition: function (tableName = null) {\n const formData = new FormData()\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/definition`, {\n data: formData,\n }).then((response) => {\n const blob = new Blob([response.data.contents], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n downloadReport: function (tableName = null) {\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/report`, {\n data: formData,\n }).then((response) => {\n const header =\n `Binary: ${this.filename}\\n` +\n `Definition: ${this.definitionFilename}\\n\\n`\n const blob = new Blob([header, response.data.contents], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n upload() {\n let upload =\n this.filename.split('/').slice(0, 2).join('/') + '/procedures/upload.rb'\n Api.post(`/script-api/scripts/${upload}/run`, {\n data: {\n environment: [{ key: 'TBL_FILENAME', value: this.filename }],\n },\n }).then((response) => {\n if (this.scriptBackground !== true) {\n window.open(`/tools/scriptrunner/${response.data}`, '_blank')\n }\n })\n },\n download() {\n this.$dialog\n .confirm(\n `Are you sure you want to overwrite ${this.filename}? ` +\n 'You can Save As to create a new file and then Download to preserve the existing file. ' +\n 'Note: Once the download completes you will need to re-open the file to see changes.',\n {\n okText: 'Download (Overwrite!)',\n cancelText: 'Cancel',\n }\n )\n .then(() => {\n let download =\n this.filename.split('/').slice(0, 2).join('/') +\n '/procedures/download.rb'\n Api.post(`/script-api/scripts/${download}/run`, {\n data: {\n environment: [{ key: 'TBL_FILENAME', value: this.filename }],\n },\n }).then((response) => {\n if (this.scriptBackground !== true) {\n window.open(`/tools/scriptrunner/${response.data}`, '_blank')\n }\n })\n })\n .catch((error) => {}) // Cancel, do nothing\n },\n // TODO: Need to load to tmp dir or something before we can saveAs to rename\n // async loadBinary() {\n // this.fileInput = ''\n // this.$refs.fileInput.$refs.input.click()\n // // Wait for the file to be set by the dialog so upload works\n // while (this.fileInput === '') {\n // await new Promise((resolve) => setTimeout(resolve, 500))\n // }\n // this.filename = this.fileInput.name\n // this.saveAs()\n // },\n confirmLocalUnlock: function () {\n this.$dialog\n .confirm(\n 'Are you sure you want to unlock this file for editing? ' +\n 'If another user is editing this file, your changes might conflict with each other.',\n {\n okText: 'Force Unlock',\n cancelText: 'Cancel',\n }\n )\n .then(() => {\n this.lockedBy = null\n return this.lockFile() // Re-lock it as this user so it's locked for anyone else who opens it\n })\n },\n lockFile: function () {\n return Api.post(`/openc3-api/tables/${this.filename}/lock`)\n },\n unlockFile: function () {\n if (this.filename !== '' && !this.readOnly) {\n Api.post(`/openc3-api/tables/${this.filename}/unlock`)\n }\n },\n getDefinition: function (definitionFilename = null) {\n if (!definitionFilename) {\n definitionFilename = this.filename\n .replace('/bin/', '/config/')\n .replace('.bin', '_def.txt')\n }\n this.tables = [] // Clear so table is re-rendered\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', definitionFilename)\n Api.post(`/openc3-api/tables/load`, {\n data: formData,\n })\n .then((response) => {\n this.definitionFilename = definitionFilename\n this.tables = response.data.tables.map((table) => {\n return {\n ...table,\n // Build up the headers for proper searching\n headers: table.headers.map((text, i) => {\n const header = {\n text,\n filterable: text !== 'INDEX',\n }\n if (table.numColumns === 1) {\n // In the 1D table the searchable value is the first value in the row\n // Note the names in 1D are INDEX, NAME, VALUE\n return {\n ...header,\n value: `[0].${text.toLowerCase()}`,\n }\n } else {\n // In the 2D table the searchable value is always in the value attribute\n // of the current column item\n return {\n ...header,\n value: `[${i}].value`,\n }\n }\n }),\n }\n })\n\n if (response.data['errors']) {\n this.$notify.caution({\n title: 'Warning',\n body: response.data['errors'],\n })\n }\n })\n .catch((error) => {\n if (error.response.status == 404) {\n this.$notify.normal({\n title: 'Definition File Not Found',\n body: `Definition file ${definitionFilename} not found. Please select definition file.`,\n })\n this.fileOpen = true\n } else {\n this.$notify.serious({\n title: 'Error',\n body: `Error loading due to ${error.response.statusText}. Status: ${error.response.status}`,\n })\n }\n })\n },\n buildNewBinary: function (filename) {\n const formData = new FormData()\n formData.append('definition', filename)\n Api.post(`/openc3-api/tables/generate`, {\n data: formData,\n }).then((response) => {\n this.filename = response.data.filename\n this.getDefinition(filename)\n })\n },\n onChange: function (item, { index, event }) {\n this.fileModified = '*'\n item[index].value = event\n },\n },\n}\n<\/script>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"5b8170b15742912765b5ce633f335faa3df00d4a"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return sn=function(){return a},a}sn();var rn={components:{TopBar:I,TableRow:q,FileOpenSaveDialog:nn,SimpleTextDialog:cn},data:function(){return sn().f[0]++,sn().s[0]++,{title:"Table Manager",search:"",curTab:null,tables:[],api:null,definition:null,fileInput:"",definitionFilename:"",fileNew:!1,filename:"",fileModified:"",lockedBy:null,fileOpen:!1,showSave:!1,showSaveAs:!1,showError:!1,errorTitle:"",errorText:"",uploadScript:!1,downloadScript:!1,scriptBackground:!0}},computed:{readOnly:function(){return sn().f[1]++,sn().s[1]++,!!this.lockedBy},fullFilename:function(){return sn().f[2]++,sn().s[2]++,"".concat(this.filename," ").concat(this.fileModified).trim()},menus:function(){var n=this;return sn().f[3]++,sn().s[3]++,[{label:"File",items:[{label:"New File",icon:"mdi-file-plus",command:function(){sn().f[4]++,sn().s[4]++,n.newFile()}},{label:"Open File",icon:"mdi-folder-open",command:function(){sn().f[5]++,sn().s[5]++,n.openFile()}},{divider:!0},{label:"Save File",icon:"mdi-content-save",command:function(){sn().f[6]++,sn().s[6]++,n.saveFile()}},{label:"Save As...",icon:"mdi-content-save",command:function(){sn().f[7]++,sn().s[7]++,n.saveAs()}},{divider:!0},{label:"Delete File",icon:"mdi-delete",command:function(){sn().f[8]++,sn().s[8]++,n.delete()}}]}]}},watch:{filename:function(n){var e=this;sn().f[9]++;var t=(sn().s[9]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/upload.rb"),l=(sn().s[10]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/download.rb");sn().s[11]++,C.get("/openc3-api/tables/".concat(t),{headers:{Accept:"application/json","Ignore-Errors":"404"}}).then((function(n){sn().f[10]++,sn().s[12]++,e.uploadScript=!0})).catch((function(n){sn().f[11]++,sn().s[13]++,e.uploadScript=!1})),sn().s[14]++,C.get("/openc3-api/tables/".concat(l),{headers:{Accept:"application/json","Ignore-Errors":"404"}}).then((function(n){sn().f[12]++,sn().s[15]++,e.downloadScript=!0})).catch((function(n){sn().f[13]++,sn().s[16]++,e.downloadScript=!1}))}},created:function(){sn().f[14]++,sn().s[17]++,this.api=new k},methods:{newFile:function(){sn().f[15]++,sn().s[18]++,this.fileModified="",sn().s[19]++,this.fileNew=!0,sn().s[20]++,this.fileOpen=!0},openFile:function(){sn().f[16]++,sn().s[21]++,this.fileOpen=!0},setFile:function(n){var e=n.file,t=n.locked;sn().f[17]++,sn().s[22]++,e.name.includes(".txt")?(sn().b[0][0]++,sn().s[23]++,this.fileNew?(sn().b[1][0]++,sn().s[24]++,this.buildNewBinary(e.name),sn().s[25]++,this.fileNew=!1):(sn().b[1][1]++,sn().s[26]++,this.getDefinition(e.name))):(sn().b[0][1]++,sn().s[27]++,this.unlockFile(),sn().s[28]++,this.filename=e.name.split("*")[0],sn().s[29]++,this.fileModified="",sn().s[30]++,this.lockedBy=t,sn().s[31]++,this.getDefinition())},setError:function(n){sn().f[18]++,sn().s[32]++,this.errorTitle="Error",sn().s[33]++,this.errorText="Error: ".concat(n),sn().s[34]++,this.errorText=response.data.message,sn().s[35]++,this.showError=!0},saveFile:function(){var n=this;sn().f[19]++,sn().s[36]++,this.showSave=!0;var e=(sn().s[37]++,new FormData);sn().s[38]++,e.append("binary",this.filename),sn().s[39]++,e.append("definition",this.definitionFilename),sn().s[40]++,e.append("tables",JSON.stringify(this.tables)),sn().s[41]++,C.post("/openc3-api/tables/".concat(this.filename),{data:e}).then((function(e){sn().f[20]++,sn().s[42]++,n.fileModified="",sn().s[43]++,setTimeout((function(){sn().f[21]++,sn().s[44]++,n.showSave=!1}),2e3)})).catch((function(e){var t=e.response;sn().f[22]++,sn().s[45]++,n.showSave=!1,sn().s[46]++,n.errorTitle="Save Error",sn().s[47]++,n.errorText=t.data.message,sn().s[48]++,n.showError=!0})),sn().s[49]++,this.lockFile()},saveAs:function(){sn().f[23]++,sn().s[50]++,this.showSaveAs=!0},saveAsFilename:function(n){var e=this;sn().f[24]++,sn().s[51]++,C.put("/openc3-api/tables/".concat(this.filename,"/save-as/").concat(n)).then((function(t){sn().f[25]++,sn().s[52]++,e.filename=n,sn().s[53]++,e.getDefinition(e.definitionFilename)}))},delete:function(){var n=this;sn().f[26]++,sn().s[54]++,""!==this.filename?(sn().b[2][0]++,sn().s[55]++,this.$dialog.confirm("Permanently delete file: ".concat(this.filename),{okText:"Delete",cancelText:"Cancel"}).then((function(e){return sn().f[27]++,sn().s[56]++,C["delete"]("/openc3-api/tables/".concat(n.filename),{data:{}})})).then((function(e){sn().f[28]++,sn().s[57]++,n.newFile()})).catch((function(e){sn().f[29]++,sn().s[58]++,e?(sn().b[3][0]++,sn().s[59]++,n.$notify.caution({title:"Error",body:"Error deleting file: ".concat(e)})):sn().b[3][1]++}))):sn().b[2][1]++},downloadBinary:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[4][0]++,null);sn().f[30]++;var e=(sn().s[60]++,new FormData);sn().s[61]++,e.append("binary",this.filename),sn().s[62]++,e.append("definition",this.definitionFilename),sn().s[63]++,null!==n?(sn().b[5][0]++,sn().s[64]++,e.append("table",n)):sn().b[5][1]++,sn().s[65]++,C.post("/openc3-api/tables/binary",{data:e}).then((function(n){sn().f[31]++;var e=(sn().s[66]++,window.atob(n.data.contents)),t=(sn().s[67]++,new Uint8Array(e.length));sn().s[68]++;for(var l=(sn().s[69]++,0);l<e.length;++l)sn().s[70]++,t[l]=e.charCodeAt(l);var i=(sn().s[71]++,new Blob([t],{type:"application/octet-stream"})),o=(sn().s[72]++,document.createElement("a"));sn().s[73]++,o.href=URL.createObjectURL(i),sn().s[74]++,o.setAttribute("download",n.data.filename),sn().s[75]++,o.click()}))},downloadDefinition:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[6][0]++,null);sn().f[32]++;var e=(sn().s[76]++,new FormData);sn().s[77]++,e.append("definition",this.definitionFilename),sn().s[78]++,null!==n?(sn().b[7][0]++,sn().s[79]++,e.append("table",n)):sn().b[7][1]++,sn().s[80]++,C.post("/openc3-api/tables/definition",{data:e}).then((function(n){sn().f[33]++;var e=(sn().s[81]++,new Blob([n.data.contents],{type:"text/plain"})),t=(sn().s[82]++,document.createElement("a"));sn().s[83]++,t.href=URL.createObjectURL(e),sn().s[84]++,t.setAttribute("download",n.data.filename),sn().s[85]++,t.click()}))},downloadReport:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[8][0]++,null);sn().f[34]++;var t=(sn().s[86]++,new FormData);sn().s[87]++,t.append("binary",this.filename),sn().s[88]++,t.append("definition",this.definitionFilename),sn().s[89]++,null!==e?(sn().b[9][0]++,sn().s[90]++,t.append("table",e)):sn().b[9][1]++,sn().s[91]++,C.post("/openc3-api/tables/report",{data:t}).then((function(e){sn().f[35]++;var t=(sn().s[92]++,"Binary: ".concat(n.filename,"\n")+"Definition: ".concat(n.definitionFilename,"\n\n")),l=(sn().s[93]++,new Blob([t,e.data.contents],{type:"text/plain"})),i=(sn().s[94]++,document.createElement("a"));sn().s[95]++,i.href=URL.createObjectURL(l),sn().s[96]++,i.setAttribute("download",e.data.filename),sn().s[97]++,i.click()}))},upload:function(){var n=this;sn().f[36]++;var e=(sn().s[98]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/upload.rb");sn().s[99]++,C.post("/script-api/scripts/".concat(e,"/run"),{data:{environment:[{key:"TBL_FILENAME",value:this.filename}]}}).then((function(e){sn().f[37]++,sn().s[100]++,!0!==n.scriptBackground?(sn().b[10][0]++,sn().s[101]++,window.open("/tools/scriptrunner/".concat(e.data),"_blank")):sn().b[10][1]++}))},download:function(){var n=this;sn().f[38]++,sn().s[102]++,this.$dialog.confirm("Are you sure you want to overwrite ".concat(this.filename,"? ")+"You can Save As to create a new file and then Download to preserve the existing file. Note: Once the download completes you will need to re-open the file to see changes.",{okText:"Download (Overwrite!)",cancelText:"Cancel"}).then((function(){sn().f[39]++;var e=(sn().s[103]++,n.filename.split("/").slice(0,2).join("/")+"/procedures/download.rb");sn().s[104]++,C.post("/script-api/scripts/".concat(e,"/run"),{data:{environment:[{key:"TBL_FILENAME",value:n.filename}]}}).then((function(e){sn().f[40]++,sn().s[105]++,!0!==n.scriptBackground?(sn().b[11][0]++,sn().s[106]++,window.open("/tools/scriptrunner/".concat(e.data),"_blank")):sn().b[11][1]++}))})).catch((function(n){sn().f[41]++}))},confirmLocalUnlock:function(){var n=this;sn().f[42]++,sn().s[107]++,this.$dialog.confirm("Are you sure you want to unlock this file for editing? If another user is editing this file, your changes might conflict with each other.",{okText:"Force Unlock",cancelText:"Cancel"}).then((function(){return sn().f[43]++,sn().s[108]++,n.lockedBy=null,sn().s[109]++,n.lockFile()}))},lockFile:function(){return sn().f[44]++,sn().s[110]++,C.post("/openc3-api/tables/".concat(this.filename,"/lock"))},unlockFile:function(){sn().f[45]++,sn().s[111]++,sn().b[13][0]++,""===this.filename||(sn().b[13][1]++,this.readOnly)?sn().b[12][1]++:(sn().b[12][0]++,sn().s[112]++,C.post("/openc3-api/tables/".concat(this.filename,"/unlock")))},getDefinition:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[14][0]++,null);sn().f[46]++,sn().s[113]++,e?sn().b[15][1]++:(sn().b[15][0]++,sn().s[114]++,e=this.filename.replace("/bin/","/config/").replace(".bin","_def.txt")),sn().s[115]++,this.tables=[];var t=(sn().s[116]++,new FormData);sn().s[117]++,t.append("binary",this.filename),sn().s[118]++,t.append("definition",e),sn().s[119]++,C.post("/openc3-api/tables/load",{data:t}).then((function(t){sn().f[47]++,sn().s[120]++,n.definitionFilename=e,sn().s[121]++,n.tables=t.data.tables.map((function(n){return sn().f[48]++,sn().s[122]++,(0,a.Z)((0,a.Z)({},n),{},{headers:n.headers.map((function(e,t){sn().f[49]++;var l=(sn().s[123]++,{text:e,filterable:"INDEX"!==e});return sn().s[124]++,1===n.numColumns?(sn().b[16][0]++,sn().s[125]++,(0,a.Z)((0,a.Z)({},l),{},{value:"[0].".concat(e.toLowerCase())})):(sn().b[16][1]++,sn().s[126]++,(0,a.Z)((0,a.Z)({},l),{},{value:"[".concat(t,"].value")}))}))})})),sn().s[127]++,t.data["errors"]?(sn().b[17][0]++,sn().s[128]++,n.$notify.caution({title:"Warning",body:t.data["errors"]})):sn().b[17][1]++})).catch((function(t){sn().f[50]++,sn().s[129]++,404==t.response.status?(sn().b[18][0]++,sn().s[130]++,n.$notify.normal({title:"Definition File Not Found",body:"Definition file ".concat(e," not found. Please select definition file.")}),sn().s[131]++,n.fileOpen=!0):(sn().b[18][1]++,sn().s[132]++,n.$notify.serious({title:"Error",body:"Error loading due to ".concat(t.response.statusText,". Status: ").concat(t.response.status)}))}))},buildNewBinary:function(n){var e=this;sn().f[51]++;var t=(sn().s[133]++,new FormData);sn().s[134]++,t.append("definition",n),sn().s[135]++,C.post("/openc3-api/tables/generate",{data:t}).then((function(t){sn().f[52]++,sn().s[136]++,e.filename=t.data.filename,sn().s[137]++,e.getDefinition(n)}))},onChange:function(n,e){var t=e.index,l=e.event;sn().f[53]++,sn().s[138]++,this.fileModified="*",sn().s[139]++,n[t].value=l}}},un=rn,mn=(0,S.Z)(un,i,o,!1,null,null,null),dn=mn.exports},363:function(n,e,t){"use strict";t.r(e);var l=t(9601),i=t.n(l),o=t(2609),a=t.n(o),c=a()(i());c.push([n.id,".v-list[data-v-5fb8d7fb] .v-label{margin-left:5px}.v-list-item__icon[data-v-5fb8d7fb]{margin-right:15px!important}.v-list-item__title[data-v-5fb8d7fb]{color:#fff}",""]),e["default"]=c},9824:function(n,e,t){var l=t(363);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var i=t(3514).Z;i("7bc1978b",l,!0,{sourceMap:!1,shadowMode:!1})}}]);
1
+ (self["webpackChunk_openc3_tool_tablemanager"]=self["webpackChunk_openc3_tool_tablemanager"]||[]).push([[836],{6836:function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return dn}});t(7950),t(4908),t(8178);function l(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",e="66c1a0863beea46849094081e151f477a9803e35",t=new Function("return this")(),i="__coverage__",o={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",statementMap:{0:{start:{line:1,column:13},end:{line:6,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:5,column:2310}},4:{start:{line:1,column:258},end:{line:3,column:58}},5:{start:{line:2,column:12},end:{line:2,column:41}},6:{start:{line:3,column:125},end:{line:3,column:150}},7:{start:{line:3,column:521},end:{line:3,column:538}},8:{start:{line:3,column:831},end:{line:3,column:851}},9:{start:{line:3,column:1148},end:{line:3,column:1174}},10:{start:{line:3,column:1562},end:{line:3,column:1593}},11:{start:{line:3,column:1859},end:{line:3,column:1894}},12:{start:{line:3,column:2150},end:{line:3,column:2181}},13:{start:{line:3,column:2458},end:{line:3,column:2477}},14:{start:{line:3,column:2756},end:{line:3,column:2777}},15:{start:{line:3,column:3023},end:{line:3,column:3304}},16:{start:{line:3,column:3241},end:{line:3,column:3265}},17:{start:{line:3,column:3613},end:{line:3,column:3627}},18:{start:{line:3,column:3720},end:{line:3,column:3734}},19:{start:{line:3,column:3800},end:{line:3,column:3867}},20:{start:{line:3,column:3943},end:{line:3,column:3957}},21:{start:{line:3,column:4023},end:{line:5,column:1417}},22:{start:{line:5,column:139},end:{line:5,column:269}},23:{start:{line:5,column:231},end:{line:5,column:264}},24:{start:{line:5,column:324},end:{line:5,column:1381}},25:{start:{line:5,column:634},end:{line:5,column:671}},26:{start:{line:5,column:938},end:{line:5,column:979}},27:{start:{line:5,column:1236},end:{line:5,column:1273}},28:{start:{line:5,column:1551},end:{line:5,column:1577}},29:{start:{line:5,column:1604},end:{line:5,column:1631}},30:{start:{line:5,column:1687},end:{line:5,column:1703}},31:{start:{line:5,column:1930},end:{line:5,column:1963}},32:{start:{line:5,column:1990},end:{line:5,column:2017}},33:{start:{line:5,column:2075},end:{line:5,column:2093}},34:{start:{line:5,column:2262},end:{line:5,column:2279}},35:{start:{line:7,column:22},end:{line:7,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:6,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:238},end:{line:1,column:239}},loc:{start:{line:1,column:257},end:{line:3,column:59}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:477},end:{line:1,column:478}},loc:{start:{line:1,column:483},end:{line:3,column:11}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:3,column:109},end:{line:3,column:110}},loc:{start:{line:3,column:124},end:{line:3,column:151}},line:3},4:{name:"(anonymous_4)",decl:{start:{line:3,column:505},end:{line:3,column:506}},loc:{start:{line:3,column:520},end:{line:3,column:539}},line:3},5:{name:"(anonymous_5)",decl:{start:{line:3,column:815},end:{line:3,column:816}},loc:{start:{line:3,column:830},end:{line:3,column:852}},line:3},6:{name:"(anonymous_6)",decl:{start:{line:3,column:1132},end:{line:3,column:1133}},loc:{start:{line:3,column:1147},end:{line:3,column:1175}},line:3},7:{name:"(anonymous_7)",decl:{start:{line:3,column:1545},end:{line:3,column:1546}},loc:{start:{line:3,column:1561},end:{line:3,column:1594}},line:3},8:{name:"(anonymous_8)",decl:{start:{line:3,column:1842},end:{line:3,column:1843}},loc:{start:{line:3,column:1858},end:{line:3,column:1895}},line:3},9:{name:"(anonymous_9)",decl:{start:{line:3,column:2133},end:{line:3,column:2134}},loc:{start:{line:3,column:2149},end:{line:3,column:2182}},line:3},10:{name:"(anonymous_10)",decl:{start:{line:3,column:2441},end:{line:3,column:2442}},loc:{start:{line:3,column:2457},end:{line:3,column:2478}},line:3},11:{name:"(anonymous_11)",decl:{start:{line:3,column:2739},end:{line:3,column:2740}},loc:{start:{line:3,column:2755},end:{line:3,column:2778}},line:3},12:{name:"(anonymous_12)",decl:{start:{line:3,column:2999},end:{line:3,column:3e3}},loc:{start:{line:3,column:3022},end:{line:3,column:3305}},line:3},13:{name:"(anonymous_13)",decl:{start:{line:3,column:3225},end:{line:3,column:3226}},loc:{start:{line:3,column:3240},end:{line:3,column:3266}},line:3},14:{name:"(anonymous_14)",decl:{start:{line:3,column:3597},end:{line:3,column:3598}},loc:{start:{line:3,column:3612},end:{line:3,column:3628}},line:3},15:{name:"(anonymous_15)",decl:{start:{line:3,column:3704},end:{line:3,column:3705}},loc:{start:{line:3,column:3719},end:{line:3,column:3735}},line:3},16:{name:"(anonymous_16)",decl:{start:{line:3,column:3778},end:{line:3,column:3779}},loc:{start:{line:3,column:3799},end:{line:3,column:3868}},line:3},17:{name:"(anonymous_17)",decl:{start:{line:3,column:3927},end:{line:3,column:3928}},loc:{start:{line:3,column:3942},end:{line:3,column:3958}},line:3},18:{name:"(anonymous_18)",decl:{start:{line:3,column:4001},end:{line:3,column:4002}},loc:{start:{line:3,column:4022},end:{line:5,column:1418}},line:3},19:{name:"(anonymous_19)",decl:{start:{line:5,column:120},end:{line:5,column:121}},loc:{start:{line:5,column:138},end:{line:5,column:270}},line:5},20:{name:"(anonymous_20)",decl:{start:{line:5,column:214},end:{line:5,column:215}},loc:{start:{line:5,column:230},end:{line:5,column:265}},line:5},21:{name:"(anonymous_21)",decl:{start:{line:5,column:313},end:{line:5,column:314}},loc:{start:{line:5,column:323},end:{line:5,column:1382}},line:5},22:{name:"(anonymous_22)",decl:{start:{line:5,column:617},end:{line:5,column:618}},loc:{start:{line:5,column:633},end:{line:5,column:672}},line:5},23:{name:"(anonymous_23)",decl:{start:{line:5,column:921},end:{line:5,column:922}},loc:{start:{line:5,column:937},end:{line:5,column:980}},line:5},24:{name:"(anonymous_24)",decl:{start:{line:5,column:1219},end:{line:5,column:1220}},loc:{start:{line:5,column:1235},end:{line:5,column:1274}},line:5},25:{name:"(anonymous_25)",decl:{start:{line:5,column:1534},end:{line:5,column:1535}},loc:{start:{line:5,column:1550},end:{line:5,column:1578}},line:5},26:{name:"(anonymous_26)",decl:{start:{line:5,column:1587},end:{line:5,column:1588}},loc:{start:{line:5,column:1603},end:{line:5,column:1632}},line:5},27:{name:"(anonymous_27)",decl:{start:{line:5,column:1671},end:{line:5,column:1672}},loc:{start:{line:5,column:1686},end:{line:5,column:1704}},line:5},28:{name:"(anonymous_28)",decl:{start:{line:5,column:1913},end:{line:5,column:1914}},loc:{start:{line:5,column:1929},end:{line:5,column:1964}},line:5},29:{name:"(anonymous_29)",decl:{start:{line:5,column:1973},end:{line:5,column:1974}},loc:{start:{line:5,column:1989},end:{line:5,column:2018}},line:5},30:{name:"(anonymous_30)",decl:{start:{line:5,column:2059},end:{line:5,column:2060}},loc:{start:{line:5,column:2074},end:{line:5,column:2094}},line:5},31:{name:"(anonymous_31)",decl:{start:{line:5,column:2246},end:{line:5,column:2247}},loc:{start:{line:5,column:2261},end:{line:5,column:2280}},line:5}},branchMap:{0:{loc:{start:{line:5,column:272},end:{line:5,column:1399}},type:"cond-expr",locations:[{start:{line:5,column:296},end:{line:5,column:1394}},{start:{line:5,column:1395},end:{line:5,column:1399}}],line:5},1:{loc:{start:{line:5,column:1427},end:{line:5,column:1738}},type:"cond-expr",locations:[{start:{line:5,column:1442},end:{line:5,column:1729}},{start:{line:5,column:1730},end:{line:5,column:1738}}],line:5},2:{loc:{start:{line:5,column:1739},end:{line:5,column:2130}},type:"cond-expr",locations:[{start:{line:5,column:1756},end:{line:5,column:2121}},{start:{line:5,column:2122},end:{line:5,column:2130}}],line:5}},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},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,21:0,22:0,23:0,24:0,25:0,26:0,27:0,28:0,29:0,30:0,31:0},b:{0:[0,0],1:[0,0],2:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"66c1a0863beea46849094081e151f477a9803e35"},a=t[i]||(t[i]={});a[n]&&a[n].hash===e||(a[n]=o);var c=a[n];return l=function(){return c},c}l(),l().s[0]++;var i=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:{menus:n.menus,title:n.title}}),e("v-snackbar",{attrs:{top:"",timeout:-1,color:"orange"},scopedSlots:n._u([{key:"action",fn:function(t){var i=t.attrs;return l().f[1]++,l().s[4]++,[e("v-btn",n._b({attrs:{text:"",color:"danger","data-test":"unlock-button"},on:{click:n.confirmLocalUnlock}},"v-btn",i,!1),[n._v(" Unlock ")]),e("v-btn",n._b({attrs:{text:""},on:{click:function(){l().f[2]++,l().s[5]++,n.showReadOnlyToast=!1}}},"v-btn",i,!1),[n._v(" dismiss ")])]}}]),model:{value:n.showReadOnlyToast,callback:function(e){l().f[3]++,l().s[6]++,n.showReadOnlyToast=e},expression:"showReadOnlyToast"}},[e("v-icon",[n._v(" mdi-pencil-off ")]),n._v(" "+n._s(n.lockedBy)+" is editing this script. Editor is in read-only mode ")],1),e("v-file-input",{ref:"fileInput",staticStyle:{position:"fixed",top:"-100%"},attrs:{"show-size":"",accept:".bin","data-test":"file-input"},model:{value:n.fileInput,callback:function(e){l().f[4]++,l().s[7]++,n.fileInput=e},expression:"fileInput"}}),e("v-row",{attrs:{dense:""}},[e("v-col",{attrs:{cols:"6"}},[e("v-text-field",{attrs:{outlined:"",dense:"",readonly:"","hide-details":"",label:"Filename",id:"filename","data-test":"filename"},model:{value:n.fullFilename,callback:function(e){l().f[5]++,l().s[8]++,n.fullFilename=e},expression:"fullFilename"}})],1),e("v-col",{attrs:{cols:"6"}},[e("v-text-field",{attrs:{outlined:"",dense:"",readonly:"","hide-details":"",label:"Definition",id:"definition-filename","data-test":"definition-filename"},model:{value:n.definitionFilename,callback:function(e){l().f[6]++,l().s[9]++,n.definitionFilename=e},expression:"definitionFilename"}})],1)],1),e("v-row",{staticClass:"mb-1",attrs:{dense:""}},[e("v-col",{staticClass:"mr-auto",attrs:{cols:"auto"}},[e("span",{staticClass:"text-body-1 ma-2"},[n._v("File Download:")]),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-binary"},on:{click:function(e){return l().f[7]++,l().s[10]++,n.downloadBinary(null)}}},[n._v(" Binary "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-code ")])],1),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-definition"},on:{click:function(e){return l().f[8]++,l().s[11]++,n.downloadDefinition(null)}}},[n._v(" Definition "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document-edit ")])],1),e("v-btn",{attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-file-report"},on:{click:function(e){return l().f[9]++,l().s[12]++,n.downloadReport(null)}}},[n._v(" Report "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-btn",{attrs:{dense:"",color:"primary",disabled:!n.uploadScript,"data-test":"upload-file"},on:{click:function(e){return l().f[10]++,l().s[13]++,n.upload()}}},[n._v(" Upload "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-upload ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-btn",{attrs:{dense:"",color:"primary",disabled:!n.downloadScript,"data-test":"download-file"},on:{click:function(e){return l().f[11]++,l().s[14]++,n.download()}}},[n._v(" Download "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-download ")])],1)],1),e("v-col",{attrs:{cols:"auto"}},[e("v-tooltip",{attrs:{bottom:""},scopedSlots:n._u([{key:"activator",fn:function(t){var i=t.on,o=t.attrs;return l().f[12]++,l().s[15]++,[e("span",n._g(n._b({},"span",o,!1),i),[e("v-checkbox",{staticClass:"shrink mt-0",attrs:{label:"B/G","data-test":"upload-background"},model:{value:n.scriptBackground,callback:function(e){l().f[13]++,l().s[16]++,n.scriptBackground=e},expression:"scriptBackground"}})],1)]}}])},[e("span",[n._v("Run upload download scripts in the background")])])],1)],1),e("v-card",[e("v-card-title",[n._v(" Items "),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[14]++,l().s[17]++,n.search=e},expression:"search"}})],1),e("v-tabs",{model:{value:n.curTab,callback:function(e){l().f[15]++,l().s[18]++,n.curTab=e},expression:"curTab"}},n._l(n.tables,(function(t,i){return l().f[16]++,l().s[19]++,e("v-tab",{key:i},[n._v(" "+n._s(t.name)+" ")])})),1),e("v-tabs-items",{model:{value:n.curTab,callback:function(e){l().f[17]++,l().s[20]++,n.curTab=e},expression:"curTab"}},n._l(n.tables,(function(t,i){return l().f[18]++,l().s[21]++,e("v-tab-item",{key:"".concat(n.filename).concat(i)},[e("v-data-table",{attrs:{headers:t.headers,items:t.rows,search:n.search,"items-per-page":20,"footer-props":{itemsPerPageOptions:[10,20,50,100,-1]},"calculate-widths":"","multi-sort":"",dense:"","data-test":t.name},scopedSlots:n._u([{key:"item",fn:function(t){var i=t.item;return l().f[19]++,l().s[22]++,[e("table-row",{key:i[0].name,attrs:{items:i},on:{change:function(e){return l().f[20]++,l().s[23]++,n.onChange(i,e)}}})]}},n.tables.length>1?(l().b[0][0]++,{key:"footer",fn:function(){return l().f[21]++,l().s[24]++,[e("div",{staticClass:"ma-3",staticStyle:{position:"absolute"}},[e("span",{staticClass:"text-body-1 mr-3"},[n._v("Table Download:")]),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-binary"},on:{click:function(e){return l().f[22]++,l().s[25]++,n.downloadBinary(t.name)}}},[n._v(" Binary "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-code ")])],1),e("v-btn",{staticClass:"mr-3",attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-definition"},on:{click:function(e){return l().f[23]++,l().s[26]++,n.downloadDefinition(t.name)}}},[n._v(" Definition "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document-edit ")])],1),e("v-btn",{attrs:{dense:"",color:"primary",disabled:""==n.filename,"data-test":"download-table-report"},on:{click:function(e){return l().f[24]++,l().s[27]++,n.downloadReport(t.name)}}},[n._v(" Report "),e("v-icon",{attrs:{right:"",dark:""}},[n._v(" mdi-file-document ")])],1)],1)]},proxy:!0}):(l().b[0][1]++,null)],null,!0)})],1)})),1)],1),n.fileOpen?(l().b[1][0]++,e("file-open-save-dialog",{attrs:{type:"open","api-url":"/openc3-api/tables"},on:{file:function(e){return l().f[25]++,l().s[28]++,n.setFile(e)},error:function(e){return l().f[26]++,l().s[29]++,n.setError(e)}},model:{value:n.fileOpen,callback:function(e){l().f[27]++,l().s[30]++,n.fileOpen=e},expression:"fileOpen"}})):(l().b[1][1]++,n._e()),n.showSaveAs?(l().b[2][0]++,e("file-open-save-dialog",{attrs:{type:"save","require-target-parent-dir":"","api-url":"/openc3-api/tables","input-filename":n.filename},on:{filename:function(e){return l().f[28]++,l().s[31]++,n.saveAsFilename(e)},error:function(e){return l().f[29]++,l().s[32]++,n.setError(e)}},model:{value:n.showSaveAs,callback:function(e){l().f[30]++,l().s[33]++,n.showSaveAs=e},expression:"showSaveAs"}})):(l().b[2][1]++,n._e()),e("simple-text-dialog",{attrs:{title:n.errorTitle,text:n.errorText},model:{value:n.showError,callback:function(e){l().f[31]++,l().s[34]++,n.showError=e},expression:"showError"}})],1)},o=(l().s[35]++,[]),a=t(4948),c=(t(5794),t(2501),t(9529),t(1235),t(6710),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(9224),t(8673),t(6886),t(4121),t(523),t(5940),t(3450),t(21)),s=t(6706),r=(t(8233),t(9644)),u=t.n(r),m=t(4091),d=new m["default"],A=u().create({baseURL:location.origin,timeout:6e4,params:{}});A.interceptors.response.use((function(n){return n}),(function(n){if(n.response){var e,t,l,i,o,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!==(i=n.response)&&void 0!==i&&null!==(o=i.data)&&void 0!==o&&o.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 A;m+="".concat(null===(A=n.response)||void 0===A?void 0:A.data)}throw d.$notify.serious({title:"Network error",body:m}),n}throw n}));var f=A,p=function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t){var l,i,o,a,s,r,u,m,d,A=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(l=A.length>2&&void 0!==A[2]?A[2]:{},i=l.data,o=l.params,a=void 0===o?{}:o,s=l.headers,r=l.noAuth,u=void 0!==r&&r,m=l.noScope,d=void 0!==m&&m,u){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:s["Authorization"]=localStorage.openc3Token;case 11:return d||a["scope"]||(a["scope"]=window.openc3Scope),n.abrupt("return",f({method:e,url:t,data:i,params:a,headers:s}));case 13:case"end":return n.stop()}}),n,null,[[2,7]])})));return function(e,t){return n.apply(this,arguments)}}(),h={Accept:"application/json"},v=(0,a.Z)((0,a.Z)({},h),{},{"Content-Type":"application/json"}),C={get:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,i=void 0===l?h:l,o=e.noScope,a=e.noAuth;return p("get",n,{params:t,headers:i,noScope:o,noAuth:a})},put:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,i=e.headers,o=void 0===i?v:i,a=e.noScope,c=e.noAuth;return p("put",n,{data:t,params:l,headers:o,noScope:a,noAuth:c})},post:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.data,l=e.params,i=e.headers,o=void 0===i?v:i,a=e.noScope,c=e.noAuth;return p("post",n,{data:t,params:l,headers:o,noScope:a,noAuth:c})},delete:function(n){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e.params,l=e.headers,i=void 0===l?h:l,o=e.noScope,a=e.noAuth;return p("delete",n,{params:t,headers:i,noScope:o,noAuth:a})}},b=t(6632),_=t(4567),g=t(6812),y=t(6274),k=(t(1372),t(1245),t(7233),t(5734),function(){function n(){(0,_.Z)(this,n),(0,y.Z)(this,"id",1)}return(0,g.Z)(n,[{key:"exec",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t){var l,i,o,s,r=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return l=r.length>2&&void 0!==r[2]?r[2]:{},i=r.length>3&&void 0!==r[3]?r[3]:{},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:return this.id=this.id+1,n.prev=11,l["scope"]=window.openc3Scope,n.next=15,f.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:t,id:this.id,keyword_params:l},{headers:(0,a.Z)({Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc"},i)});case 15:return o=n.sent,n.abrupt("return",o.data.result);case 19:throw n.prev=19,n.t1=n["catch"](11),s=new Error,n.t1.response?(s.name=n.t1.response.data.error.data.class,s.message=n.t1.response.data.error.data.message):n.t1.request?(s.name="Request error",s.message="Request error, no response received"):s.name="Unknown error",s;case 24:case"end":return n.stop()}}),n,this,[[2,7],[11,19]])})));function e(e,t){return n.apply(this,arguments)}return e}()},{key:"decode_openc3_type",value:function(n){if(null!==n&&"object"===(0,b.Z)(n)&&"Float"==n.json_class&&n.raw){if("NaN"==n.raw)return NaN;if("Infinity"==n.raw)return 1/0;if("-Infinity"==n.raw)return-1/0}return null}},{key:"encode_openc3_type",value:function(n){return Number.isNaN(n)?{json_class:"Float",raw:"NaN"}:n==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:n==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}},{key:"get_all_interface_info",value:function(){return this.exec("get_all_interface_info",[])}},{key:"connect_interface",value:function(n){return this.exec("connect_interface",[n])}},{key:"disconnect_interface",value:function(n){return this.exec("disconnect_interface",[n])}},{key:"get_all_router_info",value:function(){return this.exec("get_all_router_info",[])}},{key:"connect_router",value:function(n){return this.exec("connect_router",[n])}},{key:"disconnect_router",value:function(n){return this.exec("disconnect_router",[n])}},{key:"get_all_target_info",value:function(){return this.exec("get_all_target_info",[])}},{key:"get_tlm_cnts",value:function(n){return this.exec("get_tlm_cnts",[n])}},{key:"get_item",value:function(n,e,t){return this.exec("get_item",[n,e,t])}},{key:"get_parameter",value:function(n,e,t){return this.exec("get_parameter",[n,e,t])}},{key:"get_all_packet_logger_info",value:function(){return this.exec("get_all_packet_logger_info",[])}},{key:"start_logging",value:function(){return this.exec("start_logging",[])}},{key:"stop_logging",value:function(){return this.exec("stop_logging",[])}},{key:"start_cmd_log",value:function(n){return this.exec("start_cmd_log",[n])}},{key:"start_tlm_log",value:function(n){return this.exec("start_tlm_log",[n])}},{key:"stop_cmd_log",value:function(n){return this.exec("stop_cmd_log",[n])}},{key:"stop_tlm_log",value:function(n){return this.exec("stop_tlm_log",[n])}},{key:"get_server_status",value:function(){return this.exec("get_server_status",[])}},{key:"get_limits_sets",value:function(){return this.exec("get_limits_sets",[])}},{key:"get_limits_set",value:function(){return this.exec("get_limits_set",[])}},{key:"set_limits_set",value:function(n){return this.exec("set_limits_set",[n])}},{key:"get_background_tasks",value:function(){return this.exec("get_background_tasks",[])}},{key:"start_background_task",value:function(n){return this.exec("start_background_task",[n])}},{key:"stop_background_task",value:function(n){return this.exec("stop_background_task",[n])}},{key:"get_oldest_logfile",value:function(){return this.exec("get_oldest_logfile",[])}},{key:"get_target",value:function(n){return this.exec("get_target",[n])}},{key:"get_target_list",value:function(){return this.exec("get_target_list",[])}},{key:"get_telemetry",value:function(n,e){return this.exec("get_telemetry",[n,e])}},{key:"get_all_telemetry",value:function(n){return this.exec("get_all_telemetry",[n])}},{key:"get_all_telemetry_names",value:function(n){return this.exec("get_all_telemetry_names",[n])}},{key:"get_tlm_packet",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t,l){var i,o,a,s;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return n.next=2,this.exec("get_tlm_packet",[e,t],{type:l});case 2:if(i=n.sent,null!=i)for(o=i.length,a=null,s=0;s<o;s++)a=this.decode_openc3_type(i[s][1]),null!==a&&(i[s][1]=a);return n.abrupt("return",i);case 5:case"end":return n.stop()}}),n,this)})));function e(e,t,l){return n.apply(this,arguments)}return e}()},{key:"get_packet_derived_items",value:function(n,e){return this.exec("get_packet_derived_items",[n,e])}},{key:"get_tlm_buffer",value:function(n,e){return this.exec("get_tlm_buffer",[n,e])}},{key:"get_tlm_values",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e){var t,l,i,o;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:return n.next=2,this.exec("get_tlm_values",[e]);case 2:for(t=n.sent,l=t[0].length,i=null,o=0;o<l;o++)i=this.decode_openc3_type(t[0][o]),null!==i&&(t[0][o]=i);return n.abrupt("return",t);case 7:case"end":return n.stop()}}),n,this)})));function e(e){return n.apply(this,arguments)}return e}()},{key:"get_limits",value:function(n,e,t){return this.exec("get_limits",[n,e,t])}},{key:"tlm",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e,t,l){var i,o,a,s,r=arguments;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(i=r.length>3&&void 0!==r[3]?r[3]:"CONVERTED",o=null,void 0!==t){n.next=8;break}return n.next=5,this.exec("tlm",[e]);case 5:o=n.sent,n.next=24;break;case 8:if(void 0!==l){n.next=21;break}if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(t)){n.next=15;break}return n.next=12,this.exec("tlm",[e],{type:t});case 12:o=n.sent,n.next=19;break;case 15:throw a=new Error,a.name="TypeError",a.message="Invalid data type ".concat(t,". Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS."),a;case 19:n.next=24;break;case 21:return n.next=23,this.exec("tlm",[e,t,l],{type:i});case 23:o=n.sent;case 24:return s=this.decode_openc3_type(o),null!==s&&(o=s),n.abrupt("return",o);case 27:case"end":return n.stop()}}),n,this)})));function e(e,t,l){return n.apply(this,arguments)}return e}()},{key:"get_all_commands",value:function(n){return this.exec("get_all_commands",[n])}},{key:"get_all_command_names",value:function(n){return this.exec("get_all_command_names",[n])}},{key:"get_command",value:function(n,e){return this.exec("get_command",[n,e])}},{key:"get_cmd_cnts",value:function(n){return this.exec("get_cmd_cnts",[n])}},{key:"get_cmd_value",value:function(n,e,t){var l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"CONVERTED";return this.exec("get_cmd_value",[n,e,t,l])}},{key:"get_cmd_buffer",value:function(n,e){return this.exec("get_cmd_buffer",[n,e])}},{key:"_cmd",value:function(n,e,t,l,i){var o=null;for(var a in l)Object.prototype.hasOwnProperty.call(l,a)&&(o=this.encode_openc3_type(l[a]),null!==o&&(l[a]=o));return this.exec(n,[e,t,l],{},i)}},{key:"get_cmd_hazardous",value:function(n,e,t){return void 0===e?this.exec("get_cmd_hazardous",n):this._cmd("get_cmd_hazardous",n,e,t)}},{key:"cmd",value:function(n,e,t){var l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return void 0===e?this.exec("cmd",n,{},l):this._cmd("cmd",n,e,t,l)}},{key:"cmd_no_range_check",value:function(n,e,t){return void 0===e?this.exec("cmd_no_range_check",n):this._cmd("cmd_no_range_check",n,e,t)}},{key:"cmd_raw",value:function(n,e,t){return void 0===e?this.exec("cmd_raw",n):this._cmd("cmd_raw",n,e,t)}},{key:"cmd_raw_no_range_check",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_range_check",n):this._cmd("cmd_raw_no_range_check",n,e,t)}},{key:"cmd_no_hazardous_check",value:function(n,e,t){return void 0===e?this.exec("cmd_no_hazardous_check",n):this._cmd("cmd_no_hazardous_check",n,e,t)}},{key:"cmd_no_checks",value:function(n,e,t){return void 0===e?this.exec("cmd_no_checks",n):this._cmd("cmd_no_checks",n,e,t)}},{key:"cmd_raw_no_hazardous_check",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_hazardous_check",n):this._cmd("cmd_raw_no_hazardous_check",n,e,t)}},{key:"cmd_raw_no_checks",value:function(n,e,t){return void 0===e?this.exec("cmd_raw_no_checks",n):this._cmd("cmd_raw_no_checks",n,e,t)}},{key:"get_interface_names",value:function(){return this.exec("get_interface_names",[])}},{key:"send_raw",value:function(n,e){return this.exec("send_raw",[n,e])}},{key:"list_configs",value:function(n){return this.exec("list_configs",[n])}},{key:"load_config",value:function(n,e){return this.exec("load_config",[n,e])}},{key:"save_config",value:function(n,e,t){return this.exec("save_config",[n,e,t])}},{key:"delete_config",value:function(n,e){return this.exec("delete_config",[n,e])}},{key:"get_out_of_limits",value:function(){return this.exec("get_out_of_limits",[])}},{key:"get_overall_limits_state",value:function(n){return this.exec("get_overall_limits_state",[n])}},{key:"list_settings",value:function(){return this.exec("list_settings",[])}},{key:"get_all_settings",value:function(){return this.exec("get_all_settings",[])}},{key:"get_setting",value:function(n){return this.exec("get_setting",[n])}},{key:"get_settings",value:function(n){return this.exec("get_settings",n)}},{key:"save_setting",value:function(n,e){return this.exec("save_setting",[n,e])}},{key:"hashString",value:function(){var n=(0,s.Z)((0,c.Z)().mark((function n(e){var t,l,i;return(0,c.Z)().wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(!window.isSecureContext){n.next=7;break}return t=(new TextEncoder).encode(e),n.next=4,crypto.subtle.digest("SHA-256",t);case 4:return l=n.sent,i=new Uint8Array(l),n.abrupt("return",Array.from(i).map((function(n){return n.toString(16).padStart(2,"0")})).join(""));case 7:case"end":return n.stop()}}),n)})));function e(e){return n.apply(this,arguments)}return e}()}]),n}()),w=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 i=l.on,o=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",o,!1),i),[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,i){return[l.divider?e("v-divider"):e("v-list-item",{key:i,attrs:{disabled:l.disabled,"data-test":n.formatDT("".concat(n.title," ").concat(t.label," ").concat(l.label))},on:{click:l.command}},[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,value:l.label},model:{value:n.checked,callback:function(e){n.checked=e},expression:"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)])},x=[],T=(t(1639),{props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(n){return n.replaceAll(" ","-").toLowerCase()}},mounted:function(){document.title=this.title}}),F=T,S=(t(9824),t(3483)),D=(0,S.Z)(F,w,x,!1,null,"5fb8d7fb",null),I=D.exports;function E(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",e="6b56357c4971159e02acc77584d3fbb23919539f",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",statementMap:{0:{start:{line:1,column:13},end:{line:2,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:1,column:441}},4:{start:{line:1,column:303},end:{line:1,column:435}},5:{start:{line:1,column:391},end:{line:1,column:431}},6:{start:{line:3,column:22},end:{line:3,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:2,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:282},end:{line:1,column:283}},loc:{start:{line:1,column:302},end:{line:1,column:436}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:374},end:{line:1,column:375}},loc:{start:{line:1,column:390},end:{line:1,column:432}},line:1}},branchMap:{0:{loc:{start:{line:1,column:153},end:{line:1,column:258}},type:"cond-expr",locations:[{start:{line:1,column:174},end:{line:1,column:249}},{start:{line:1,column:250},end:{line:1,column:258}}],line:1}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},f:{0:0,1:0,2:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"6b56357c4971159e02acc77584d3fbb23919539f"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return E=function(){return a},a}E(),E().s[0]++;var O=function(){E().f[0]++;var n=(E().s[1]++,this),e=(E().s[2]++,n._self._c);return E().s[3]++,e("tr",[e("td",{staticClass:"text-start"},[n._v(n._s(n.dataItems[0].index))]),n.oneDimensional?(E().b[0][0]++,e("td",{staticClass:"text-start"},[n._v(n._s(n.dataItems[0].name))])):(E().b[0][1]++,n._e()),n._l(n.dataItems,(function(t,l){return E().f[1]++,E().s[4]++,e("table-item",{key:t.name,attrs:{item:t},on:{change:function(e){return E().f[2]++,E().s[5]++,n.onChange(t,l,e)}}})}))],2)},R=(E().s[6]++,[]);function N(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",e="5279000e2c83e7cb9ddd59a48285c37ed2248999",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",statementMap:{0:{start:{line:1,column:13},end:{line:2,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:1,column:976}},4:{start:{line:1,column:303},end:{line:1,column:321}},5:{start:{line:1,column:598},end:{line:1,column:616}},6:{start:{line:1,column:904},end:{line:1,column:940}},7:{start:{line:3,column:22},end:{line:3,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:2,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:287},end:{line:1,column:288}},loc:{start:{line:1,column:302},end:{line:1,column:322}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:582},end:{line:1,column:583}},loc:{start:{line:1,column:597},end:{line:1,column:617}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:888},end:{line:1,column:889}},loc:{start:{line:1,column:903},end:{line:1,column:941}},line:1}},branchMap:{0:{loc:{start:{line:1,column:76},end:{line:1,column:972}},type:"cond-expr",locations:[{start:{line:1,column:93},end:{line:1,column:349}},{start:{line:1,column:350},end:{line:1,column:972}}],line:1},1:{loc:{start:{line:1,column:350},end:{line:1,column:972}},type:"cond-expr",locations:[{start:{line:1,column:372},end:{line:1,column:644}},{start:{line:1,column:645},end:{line:1,column:972}}],line:1}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0],1:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"5279000e2c83e7cb9ddd59a48285c37ed2248999"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return N=function(){return a},a}N(),N().s[0]++;var M=function(){N().f[0]++;var n=(N().s[1]++,this),e=(N().s[2]++,n._self._c);return N().s[3]++,e("td",[n.isCheckbox?(N().b[0][0]++,e("v-checkbox",{attrs:{dense:"","hide-details":"",disabled:!n.dataItem.editable,"data-test":"table-item-checkbox"},on:{change:n.checkboxChange},model:{value:n.checkValue,callback:function(e){N().f[1]++,N().s[4]++,n.checkValue=e},expression:"checkValue"}})):(N().b[0][1]++,n.dataItem.states?(N().b[1][0]++,e("v-select",{attrs:{dense:"","hide-details":"",items:n.itemStates,disabled:!n.dataItem.editable,"data-test":"table-item-select"},on:{change:n.stateChange},model:{value:n.stateValue,callback:function(e){N().f[2]++,N().s[5]++,n.stateValue=e},expression:"stateValue"}})):(N().b[1][1]++,e("v-text-field",{attrs:{solo:"",dense:"","single-line":"","hide-no-data":"","hide-details":"",disabled:!n.dataItem.editable,"data-test":"table-item-text-field"},on:{change:n.textChange},model:{value:n.dataItem.value,callback:function(e){N().f[3]++,N().s[6]++,n.$set(n.dataItem,"value",e)},expression:"dataItem.value"}})))],1)},B=(N().s[7]++,[]),$=t(8571);t(4769),t(5883),t(6728),t(9228);function U(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",e="b171d632b23d95088628893755684fe62744b7ac",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableItem.vue",statementMap:{0:{start:{line:10,column:4},end:{line:14,column:5}},1:{start:{line:17,column:4},end:{line:19,column:5}},2:{start:{line:18,column:6},end:{line:18,column:65}},3:{start:{line:20,column:4},end:{line:22,column:5}},4:{start:{line:21,column:6},end:{line:21,column:45}},5:{start:{line:26,column:19},end:{line:26,column:23}},6:{start:{line:27,column:6},end:{line:35,column:7}},7:{start:{line:28,column:8},end:{line:32,column:9}},8:{start:{line:29,column:10},end:{line:31,column:11}},9:{start:{line:30,column:12},end:{line:30,column:26}},10:{start:{line:34,column:8},end:{line:34,column:22}},11:{start:{line:36,column:6},end:{line:36,column:19}},12:{start:{line:39,column:19},end:{line:39,column:21}},13:{start:{line:40,column:6},end:{line:42,column:7}},14:{start:{line:41,column:8},end:{line:41,column:49}},15:{start:{line:43,column:6},end:{line:43,column:19}},16:{start:{line:48,column:6},end:{line:52,column:7}},17:{start:{line:49,column:8},end:{line:49,column:39}},18:{start:{line:51,column:8},end:{line:51,column:41}},19:{start:{line:56,column:18},end:{line:58,column:7}},20:{start:{line:57,column:17},end:{line:57,column:62}},21:{start:{line:59,column:6},end:{line:59,column:33}},22:{start:{line:62,column:6},end:{line:62,column:47}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:9,column:2},end:{line:9,column:3}},loc:{start:{line:9,column:9},end:{line:15,column:3}},line:9},1:{name:"(anonymous_1)",decl:{start:{line:16,column:2},end:{line:16,column:3}},loc:{start:{line:16,column:12},end:{line:23,column:3}},line:16},2:{name:"(anonymous_2)",decl:{start:{line:25,column:16},end:{line:25,column:17}},loc:{start:{line:25,column:28},end:{line:37,column:5}},line:25},3:{name:"(anonymous_3)",decl:{start:{line:38,column:16},end:{line:38,column:17}},loc:{start:{line:38,column:28},end:{line:44,column:5}},line:38},4:{name:"(anonymous_4)",decl:{start:{line:47,column:20},end:{line:47,column:21}},loc:{start:{line:47,column:32},end:{line:53,column:5}},line:47},5:{name:"(anonymous_5)",decl:{start:{line:54,column:17},end:{line:54,column:18}},loc:{start:{line:54,column:29},end:{line:60,column:5}},line:54},6:{name:"(anonymous_6)",decl:{start:{line:57,column:8},end:{line:57,column:9}},loc:{start:{line:57,column:17},end:{line:57,column:62}},line:57},7:{name:"(anonymous_7)",decl:{start:{line:61,column:16},end:{line:61,column:17}},loc:{start:{line:61,column:28},end:{line:63,column:5}},line:61}},branchMap:{0:{loc:{start:{line:17,column:4},end:{line:19,column:5}},type:"if",locations:[{start:{line:17,column:4},end:{line:19,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:17},1:{loc:{start:{line:20,column:4},end:{line:22,column:5}},type:"if",locations:[{start:{line:20,column:4},end:{line:22,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:20},2:{loc:{start:{line:27,column:6},end:{line:35,column:7}},type:"if",locations:[{start:{line:27,column:6},end:{line:35,column:7}},{start:{line:33,column:13},end:{line:35,column:7}}],line:27},3:{loc:{start:{line:29,column:10},end:{line:31,column:11}},type:"if",locations:[{start:{line:29,column:10},end:{line:31,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:29},4:{loc:{start:{line:29,column:14},end:{line:29,column:58}},type:"binary-expr",locations:[{start:{line:29,column:14},end:{line:29,column:33}},{start:{line:29,column:37},end:{line:29,column:58}}],line:29},5:{loc:{start:{line:48,column:6},end:{line:52,column:7}},type:"if",locations:[{start:{line:48,column:6},end:{line:52,column:7}},{start:{line:50,column:13},end:{line:52,column:7}}],line:48}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0]},inputSourceMap:{version:3,sources:["TableItem.vue"],names:[],mappings:";AAwDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"TableItem.vue",sourceRoot:"src/tools/TableManager",sourcesContent:['\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <td>\n <v-checkbox\n v-if="isCheckbox"\n dense\n hide-details\n v-model="checkValue"\n @change="checkboxChange"\n :disabled="!dataItem.editable"\n data-test="table-item-checkbox"\n />\n <v-select\n v-else-if="dataItem.states"\n dense\n hide-details\n v-model="stateValue"\n :items="itemStates"\n @change="stateChange"\n :disabled="!dataItem.editable"\n data-test="table-item-select"\n />\n <v-text-field\n v-else\n solo\n dense\n single-line\n hide-no-data\n hide-details\n v-model="dataItem.value"\n @change="textChange"\n :disabled="!dataItem.editable"\n data-test="table-item-text-field"\n />\n </td>\n</template>\n\n<script>\nexport default {\n props: {\n item: {\n type: Object,\n required: true,\n },\n },\n data() {\n return {\n dataItem: this.item,\n stateValue: null,\n checkValue: false,\n }\n },\n created() {\n if (this.dataItem.states) {\n this.stateValue = this.dataItem.states[this.dataItem.value]\n }\n if (this.isCheckbox) {\n this.checkValue = this.stateValue === 1\n }\n },\n computed: {\n isCheckbox: function () {\n let result = true\n if (this.dataItem.states) {\n for (const state of Object.keys(this.dataItem.states)) {\n if (state !== \'CHECKED\' && state !== \'UNCHECKED\') {\n result = false\n }\n }\n } else {\n result = false\n }\n return result\n },\n itemStates: function () {\n let result = []\n for (const [text, value] of Object.entries(this.dataItem.states)) {\n result.push({ text: text, value: value })\n }\n return result\n },\n },\n methods: {\n checkboxChange: function () {\n if (this.checkValue) {\n this.$emit(\'change\', \'CHECKED\')\n } else {\n this.$emit(\'change\', \'UNCHECKED\')\n }\n },\n stateChange: function () {\n // Lookup the state key that corresponds to the value\n let state = Object.keys(this.dataItem.states).find(\n (key) => this.dataItem.states[key] === this.stateValue\n )\n this.$emit(\'change\', state)\n },\n textChange: function () {\n this.$emit(\'change\', this.dataItem.value)\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"b171d632b23d95088628893755684fe62744b7ac"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return U=function(){return a},a}U();var j={props:{item:{type:Object,required:!0}},data:function(){return U().f[0]++,U().s[0]++,{dataItem:this.item,stateValue:null,checkValue:!1}},created:function(){U().f[1]++,U().s[1]++,this.dataItem.states?(U().b[0][0]++,U().s[2]++,this.stateValue=this.dataItem.states[this.dataItem.value]):U().b[0][1]++,U().s[3]++,this.isCheckbox?(U().b[1][0]++,U().s[4]++,this.checkValue=1===this.stateValue):U().b[1][1]++},computed:{isCheckbox:function(){U().f[2]++;var n=(U().s[5]++,!0);if(U().s[6]++,this.dataItem.states){U().b[2][0]++,U().s[7]++;for(var e=0,t=Object.keys(this.dataItem.states);e<t.length;e++){var l=t[e];U().s[8]++,U().b[4][0]++,"CHECKED"!==l&&(U().b[4][1]++,"UNCHECKED"!==l)?(U().b[3][0]++,U().s[9]++,n=!1):U().b[3][1]++}}else U().b[2][1]++,U().s[10]++,n=!1;return U().s[11]++,n},itemStates:function(){U().f[3]++;var n=(U().s[12]++,[]);U().s[13]++;for(var e=0,t=Object.entries(this.dataItem.states);e<t.length;e++){var l=(0,$.Z)(t[e],2),i=l[0],o=l[1];U().s[14]++,n.push({text:i,value:o})}return U().s[15]++,n}},methods:{checkboxChange:function(){U().f[4]++,U().s[16]++,this.checkValue?(U().b[5][0]++,U().s[17]++,this.$emit("change","CHECKED")):(U().b[5][1]++,U().s[18]++,this.$emit("change","UNCHECKED"))},stateChange:function(){var n=this;U().f[5]++;var e=(U().s[19]++,Object.keys(this.dataItem.states).find((function(e){return U().f[6]++,U().s[20]++,n.dataItem.states[e]===n.stateValue})));U().s[21]++,this.$emit("change",e)},textChange:function(){U().f[7]++,U().s[22]++,this.$emit("change",this.dataItem.value)}}},L=j,Z=(0,S.Z)(L,M,B,!1,null,null,null),P=Z.exports;function V(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",e="54fa022521ac1c3e49273e12ef3df639b236b1fa",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableRow.vue",statementMap:{0:{start:{line:15,column:4},end:{line:17,column:5}},1:{start:{line:21,column:6},end:{line:25,column:7}},2:{start:{line:22,column:8},end:{line:22,column:19}},3:{start:{line:24,column:8},end:{line:24,column:20}},4:{start:{line:30,column:6},end:{line:30,column:58}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:14,column:2},end:{line:14,column:3}},loc:{start:{line:14,column:9},end:{line:18,column:3}},line:14},1:{name:"(anonymous_1)",decl:{start:{line:20,column:4},end:{line:20,column:5}},loc:{start:{line:20,column:21},end:{line:26,column:5}},line:20},2:{name:"(anonymous_2)",decl:{start:{line:29,column:14},end:{line:29,column:15}},loc:{start:{line:29,column:44},end:{line:31,column:5}},line:29}},branchMap:{0:{loc:{start:{line:21,column:6},end:{line:25,column:7}},type:"if",locations:[{start:{line:21,column:6},end:{line:25,column:7}},{start:{line:23,column:13},end:{line:25,column:7}}],line:21}},s:{0:0,1:0,2:0,3:0,4:0},f:{0:0,1:0,2:0},b:{0:[0,0]},inputSourceMap:{version:3,sources:["TableRow.vue"],names:[],mappings:";AAiCA;;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",file:"TableRow.vue",sourceRoot:"src/tools/TableManager",sourcesContent:['\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <tr>\n <td class="text-start">{{ dataItems[0].index }}</td>\n <td class="text-start" v-if="oneDimensional">{{ dataItems[0].name }}</td>\n <table-item\n v-for="(item, index) in dataItems"\n :key="item.name"\n :item="item"\n @change="onChange(item, index, $event)"\n />\n </tr>\n</template>\n\n<script>\nimport TableItem from \'@/tools/TableManager/TableItem\'\n\nexport default {\n components: {\n TableItem,\n },\n props: {\n items: {\n type: Object,\n required: true,\n },\n },\n data() {\n return {\n dataItems: this.items,\n }\n },\n computed: {\n oneDimensional() {\n if (this.dataItems.length === 1) {\n return true\n } else {\n return false\n }\n },\n },\n methods: {\n onChange: function (item, index, event) {\n this.$emit(\'change\', { index: index, event: event })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"54fa022521ac1c3e49273e12ef3df639b236b1fa"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return V=function(){return a},a}V();var H={components:{TableItem:P},props:{items:{type:Object,required:!0}},data:function(){return V().f[0]++,V().s[0]++,{dataItems:this.items}},computed:{oneDimensional:function(){return V().f[1]++,V().s[1]++,1===this.dataItems.length?(V().b[0][0]++,V().s[2]++,!0):(V().b[0][1]++,V().s[3]++,!1)}},methods:{onChange:function(n,e,t){V().f[2]++,V().s[4]++,this.$emit("change",{index:e,event:t})}}},G=H,z=(0,S.Z)(G,O,R,!1,null,null,null),q=z.exports,Y=(t(4083),function(){var n=this,e=n._self._c;return e("v-dialog",{attrs:{width:"600"},on:{keydown:function(e){return!e.type.indexOf("key")&&n._k(e.keyCode,"enter",13,e.key,"Enter")?null:n.success()}},model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[e("v-card",[e("form",{on:{submit:function(e){return e.preventDefault(),n.success.apply(null,arguments)}}},[e("v-system-bar",[e("v-spacer"),e("span",[n._v(" "+n._s(n.title)+" ")]),e("v-spacer")],1),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("v-row",{attrs:{dense:""}},[e("v-text-field",{attrs:{flat:"",autofocus:"","solo-inverted":"","hide-details":"",clearable:"",label:"Search","data-test":"file-open-save-search"},on:{input:n.handleSearch},model:{value:n.search,callback:function(e){n.search=e},expression:"search"}})],1),e("v-row",{staticClass:"mt-2",attrs:{dense:""}},[e("v-treeview",{ref:"tree",staticStyle:{width:"100%"},attrs:{dense:"",activatable:"","return-object":"",items:n.items,search:n.search,"open-on-click":"open"===n.type},on:{"update:active":n.activeFile},scopedSlots:n._u([{key:"prepend",fn:function(t){var l=t.item,i=t.open;return[l.file?e("v-icon",[n._v(" "+n._s("mdi-language-ruby")+" ")]):e("v-icon",[n._v(" "+n._s(i?"mdi-folder-open":"mdi-folder")+" ")])]}}]),model:{value:n.tree,callback:function(e){n.tree=e},expression:"tree"}})],1),e("v-row",{staticClass:"my-2"},[e("v-text-field",{attrs:{"hide-details":"",label:"Filename","data-test":"file-open-save-filename",disabled:"open"===n.type},model:{value:n.selectedFile,callback:function(e){n.selectedFile=e},expression:"selectedFile"}})],1),e("v-row",{attrs:{dense:""}},[e("span",{directives:[{name:"show",rawName:"v-show",value:n.error,expression:"error"}],staticClass:"my-2 red--text",domProps:{textContent:n._s(n.error)}})]),e("v-row",{staticClass:"mt-2"},[e("v-spacer"),e("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"file-open-save-cancel-btn",disabled:n.disableButtons},on:{click:function(e){n.show=!1}}},[n._v(" Cancel ")]),e("v-btn",{staticClass:"mx-2",attrs:{type:"submit",color:"primary","data-test":"file-open-save-submit-btn",disabled:n.disableButtons||!!n.error},on:{click:function(e){return e.preventDefault(),n.success.apply(null,arguments)}}},[n._v(" "+n._s(n.submit)+" ")])],1)],1)])],1)])],1)}),W=[],K=t(4282),J=(t(4069),t(7368),t(4471),t(1172),t(9949),{props:{type:{type:String,required:!0,validator:function(n){return-1!==["open","save"].indexOf(n)}},apiUrl:String,requireTargetParentDir:Boolean,inputFilename:String,value:Boolean},data:function(){return{tree:[],items:[],id:1,search:null,selectedFile:null,disableButtons:!1,targets:[]}},computed:{show:{get:function(){return this.value},set:function(n){this.$emit("input",n)}},title:function(){return"open"===this.type?"File Open":"File Save As..."},submit:function(){return"open"===this.type?"OPEN":"SAVE"},error:function(){if(""===this.selectedFile||null===this.selectedFile)return"No file selected must select a file";if(!this.selectedFile.match(this.validFilenameRegex)||this.selectedFile.match(/\.\.|\/\/|\.\/|\/\./)){var n="".concat(this.selectedFile," is not a valid filename. Must ");return this.requireTargetParentDir&&(n+="be in a target directory and "),n+="only contain alphanumeric characters and / ! - _ . * ' ( )",n}return null},validFilenameRegex:function(){var n="0-9a-zA-Z",e="".concat(n,"\\/\\!\\-\\_\\.\\*\\'\\(\\)"),t="[".concat(e,"]+\\.[").concat(n,"]+");if(this.requireTargetParentDir){var l="(".concat(this.targets.join("|"),")");t="\\/?".concat(l,"\\/").concat(t)}return new RegExp(t)}},created:function(){var n=this;C.get(this.apiUrl).then((function(e){n.items=[],n.id=1;var t,l=(0,K.Z)(e.data);try{for(l.s();!(t=l.n()).done;){var i=t.value;n.filepath=i,n.insertFile(n.items,1,i),n.id++}}catch(o){l.e(o)}finally{l.f()}n.inputFilename&&(n.selectedFile=n.inputFilename)})).catch((function(e){n.$emit("error","Failed to connect to OpenC3. ".concat(e))})),this.requireTargetParentDir&&C.get("/openc3-api/targets").then((function(e){n.targets=e.data}))},methods:{clear:function(){this.show=!1,this.overwrite=!1,this.disableButtons=!1},handleSearch:function(n){n?this.$refs.tree.updateAll(!0):this.$refs.tree.updateAll(!1)},activeFile:function(n){0===n.length?this.selectedFile=null:this.selectedFile=n[0].path},exists:function(n,e){var t,l=!1,i=(0,K.Z)(n);try{for(i.s();!(t=i.n()).done;){var o=t.value;if(o.path===e)return!0;if(o.path.length>1&&"*"===o.path[o.path.length-1]&&o.path.slice(0,o.path.length-1)===e)return!0;o.children&&(l=l||this.exists(o.children,e))}}catch(a){i.e(a)}finally{i.f()}return l},success:function(){null!==this.selectedFile&&("open"===this.type?this.openSuccess():this.saveSuccess())},openSuccess:function(){var n=this;this.disableButtons=!0,C.get("".concat(this.apiUrl,"/").concat(this.selectedFile)).then((function(e){var t={name:n.selectedFile,contents:e.data.contents};e.data.suites&&(t["suites"]=JSON.parse(e.data.suites)),e.data.error&&(t["error"]=e.data.error),e.data.success&&(t["success"]=e.data.success);var l=e.data.locked,i=e.data.breakpoints;n.$emit("file",{file:t,locked:l,breakpoints:i}),n.clear()})).catch((function(e){n.$emit("error","Failed to open ".concat(n.selectedFile,". ").concat(e)),n.clear()}))},saveSuccess:function(){var n=this,e=this.exists(this.items,this.selectedFile);e?this.$dialog.confirm("Are you sure you want to overwrite: ".concat(this.selectedFile),{okText:"Overwrite",cancelText:"Cancel"}).then((function(e){n.$emit("filename",n.selectedFile),n.clear()})):(this.$emit("filename",this.selectedFile),this.clear())},insertFile:function(n,e,t){var l=t.split("/");if(1===l.length)return n.push({id:this.id,name:l[0],file:"ruby",path:this.filepath}),void this.id++;var i=n.findIndex((function(n){return n.name===l[0]}));-1===i?(n.push({id:this.id,name:l[0],children:[],path:this.filepath.split("/").slice(0,e).join("/")}),this.id++,this.insertFile(n[n.length-1].children,e+1,l.slice(1).join("/"))):this.insertFile(n[i].children,e+1,l.slice(1).join("/"))}}}),X=J,Q=(0,S.Z)(X,Y,W,!1,null,null,null),nn=Q.exports,en=function(){var n=this,e=n._self._c;return e("v-dialog",{attrs:{width:n.width},model:{value:n.show,callback:function(e){n.show=e},expression:"show"}},[e("v-card",[e("v-system-bar",[e("v-spacer"),e("span",[n._v(" "+n._s(n.title)+" ")]),e("v-spacer"),e("div",{staticClass:"mx-2"},[e("v-tooltip",{attrs:{top:""},scopedSlots:n._u([{key:"activator",fn:function(t){var l=t.on,i=t.attrs;return[e("div",n._g(n._b({},"div",i,!1),l),[e("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:n.download}},[n._v(" mdi-download ")])],1)]}}])},[e("span",[n._v(" Download ")])])],1)],1),e("v-card-text",[e("div",{staticClass:"pa-3"},[e("span",{staticStyle:{"white-space":"pre-wrap"}},[n._v(n._s(n.text))])])]),e("v-card-actions",[e("v-spacer"),e("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(e){n.show=!n.show}}},[n._v(" Ok ")])],1)],1)],1)},tn=[],ln={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get:function(){return this.value},set:function(n){this.$emit("input",n)}}},methods:{download:function(){var n=new Blob([this.text],{type:"text/plain"}),e=document.createElement("a");e.href=URL.createObjectURL(n),e.setAttribute("download","".concat(this.title,".txt")),e.click()}}},on=ln,an=(0,S.Z)(on,en,tn,!1,null,null,null),cn=an.exports;function sn(){var n="/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",e="5b8170b15742912765b5ce633f335faa3df00d4a",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-tool-tablemanager/src/tools/TableManager/TableManager.vue",statementMap:{0:{start:{line:17,column:4},end:{line:39,column:5}},1:{start:{line:43,column:6},end:{line:43,column:28}},2:{start:{line:46,column:6},end:{line:46,column:59}},3:{start:{line:49,column:6},end:{line:106,column:7}},4:{start:{line:57,column:16},end:{line:57,column:30}},5:{start:{line:64,column:16},end:{line:64,column:31}},6:{start:{line:74,column:16},end:{line:74,column:31}},7:{start:{line:81,column:16},end:{line:81,column:29}},8:{start:{line:101,column:16},end:{line:101,column:29}},9:{start:{line:113,column:8},end:{line:113,column:80}},10:{start:{line:115,column:8},end:{line:116,column:33}},11:{start:{line:117,column:6},end:{line:129,column:10}},12:{start:{line:125,column:10},end:{line:125,column:34}},13:{start:{line:128,column:10},end:{line:128,column:35}},14:{start:{line:130,column:6},end:{line:142,column:10}},15:{start:{line:138,column:10},end:{line:138,column:36}},16:{start:{line:141,column:10},end:{line:141,column:37}},17:{start:{line:146,column:4},end:{line:146,column:30}},18:{start:{line:151,column:6},end:{line:151,column:28}},19:{start:{line:152,column:6},end:{line:152,column:25}},20:{start:{line:153,column:6},end:{line:153,column:26}},21:{start:{line:156,column:6},end:{line:156,column:26}},22:{start:{line:161,column:6},end:{line:175,column:7}},23:{start:{line:162,column:8},end:{line:167,column:9}},24:{start:{line:163,column:10},end:{line:163,column:40}},25:{start:{line:164,column:10},end:{line:164,column:30}},26:{start:{line:166,column:10},end:{line:166,column:39}},27:{start:{line:169,column:8},end:{line:169,column:25}},28:{start:{line:171,column:8},end:{line:171,column:47}},29:{start:{line:172,column:8},end:{line:172,column:30}},30:{start:{line:173,column:8},end:{line:173,column:30}},31:{start:{line:174,column:8},end:{line:174,column:28}},32:{start:{line:179,column:6},end:{line:179,column:31}},33:{start:{line:180,column:6},end:{line:180,column:40}},34:{start:{line:181,column:6},end:{line:181,column:44}},35:{start:{line:182,column:6},end:{line:182,column:27}},36:{start:{line:186,column:6},end:{line:186,column:26}},37:{start:{line:188,column:23},end:{line:188,column:37}},38:{start:{line:189,column:6},end:{line:189,column:46}},39:{start:{line:190,column:6},end:{line:190,column:60}},40:{start:{line:191,column:6},end:{line:191,column:60}},41:{start:{line:192,column:6},end:{line:206,column:10}},42:{start:{line:196,column:10},end:{line:196,column:32}},43:{start:{line:197,column:10},end:{line:199,column:18}},44:{start:{line:198,column:12},end:{line:198,column:33}},45:{start:{line:202,column:10},end:{line:202,column:31}},46:{start:{line:203,column:10},end:{line:203,column:40}},47:{start:{line:204,column:10},end:{line:204,column:48}},48:{start:{line:205,column:10},end:{line:205,column:31}},49:{start:{line:207,column:6},end:{line:207,column:21}},50:{start:{line:210,column:6},end:{line:210,column:28}},51:{start:{line:213,column:6},end:{line:218,column:7}},52:{start:{line:215,column:10},end:{line:215,column:34}},53:{start:{line:216,column:10},end:{line:216,column:53}},54:{start:{line:221,column:6},end:{line:243,column:7}},55:{start:{line:222,column:8},end:{line:242,column:12}},56:{start:{line:228,column:12},end:{line:230,column:14}},57:{start:{line:233,column:12},end:{line:233,column:26}},58:{start:{line:236,column:12},end:{line:241,column:13}},59:{start:{line:237,column:14},end:{line:240,column:16}},60:{start:{line:246,column:23},end:{line:246,column:37}},61:{start:{line:247,column:6},end:{line:247,column:46}},62:{start:{line:248,column:6},end:{line:248,column:60}},63:{start:{line:249,column:6},end:{line:251,column:7}},64:{start:{line:250,column:8},end:{line:250,column:43}},65:{start:{line:252,column:6},end:{line:272,column:8}},66:{start:{line:256,column:28},end:{line:256,column:63}},67:{start:{line:258,column:27},end:{line:258,column:61}},68:{start:{line:260,column:8},end:{line:262,column:9}},69:{start:{line:260,column:21},end:{line:260,column:22}},70:{start:{line:261,column:10},end:{line:261,column:51}},71:{start:{line:264,column:21},end:{line:266,column:10}},72:{start:{line:268,column:21},end:{line:268,column:48}},73:{start:{line:269,column:8},end:{line:269,column:45}},74:{start:{line:270,column:8},end:{line:270,column:61}},75:{start:{line:271,column:8},end:{line:271,column:20}},76:{start:{line:275,column:23},end:{line:275,column:37}},77:{start:{line:276,column:6},end:{line:276,column:60}},78:{start:{line:277,column:6},end:{line:279,column:7}},79:{start:{line:278,column:8},end:{line:278,column:43}},80:{start:{line:280,column:6},end:{line:291,column:8}},81:{start:{line:283,column:21},end:{line:285,column:10}},82:{start:{line:287,column:21},end:{line:287,column:48}},83:{start:{line:288,column:8},end:{line:288,column:45}},84:{start:{line:289,column:8},end:{line:289,column:61}},85:{start:{line:290,column:8},end:{line:290,column:20}},86:{start:{line:294,column:23},end:{line:294,column:37}},87:{start:{line:295,column:6},end:{line:295,column:46}},88:{start:{line:296,column:6},end:{line:296,column:60}},89:{start:{line:297,column:6},end:{line:299,column:7}},90:{start:{line:298,column:8},end:{line:298,column:43}},91:{start:{line:300,column:6},end:{line:314,column:8}},92:{start:{line:304,column:10},end:{line:305,column:54}},93:{start:{line:306,column:21},end:{line:308,column:10}},94:{start:{line:310,column:21},end:{line:310,column:48}},95:{start:{line:311,column:8},end:{line:311,column:45}},96:{start:{line:312,column:8},end:{line:312,column:61}},97:{start:{line:313,column:8},end:{line:313,column:20}},98:{start:{line:318,column:8},end:{line:318,column:80}},99:{start:{line:319,column:6},end:{line:327,column:8}},100:{start:{line:324,column:8},end:{line:326,column:9}},101:{start:{line:325,column:10},end:{line:325,column:71}},102:{start:{line:330,column:6},end:{line:354,column:29}},103:{start:{line:342,column:12},end:{line:343,column:37}},104:{start:{line:344,column:10},end:{line:352,column:12}},105:{start:{line:349,column:12},end:{line:351,column:13}},106:{start:{line:350,column:14},end:{line:350,column:75}},107:{start:{line:368,column:6},end:{line:380,column:10}},108:{start:{line:378,column:10},end:{line:378,column:30}},109:{start:{line:379,column:10},end:{line:379,column:32}},110:{start:{line:383,column:6},end:{line:383,column:65}},111:{start:{line:386,column:6},end:{line:388,column:7}},112:{start:{line:387,column:8},end:{line:387,column:62}},113:{start:{line:391,column:6},end:{line:395,column:7}},114:{start:{line:392,column:8},end:{line:394,column:38}},115:{start:{line:396,column:6},end:{line:396,column:22}},116:{start:{line:397,column:23},end:{line:397,column:37}},117:{start:{line:398,column:6},end:{line:398,column:46}},118:{start:{line:399,column:6},end:{line:399,column:55}},119:{start:{line:400,column:6},end:{line:453,column:10}},120:{start:{line:404,column:10},end:{line:404,column:54}},121:{start:{line:405,column:10},end:{line:431,column:12}},122:{start:{line:406,column:12},end:{line:430,column:13}},123:{start:{line:410,column:31},end:{line:413,column:17}},124:{start:{line:414,column:16},end:{line:428,column:17}},125:{start:{line:417,column:18},end:{line:420,column:19}},126:{start:{line:424,column:18},end:{line:427,column:19}},127:{start:{line:433,column:10},end:{line:438,column:11}},128:{start:{line:434,column:12},end:{line:437,column:14}},129:{start:{line:441,column:10},end:{line:452,column:11}},130:{start:{line:442,column:12},end:{line:445,column:14}},131:{start:{line:446,column:12},end:{line:446,column:32}},132:{start:{line:448,column:12},end:{line:451,column:14}},133:{start:{line:456,column:23},end:{line:456,column:37}},134:{start:{line:457,column:6},end:{line:457,column:45}},135:{start:{line:458,column:6},end:{line:463,column:8}},136:{start:{line:461,column:8},end:{line:461,column:46}},137:{start:{line:462,column:8},end:{line:462,column:36}},138:{start:{line:466,column:6},end:{line:466,column:29}},139:{start:{line:467,column:6},end:{line:467,column:31}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:16,column:2},end:{line:16,column:3}},loc:{start:{line:16,column:9},end:{line:40,column:3}},line:16},1:{name:"(anonymous_1)",decl:{start:{line:42,column:14},end:{line:42,column:15}},loc:{start:{line:42,column:26},end:{line:44,column:5}},line:42},2:{name:"(anonymous_2)",decl:{start:{line:45,column:4},end:{line:45,column:5}},loc:{start:{line:45,column:19},end:{line:47,column:5}},line:45},3:{name:"(anonymous_3)",decl:{start:{line:48,column:11},end:{line:48,column:12}},loc:{start:{line:48,column:23},end:{line:107,column:5}},line:48},4:{name:"(anonymous_4)",decl:{start:{line:56,column:23},end:{line:56,column:24}},loc:{start:{line:56,column:29},end:{line:58,column:15}},line:56},5:{name:"(anonymous_5)",decl:{start:{line:63,column:23},end:{line:63,column:24}},loc:{start:{line:63,column:29},end:{line:65,column:15}},line:63},6:{name:"(anonymous_6)",decl:{start:{line:73,column:23},end:{line:73,column:24}},loc:{start:{line:73,column:29},end:{line:75,column:15}},line:73},7:{name:"(anonymous_7)",decl:{start:{line:80,column:23},end:{line:80,column:24}},loc:{start:{line:80,column:29},end:{line:82,column:15}},line:80},8:{name:"(anonymous_8)",decl:{start:{line:100,column:23},end:{line:100,column:24}},loc:{start:{line:100,column:29},end:{line:102,column:15}},line:100},9:{name:"(anonymous_9)",decl:{start:{line:111,column:14},end:{line:111,column:15}},loc:{start:{line:111,column:29},end:{line:143,column:5}},line:111},10:{name:"(anonymous_10)",decl:{start:{line:124,column:14},end:{line:124,column:15}},loc:{start:{line:124,column:28},end:{line:126,column:9}},line:124},11:{name:"(anonymous_11)",decl:{start:{line:127,column:15},end:{line:127,column:16}},loc:{start:{line:127,column:26},end:{line:129,column:9}},line:127},12:{name:"(anonymous_12)",decl:{start:{line:137,column:14},end:{line:137,column:15}},loc:{start:{line:137,column:28},end:{line:139,column:9}},line:137},13:{name:"(anonymous_13)",decl:{start:{line:140,column:15},end:{line:140,column:16}},loc:{start:{line:140,column:26},end:{line:142,column:9}},line:140},14:{name:"(anonymous_14)",decl:{start:{line:145,column:2},end:{line:145,column:3}},loc:{start:{line:145,column:12},end:{line:147,column:3}},line:145},15:{name:"(anonymous_15)",decl:{start:{line:150,column:13},end:{line:150,column:14}},loc:{start:{line:150,column:25},end:{line:154,column:5}},line:150},16:{name:"(anonymous_16)",decl:{start:{line:155,column:14},end:{line:155,column:15}},loc:{start:{line:155,column:26},end:{line:157,column:5}},line:155},17:{name:"(anonymous_17)",decl:{start:{line:159,column:13},end:{line:159,column:14}},loc:{start:{line:159,column:41},end:{line:176,column:5}},line:159},18:{name:"(anonymous_18)",decl:{start:{line:178,column:4},end:{line:178,column:5}},loc:{start:{line:178,column:20},end:{line:183,column:5}},line:178},19:{name:"(anonymous_19)",decl:{start:{line:184,column:14},end:{line:184,column:15}},loc:{start:{line:184,column:26},end:{line:208,column:5}},line:184},20:{name:"(anonymous_20)",decl:{start:{line:195,column:14},end:{line:195,column:15}},loc:{start:{line:195,column:28},end:{line:200,column:9}},line:195},21:{name:"(anonymous_21)",decl:{start:{line:197,column:21},end:{line:197,column:22}},loc:{start:{line:197,column:27},end:{line:199,column:11}},line:197},22:{name:"(anonymous_22)",decl:{start:{line:201,column:15},end:{line:201,column:16}},loc:{start:{line:201,column:33},end:{line:206,column:9}},line:201},23:{name:"(anonymous_23)",decl:{start:{line:209,column:12},end:{line:209,column:13}},loc:{start:{line:209,column:24},end:{line:211,column:5}},line:209},24:{name:"(anonymous_24)",decl:{start:{line:212,column:20},end:{line:212,column:21}},loc:{start:{line:212,column:40},end:{line:219,column:5}},line:212},25:{name:"(anonymous_25)",decl:{start:{line:214,column:8},end:{line:214,column:9}},loc:{start:{line:214,column:22},end:{line:217,column:9}},line:214},26:{name:"(anonymous_26)",decl:{start:{line:220,column:12},end:{line:220,column:13}},loc:{start:{line:220,column:24},end:{line:244,column:5}},line:220},27:{name:"(anonymous_27)",decl:{start:{line:227,column:16},end:{line:227,column:17}},loc:{start:{line:227,column:28},end:{line:231,column:11}},line:227},28:{name:"(anonymous_28)",decl:{start:{line:232,column:16},end:{line:232,column:17}},loc:{start:{line:232,column:30},end:{line:234,column:11}},line:232},29:{name:"(anonymous_29)",decl:{start:{line:235,column:17},end:{line:235,column:18}},loc:{start:{line:235,column:28},end:{line:242,column:11}},line:235},30:{name:"(anonymous_30)",decl:{start:{line:245,column:20},end:{line:245,column:21}},loc:{start:{line:245,column:48},end:{line:273,column:5}},line:245},31:{name:"(anonymous_31)",decl:{start:{line:254,column:14},end:{line:254,column:15}},loc:{start:{line:254,column:28},end:{line:272,column:7}},line:254},32:{name:"(anonymous_32)",decl:{start:{line:274,column:24},end:{line:274,column:25}},loc:{start:{line:274,column:52},end:{line:292,column:5}},line:274},33:{name:"(anonymous_33)",decl:{start:{line:282,column:14},end:{line:282,column:15}},loc:{start:{line:282,column:28},end:{line:291,column:7}},line:282},34:{name:"(anonymous_34)",decl:{start:{line:293,column:20},end:{line:293,column:21}},loc:{start:{line:293,column:48},end:{line:315,column:5}},line:293},35:{name:"(anonymous_35)",decl:{start:{line:302,column:14},end:{line:302,column:15}},loc:{start:{line:302,column:28},end:{line:314,column:7}},line:302},36:{name:"(anonymous_36)",decl:{start:{line:316,column:4},end:{line:316,column:5}},loc:{start:{line:316,column:13},end:{line:328,column:5}},line:316},37:{name:"(anonymous_37)",decl:{start:{line:323,column:14},end:{line:323,column:15}},loc:{start:{line:323,column:28},end:{line:327,column:7}},line:323},38:{name:"(anonymous_38)",decl:{start:{line:329,column:4},end:{line:329,column:5}},loc:{start:{line:329,column:15},end:{line:355,column:5}},line:329},39:{name:"(anonymous_39)",decl:{start:{line:340,column:14},end:{line:340,column:15}},loc:{start:{line:340,column:20},end:{line:353,column:9}},line:340},40:{name:"(anonymous_40)",decl:{start:{line:348,column:18},end:{line:348,column:19}},loc:{start:{line:348,column:32},end:{line:352,column:11}},line:348},41:{name:"(anonymous_41)",decl:{start:{line:354,column:15},end:{line:354,column:16}},loc:{start:{line:354,column:26},end:{line:354,column:28}},line:354},42:{name:"(anonymous_42)",decl:{start:{line:367,column:24},end:{line:367,column:25}},loc:{start:{line:367,column:36},end:{line:381,column:5}},line:367},43:{name:"(anonymous_43)",decl:{start:{line:377,column:14},end:{line:377,column:15}},loc:{start:{line:377,column:20},end:{line:380,column:9}},line:377},44:{name:"(anonymous_44)",decl:{start:{line:382,column:14},end:{line:382,column:15}},loc:{start:{line:382,column:26},end:{line:384,column:5}},line:382},45:{name:"(anonymous_45)",decl:{start:{line:385,column:16},end:{line:385,column:17}},loc:{start:{line:385,column:28},end:{line:389,column:5}},line:385},46:{name:"(anonymous_46)",decl:{start:{line:390,column:19},end:{line:390,column:20}},loc:{start:{line:390,column:56},end:{line:454,column:5}},line:390},47:{name:"(anonymous_47)",decl:{start:{line:403,column:14},end:{line:403,column:15}},loc:{start:{line:403,column:28},end:{line:439,column:9}},line:403},48:{name:"(anonymous_48)",decl:{start:{line:405,column:49},end:{line:405,column:50}},loc:{start:{line:405,column:60},end:{line:431,column:11}},line:405},49:{name:"(anonymous_49)",decl:{start:{line:409,column:41},end:{line:409,column:42}},loc:{start:{line:409,column:54},end:{line:429,column:15}},line:409},50:{name:"(anonymous_50)",decl:{start:{line:440,column:15},end:{line:440,column:16}},loc:{start:{line:440,column:26},end:{line:453,column:9}},line:440},51:{name:"(anonymous_51)",decl:{start:{line:455,column:20},end:{line:455,column:21}},loc:{start:{line:455,column:40},end:{line:464,column:5}},line:455},52:{name:"(anonymous_52)",decl:{start:{line:460,column:14},end:{line:460,column:15}},loc:{start:{line:460,column:28},end:{line:463,column:7}},line:460},53:{name:"(anonymous_53)",decl:{start:{line:465,column:14},end:{line:465,column:15}},loc:{start:{line:465,column:48},end:{line:468,column:5}},line:465}},branchMap:{0:{loc:{start:{line:161,column:6},end:{line:175,column:7}},type:"if",locations:[{start:{line:161,column:6},end:{line:175,column:7}},{start:{line:168,column:13},end:{line:175,column:7}}],line:161},1:{loc:{start:{line:162,column:8},end:{line:167,column:9}},type:"if",locations:[{start:{line:162,column:8},end:{line:167,column:9}},{start:{line:165,column:15},end:{line:167,column:9}}],line:162},2:{loc:{start:{line:221,column:6},end:{line:243,column:7}},type:"if",locations:[{start:{line:221,column:6},end:{line:243,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:221},3:{loc:{start:{line:236,column:12},end:{line:241,column:13}},type:"if",locations:[{start:{line:236,column:12},end:{line:241,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:236},4:{loc:{start:{line:245,column:30},end:{line:245,column:46}},type:"default-arg",locations:[{start:{line:245,column:42},end:{line:245,column:46}}],line:245},5:{loc:{start:{line:249,column:6},end:{line:251,column:7}},type:"if",locations:[{start:{line:249,column:6},end:{line:251,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:249},6:{loc:{start:{line:274,column:34},end:{line:274,column:50}},type:"default-arg",locations:[{start:{line:274,column:46},end:{line:274,column:50}}],line:274},7:{loc:{start:{line:277,column:6},end:{line:279,column:7}},type:"if",locations:[{start:{line:277,column:6},end:{line:279,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:277},8:{loc:{start:{line:293,column:30},end:{line:293,column:46}},type:"default-arg",locations:[{start:{line:293,column:42},end:{line:293,column:46}}],line:293},9:{loc:{start:{line:297,column:6},end:{line:299,column:7}},type:"if",locations:[{start:{line:297,column:6},end:{line:299,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:297},10:{loc:{start:{line:324,column:8},end:{line:326,column:9}},type:"if",locations:[{start:{line:324,column:8},end:{line:326,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:324},11:{loc:{start:{line:349,column:12},end:{line:351,column:13}},type:"if",locations:[{start:{line:349,column:12},end:{line:351,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:349},12:{loc:{start:{line:386,column:6},end:{line:388,column:7}},type:"if",locations:[{start:{line:386,column:6},end:{line:388,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:386},13:{loc:{start:{line:386,column:10},end:{line:386,column:48}},type:"binary-expr",locations:[{start:{line:386,column:10},end:{line:386,column:30}},{start:{line:386,column:34},end:{line:386,column:48}}],line:386},14:{loc:{start:{line:390,column:29},end:{line:390,column:54}},type:"default-arg",locations:[{start:{line:390,column:50},end:{line:390,column:54}}],line:390},15:{loc:{start:{line:391,column:6},end:{line:395,column:7}},type:"if",locations:[{start:{line:391,column:6},end:{line:395,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:391},16:{loc:{start:{line:414,column:16},end:{line:428,column:17}},type:"if",locations:[{start:{line:414,column:16},end:{line:428,column:17}},{start:{line:421,column:23},end:{line:428,column:17}}],line:414},17:{loc:{start:{line:433,column:10},end:{line:438,column:11}},type:"if",locations:[{start:{line:433,column:10},end:{line:438,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:433},18:{loc:{start:{line:441,column:10},end:{line:452,column:11}},type:"if",locations:[{start:{line:441,column:10},end:{line:452,column:11}},{start:{line:447,column:17},end:{line:452,column:11}}],line:441}},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,86:0,87:0,88:0,89:0,90:0,91:0,92:0,93:0,94:0,95:0,96:0,97:0,98:0,99:0,100:0,101:0,102:0,103:0,104:0,105:0,106:0,107:0,108:0,109:0,110:0,111:0,112:0,113:0,114:0,115:0,116:0,117:0,118:0,119:0,120:0,121:0,122:0,123:0,124:0,125:0,126:0,127:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:0,136:0,137:0,138:0,139: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,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},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0],5:[0,0],6:[0],7:[0,0],8:[0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0],14:[0],15:[0,0],16:[0,0],17:[0,0],18:[0,0]},inputSourceMap:{version:3,sources:["TableManager.vue"],names:[],mappings:";AA4QA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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",file:"TableManager.vue",sourceRoot:"src/tools/TableManager",sourcesContent:["\x3c!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n--\x3e\n\n<template>\n <div>\n <top-bar :menus=\"menus\" :title=\"title\" />\n <v-snackbar v-model=\"showReadOnlyToast\" top :timeout=\"-1\" color=\"orange\">\n <v-icon> mdi-pencil-off </v-icon>\n {{ lockedBy }} is editing this script. Editor is in read-only mode\n <template v-slot:action=\"{ attrs }\">\n <v-btn\n text\n v-bind=\"attrs\"\n color=\"danger\"\n @click=\"confirmLocalUnlock\"\n data-test=\"unlock-button\"\n >\n Unlock\n </v-btn>\n <v-btn\n text\n v-bind=\"attrs\"\n @click=\"\n () => {\n showReadOnlyToast = false\n }\n \"\n >\n dismiss\n </v-btn>\n </template>\n </v-snackbar>\n <v-file-input\n show-size\n v-model=\"fileInput\"\n ref=\"fileInput\"\n accept=\".bin\"\n data-test=\"file-input\"\n style=\"position: fixed; top: -100%\"\n />\n <v-row dense>\n <v-col cols=\"6\">\n <v-text-field\n outlined\n dense\n readonly\n hide-details\n label=\"Filename\"\n v-model=\"fullFilename\"\n id=\"filename\"\n data-test=\"filename\"\n />\n </v-col>\n <v-col cols=\"6\">\n <v-text-field\n outlined\n dense\n readonly\n hide-details\n label=\"Definition\"\n v-model=\"definitionFilename\"\n id=\"definition-filename\"\n data-test=\"definition-filename\"\n />\n </v-col>\n </v-row>\n <v-row dense class=\"mb-1\">\n <v-col cols=\"auto\" class=\"mr-auto\">\n <span class=\"text-body-1 ma-2\">File Download:</span>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadBinary(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-binary\"\n >\n Binary\n <v-icon right dark> mdi-file-code </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadDefinition(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-definition\"\n >\n Definition\n <v-icon right dark> mdi-file-document-edit </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n @click=\"downloadReport(null)\"\n :disabled=\"filename == ''\"\n data-test=\"download-file-report\"\n >\n Report\n <v-icon right dark> mdi-file-document </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-btn\n dense\n color=\"primary\"\n @click=\"upload()\"\n :disabled=\"!uploadScript\"\n data-test=\"upload-file\"\n >\n Upload\n <v-icon right dark> mdi-file-upload </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-btn\n dense\n color=\"primary\"\n @click=\"download()\"\n :disabled=\"!downloadScript\"\n data-test=\"download-file\"\n >\n Download\n <v-icon right dark> mdi-file-download </v-icon>\n </v-btn>\n </v-col>\n <v-col cols=\"auto\">\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <span v-bind=\"attrs\" v-on=\"on\">\n <v-checkbox\n v-model=\"scriptBackground\"\n label=\"B/G\"\n class=\"shrink mt-0\"\n data-test=\"upload-background\"\n />\n </span>\n </template>\n <span>Run upload download scripts in the background</span>\n </v-tooltip>\n </v-col>\n </v-row>\n <v-card>\n <v-card-title>\n Items\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-tabs v-model=\"curTab\">\n <v-tab v-for=\"(table, index) in tables\" :key=\"index\">\n {{ table.name }}\n </v-tab>\n </v-tabs>\n <v-tabs-items v-model=\"curTab\">\n <v-tab-item\n v-for=\"(table, index) in tables\"\n :key=\"`${filename}${index}`\"\n >\n <v-data-table\n :headers=\"table.headers\"\n :items=\"table.rows\"\n :search=\"search\"\n :items-per-page=\"20\"\n :footer-props=\"{\n itemsPerPageOptions: [10, 20, 50, 100, -1],\n }\"\n calculate-widths\n multi-sort\n dense\n :data-test=\"table.name\"\n >\n <template v-slot:item=\"{ item }\">\n <table-row\n :items=\"item\"\n :key=\"item[0].name\"\n @change=\"onChange(item, $event)\"\n />\n </template>\n <template v-slot:footer v-if=\"tables.length > 1\">\n <div style=\"position: absolute\" class=\"ma-3\">\n <span class=\"text-body-1 mr-3\">Table Download:</span>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadBinary(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-binary\"\n >\n Binary\n <v-icon right dark> mdi-file-code </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n class=\"mr-3\"\n @click=\"downloadDefinition(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-definition\"\n >\n Definition\n <v-icon right dark> mdi-file-document-edit </v-icon>\n </v-btn>\n <v-btn\n dense\n color=\"primary\"\n @click=\"downloadReport(table.name)\"\n :disabled=\"filename == ''\"\n data-test=\"download-table-report\"\n >\n Report\n <v-icon right dark> mdi-file-document </v-icon>\n </v-btn>\n </div>\n </template>\n </v-data-table>\n </v-tab-item>\n </v-tabs-items>\n </v-card>\n <file-open-save-dialog\n v-if=\"fileOpen\"\n v-model=\"fileOpen\"\n type=\"open\"\n api-url=\"/openc3-api/tables\"\n @file=\"setFile($event)\"\n @error=\"setError($event)\"\n />\n <file-open-save-dialog\n v-if=\"showSaveAs\"\n v-model=\"showSaveAs\"\n type=\"save\"\n require-target-parent-dir\n api-url=\"/openc3-api/tables\"\n :input-filename=\"filename\"\n @filename=\"saveAsFilename($event)\"\n @error=\"setError($event)\"\n />\n <simple-text-dialog\n v-model=\"showError\"\n :title=\"errorTitle\"\n :text=\"errorText\"\n />\n </div>\n</template>\n\n<script>\nimport Api from '@openc3/tool-common/src/services/api'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport TableRow from '@/tools/TableManager/TableRow'\nimport FileOpenSaveDialog from '@openc3/tool-common/src/components/FileOpenSaveDialog'\nimport SimpleTextDialog from '@openc3/tool-common/src/components/SimpleTextDialog'\n\nexport default {\n components: {\n TopBar,\n TableRow,\n FileOpenSaveDialog,\n SimpleTextDialog,\n },\n data() {\n return {\n title: 'Table Manager',\n search: '',\n curTab: null,\n tables: [],\n api: null,\n definition: null,\n fileInput: '',\n definitionFilename: '',\n fileNew: false,\n filename: '',\n fileModified: '',\n lockedBy: null,\n fileOpen: false,\n showSave: false,\n showSaveAs: false,\n showError: false,\n errorTitle: '',\n errorText: '',\n uploadScript: false,\n downloadScript: false,\n scriptBackground: true,\n }\n },\n computed: {\n readOnly: function () {\n return !!this.lockedBy\n },\n fullFilename() {\n return `${this.filename} ${this.fileModified}`.trim()\n },\n menus: function () {\n return [\n {\n label: 'File',\n items: [\n {\n label: 'New File',\n icon: 'mdi-file-plus',\n command: () => {\n this.newFile()\n },\n },\n {\n label: 'Open File',\n icon: 'mdi-folder-open',\n command: () => {\n this.openFile()\n },\n },\n {\n divider: true,\n },\n {\n label: 'Save File',\n icon: 'mdi-content-save',\n command: () => {\n this.saveFile()\n },\n },\n {\n label: 'Save As...',\n icon: 'mdi-content-save',\n command: () => {\n this.saveAs()\n },\n },\n {\n divider: true,\n },\n // {\n // label: 'Load Binary',\n // icon: 'mdi-cloud-upload',\n // command: () => {\n // this.loadBinary()\n // },\n // },\n // {\n // divider: true,\n // },\n {\n label: 'Delete File',\n icon: 'mdi-delete',\n command: () => {\n this.delete()\n },\n },\n ],\n },\n ]\n },\n },\n watch: {\n // Everytime the filename changes we figure out if there is an associated upload & download script\n filename: function (val) {\n let upload =\n this.filename.split('/').slice(0, 2).join('/') + '/procedures/upload.rb'\n let download =\n this.filename.split('/').slice(0, 2).join('/') +\n '/procedures/download.rb'\n Api.get(`/openc3-api/tables/${upload}`, {\n headers: {\n Accept: 'application/json',\n // Since we're just checking for existance, 404 is possible so ignore it\n 'Ignore-Errors': '404',\n },\n })\n .then((response) => {\n this.uploadScript = true\n })\n .catch((error) => {\n this.uploadScript = false\n })\n Api.get(`/openc3-api/tables/${download}`, {\n headers: {\n Accept: 'application/json',\n // Since we're just checking for existance, 404 is possible so ignore it\n 'Ignore-Errors': '404',\n },\n })\n .then((response) => {\n this.downloadScript = true\n })\n .catch((error) => {\n this.downloadScript = false\n })\n },\n },\n created() {\n this.api = new OpenC3Api()\n },\n methods: {\n // File menu actions\n newFile: function () {\n this.fileModified = ''\n this.fileNew = true\n this.fileOpen = true\n },\n openFile: function () {\n this.fileOpen = true\n },\n // Called by the FileOpenDialog to set the file contents\n setFile: function ({ file, locked }) {\n // They opened a definition file so create a new binary\n if (file.name.includes('.txt')) {\n if (this.fileNew) {\n this.buildNewBinary(file.name)\n this.fileNew = false\n } else {\n this.getDefinition(file.name)\n }\n } else {\n this.unlockFile() // first unlock what was just being edited\n // Split off the ' *' which indicates a file is modified on the server\n this.filename = file.name.split('*')[0]\n this.fileModified = ''\n this.lockedBy = locked\n this.getDefinition()\n }\n },\n // Called by the FileOpenSaveDialog on error\n setError(event) {\n this.errorTitle = 'Error'\n this.errorText = `Error: ${event}`\n this.errorText = response.data.message\n this.showError = true\n },\n saveFile: function () {\n // Save a file by posting the new contents\n this.showSave = true\n\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n formData.append('tables', JSON.stringify(this.tables))\n Api.post(`/openc3-api/tables/${this.filename}`, {\n data: formData,\n })\n .then((response) => {\n this.fileModified = ''\n setTimeout(() => {\n this.showSave = false\n }, 2000)\n })\n .catch(({ response }) => {\n this.showSave = false\n this.errorTitle = 'Save Error'\n this.errorText = response.data.message\n this.showError = true\n })\n this.lockFile() // Ensure this file is locked for editing\n },\n saveAs: function () {\n this.showSaveAs = true\n },\n saveAsFilename: function (filename) {\n Api.put(`/openc3-api/tables/${this.filename}/save-as/${filename}`).then(\n (response) => {\n this.filename = filename\n this.getDefinition(this.definitionFilename)\n }\n )\n },\n delete: function () {\n if (this.filename !== '') {\n this.$dialog\n .confirm(`Permanently delete file: ${this.filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete(`/openc3-api/tables/${this.filename}`, {\n data: {},\n })\n })\n .then((response) => {\n this.newFile()\n })\n .catch((error) => {\n if (error) {\n this.$notify.caution({\n title: 'Error',\n body: `Error deleting file: ${error}`,\n })\n }\n })\n }\n },\n downloadBinary: function (tableName = null) {\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/binary`, {\n data: formData,\n }).then((response) => {\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 // Return BLOB image after conversion\n const blob = new Blob([uInt8Array], {\n type: 'application/octet-stream',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n downloadDefinition: function (tableName = null) {\n const formData = new FormData()\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/definition`, {\n data: formData,\n }).then((response) => {\n const blob = new Blob([response.data.contents], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n downloadReport: function (tableName = null) {\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', this.definitionFilename)\n if (tableName !== null) {\n formData.append('table', tableName)\n }\n Api.post(`/openc3-api/tables/report`, {\n data: formData,\n }).then((response) => {\n const header =\n `Binary: ${this.filename}\\n` +\n `Definition: ${this.definitionFilename}\\n\\n`\n const blob = new Blob([header, response.data.contents], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n upload() {\n let upload =\n this.filename.split('/').slice(0, 2).join('/') + '/procedures/upload.rb'\n Api.post(`/script-api/scripts/${upload}/run`, {\n data: {\n environment: [{ key: 'TBL_FILENAME', value: this.filename }],\n },\n }).then((response) => {\n if (this.scriptBackground !== true) {\n window.open(`/tools/scriptrunner/${response.data}`, '_blank')\n }\n })\n },\n download() {\n this.$dialog\n .confirm(\n `Are you sure you want to overwrite ${this.filename}? ` +\n 'You can Save As to create a new file and then Download to preserve the existing file. ' +\n 'Note: Once the download completes you will need to re-open the file to see changes.',\n {\n okText: 'Download (Overwrite!)',\n cancelText: 'Cancel',\n }\n )\n .then(() => {\n let download =\n this.filename.split('/').slice(0, 2).join('/') +\n '/procedures/download.rb'\n Api.post(`/script-api/scripts/${download}/run`, {\n data: {\n environment: [{ key: 'TBL_FILENAME', value: this.filename }],\n },\n }).then((response) => {\n if (this.scriptBackground !== true) {\n window.open(`/tools/scriptrunner/${response.data}`, '_blank')\n }\n })\n })\n .catch((error) => {}) // Cancel, do nothing\n },\n // TODO: Need to load to tmp dir or something before we can saveAs to rename\n // async loadBinary() {\n // this.fileInput = ''\n // this.$refs.fileInput.$refs.input.click()\n // // Wait for the file to be set by the dialog so upload works\n // while (this.fileInput === '') {\n // await new Promise((resolve) => setTimeout(resolve, 500))\n // }\n // this.filename = this.fileInput.name\n // this.saveAs()\n // },\n confirmLocalUnlock: function () {\n this.$dialog\n .confirm(\n 'Are you sure you want to unlock this file for editing? ' +\n 'If another user is editing this file, your changes might conflict with each other.',\n {\n okText: 'Force Unlock',\n cancelText: 'Cancel',\n }\n )\n .then(() => {\n this.lockedBy = null\n return this.lockFile() // Re-lock it as this user so it's locked for anyone else who opens it\n })\n },\n lockFile: function () {\n return Api.post(`/openc3-api/tables/${this.filename}/lock`)\n },\n unlockFile: function () {\n if (this.filename !== '' && !this.readOnly) {\n Api.post(`/openc3-api/tables/${this.filename}/unlock`)\n }\n },\n getDefinition: function (definitionFilename = null) {\n if (!definitionFilename) {\n definitionFilename = this.filename\n .replace('/bin/', '/config/')\n .replace('.bin', '_def.txt')\n }\n this.tables = [] // Clear so table is re-rendered\n const formData = new FormData()\n formData.append('binary', this.filename)\n formData.append('definition', definitionFilename)\n Api.post(`/openc3-api/tables/load`, {\n data: formData,\n })\n .then((response) => {\n this.definitionFilename = definitionFilename\n this.tables = response.data.tables.map((table) => {\n return {\n ...table,\n // Build up the headers for proper searching\n headers: table.headers.map((text, i) => {\n const header = {\n text,\n filterable: text !== 'INDEX',\n }\n if (table.numColumns === 1) {\n // In the 1D table the searchable value is the first value in the row\n // Note the names in 1D are INDEX, NAME, VALUE\n return {\n ...header,\n value: `[0].${text.toLowerCase()}`,\n }\n } else {\n // In the 2D table the searchable value is always in the value attribute\n // of the current column item\n return {\n ...header,\n value: `[${i}].value`,\n }\n }\n }),\n }\n })\n\n if (response.data['errors']) {\n this.$notify.caution({\n title: 'Warning',\n body: response.data['errors'],\n })\n }\n })\n .catch((error) => {\n if (error.response.status == 404) {\n this.$notify.normal({\n title: 'Definition File Not Found',\n body: `Definition file ${definitionFilename} not found. Please select definition file.`,\n })\n this.fileOpen = true\n } else {\n this.$notify.serious({\n title: 'Error',\n body: `Error loading due to ${error.response.statusText}. Status: ${error.response.status}`,\n })\n }\n })\n },\n buildNewBinary: function (filename) {\n const formData = new FormData()\n formData.append('definition', filename)\n Api.post(`/openc3-api/tables/generate`, {\n data: formData,\n }).then((response) => {\n this.filename = response.data.filename\n this.getDefinition(filename)\n })\n },\n onChange: function (item, { index, event }) {\n this.fileModified = '*'\n item[index].value = event\n },\n },\n}\n<\/script>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"5b8170b15742912765b5ce633f335faa3df00d4a"},o=t[l]||(t[l]={});o[n]&&o[n].hash===e||(o[n]=i);var a=o[n];return sn=function(){return a},a}sn();var rn={components:{TopBar:I,TableRow:q,FileOpenSaveDialog:nn,SimpleTextDialog:cn},data:function(){return sn().f[0]++,sn().s[0]++,{title:"Table Manager",search:"",curTab:null,tables:[],api:null,definition:null,fileInput:"",definitionFilename:"",fileNew:!1,filename:"",fileModified:"",lockedBy:null,fileOpen:!1,showSave:!1,showSaveAs:!1,showError:!1,errorTitle:"",errorText:"",uploadScript:!1,downloadScript:!1,scriptBackground:!0}},computed:{readOnly:function(){return sn().f[1]++,sn().s[1]++,!!this.lockedBy},fullFilename:function(){return sn().f[2]++,sn().s[2]++,"".concat(this.filename," ").concat(this.fileModified).trim()},menus:function(){var n=this;return sn().f[3]++,sn().s[3]++,[{label:"File",items:[{label:"New File",icon:"mdi-file-plus",command:function(){sn().f[4]++,sn().s[4]++,n.newFile()}},{label:"Open File",icon:"mdi-folder-open",command:function(){sn().f[5]++,sn().s[5]++,n.openFile()}},{divider:!0},{label:"Save File",icon:"mdi-content-save",command:function(){sn().f[6]++,sn().s[6]++,n.saveFile()}},{label:"Save As...",icon:"mdi-content-save",command:function(){sn().f[7]++,sn().s[7]++,n.saveAs()}},{divider:!0},{label:"Delete File",icon:"mdi-delete",command:function(){sn().f[8]++,sn().s[8]++,n.delete()}}]}]}},watch:{filename:function(n){var e=this;sn().f[9]++;var t=(sn().s[9]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/upload.rb"),l=(sn().s[10]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/download.rb");sn().s[11]++,C.get("/openc3-api/tables/".concat(t),{headers:{Accept:"application/json","Ignore-Errors":"404"}}).then((function(n){sn().f[10]++,sn().s[12]++,e.uploadScript=!0})).catch((function(n){sn().f[11]++,sn().s[13]++,e.uploadScript=!1})),sn().s[14]++,C.get("/openc3-api/tables/".concat(l),{headers:{Accept:"application/json","Ignore-Errors":"404"}}).then((function(n){sn().f[12]++,sn().s[15]++,e.downloadScript=!0})).catch((function(n){sn().f[13]++,sn().s[16]++,e.downloadScript=!1}))}},created:function(){sn().f[14]++,sn().s[17]++,this.api=new k},methods:{newFile:function(){sn().f[15]++,sn().s[18]++,this.fileModified="",sn().s[19]++,this.fileNew=!0,sn().s[20]++,this.fileOpen=!0},openFile:function(){sn().f[16]++,sn().s[21]++,this.fileOpen=!0},setFile:function(n){var e=n.file,t=n.locked;sn().f[17]++,sn().s[22]++,e.name.includes(".txt")?(sn().b[0][0]++,sn().s[23]++,this.fileNew?(sn().b[1][0]++,sn().s[24]++,this.buildNewBinary(e.name),sn().s[25]++,this.fileNew=!1):(sn().b[1][1]++,sn().s[26]++,this.getDefinition(e.name))):(sn().b[0][1]++,sn().s[27]++,this.unlockFile(),sn().s[28]++,this.filename=e.name.split("*")[0],sn().s[29]++,this.fileModified="",sn().s[30]++,this.lockedBy=t,sn().s[31]++,this.getDefinition())},setError:function(n){sn().f[18]++,sn().s[32]++,this.errorTitle="Error",sn().s[33]++,this.errorText="Error: ".concat(n),sn().s[34]++,this.errorText=response.data.message,sn().s[35]++,this.showError=!0},saveFile:function(){var n=this;sn().f[19]++,sn().s[36]++,this.showSave=!0;var e=(sn().s[37]++,new FormData);sn().s[38]++,e.append("binary",this.filename),sn().s[39]++,e.append("definition",this.definitionFilename),sn().s[40]++,e.append("tables",JSON.stringify(this.tables)),sn().s[41]++,C.post("/openc3-api/tables/".concat(this.filename),{data:e}).then((function(e){sn().f[20]++,sn().s[42]++,n.fileModified="",sn().s[43]++,setTimeout((function(){sn().f[21]++,sn().s[44]++,n.showSave=!1}),2e3)})).catch((function(e){var t=e.response;sn().f[22]++,sn().s[45]++,n.showSave=!1,sn().s[46]++,n.errorTitle="Save Error",sn().s[47]++,n.errorText=t.data.message,sn().s[48]++,n.showError=!0})),sn().s[49]++,this.lockFile()},saveAs:function(){sn().f[23]++,sn().s[50]++,this.showSaveAs=!0},saveAsFilename:function(n){var e=this;sn().f[24]++,sn().s[51]++,C.put("/openc3-api/tables/".concat(this.filename,"/save-as/").concat(n)).then((function(t){sn().f[25]++,sn().s[52]++,e.filename=n,sn().s[53]++,e.getDefinition(e.definitionFilename)}))},delete:function(){var n=this;sn().f[26]++,sn().s[54]++,""!==this.filename?(sn().b[2][0]++,sn().s[55]++,this.$dialog.confirm("Permanently delete file: ".concat(this.filename),{okText:"Delete",cancelText:"Cancel"}).then((function(e){return sn().f[27]++,sn().s[56]++,C["delete"]("/openc3-api/tables/".concat(n.filename),{data:{}})})).then((function(e){sn().f[28]++,sn().s[57]++,n.newFile()})).catch((function(e){sn().f[29]++,sn().s[58]++,e?(sn().b[3][0]++,sn().s[59]++,n.$notify.caution({title:"Error",body:"Error deleting file: ".concat(e)})):sn().b[3][1]++}))):sn().b[2][1]++},downloadBinary:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[4][0]++,null);sn().f[30]++;var e=(sn().s[60]++,new FormData);sn().s[61]++,e.append("binary",this.filename),sn().s[62]++,e.append("definition",this.definitionFilename),sn().s[63]++,null!==n?(sn().b[5][0]++,sn().s[64]++,e.append("table",n)):sn().b[5][1]++,sn().s[65]++,C.post("/openc3-api/tables/binary",{data:e}).then((function(n){sn().f[31]++;var e=(sn().s[66]++,window.atob(n.data.contents)),t=(sn().s[67]++,new Uint8Array(e.length));sn().s[68]++;for(var l=(sn().s[69]++,0);l<e.length;++l)sn().s[70]++,t[l]=e.charCodeAt(l);var i=(sn().s[71]++,new Blob([t],{type:"application/octet-stream"})),o=(sn().s[72]++,document.createElement("a"));sn().s[73]++,o.href=URL.createObjectURL(i),sn().s[74]++,o.setAttribute("download",n.data.filename),sn().s[75]++,o.click()}))},downloadDefinition:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[6][0]++,null);sn().f[32]++;var e=(sn().s[76]++,new FormData);sn().s[77]++,e.append("definition",this.definitionFilename),sn().s[78]++,null!==n?(sn().b[7][0]++,sn().s[79]++,e.append("table",n)):sn().b[7][1]++,sn().s[80]++,C.post("/openc3-api/tables/definition",{data:e}).then((function(n){sn().f[33]++;var e=(sn().s[81]++,new Blob([n.data.contents],{type:"text/plain"})),t=(sn().s[82]++,document.createElement("a"));sn().s[83]++,t.href=URL.createObjectURL(e),sn().s[84]++,t.setAttribute("download",n.data.filename),sn().s[85]++,t.click()}))},downloadReport:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[8][0]++,null);sn().f[34]++;var t=(sn().s[86]++,new FormData);sn().s[87]++,t.append("binary",this.filename),sn().s[88]++,t.append("definition",this.definitionFilename),sn().s[89]++,null!==e?(sn().b[9][0]++,sn().s[90]++,t.append("table",e)):sn().b[9][1]++,sn().s[91]++,C.post("/openc3-api/tables/report",{data:t}).then((function(e){sn().f[35]++;var t=(sn().s[92]++,"Binary: ".concat(n.filename,"\n")+"Definition: ".concat(n.definitionFilename,"\n\n")),l=(sn().s[93]++,new Blob([t,e.data.contents],{type:"text/plain"})),i=(sn().s[94]++,document.createElement("a"));sn().s[95]++,i.href=URL.createObjectURL(l),sn().s[96]++,i.setAttribute("download",e.data.filename),sn().s[97]++,i.click()}))},upload:function(){var n=this;sn().f[36]++;var e=(sn().s[98]++,this.filename.split("/").slice(0,2).join("/")+"/procedures/upload.rb");sn().s[99]++,C.post("/script-api/scripts/".concat(e,"/run"),{data:{environment:[{key:"TBL_FILENAME",value:this.filename}]}}).then((function(e){sn().f[37]++,sn().s[100]++,!0!==n.scriptBackground?(sn().b[10][0]++,sn().s[101]++,window.open("/tools/scriptrunner/".concat(e.data),"_blank")):sn().b[10][1]++}))},download:function(){var n=this;sn().f[38]++,sn().s[102]++,this.$dialog.confirm("Are you sure you want to overwrite ".concat(this.filename,"? ")+"You can Save As to create a new file and then Download to preserve the existing file. Note: Once the download completes you will need to re-open the file to see changes.",{okText:"Download (Overwrite!)",cancelText:"Cancel"}).then((function(){sn().f[39]++;var e=(sn().s[103]++,n.filename.split("/").slice(0,2).join("/")+"/procedures/download.rb");sn().s[104]++,C.post("/script-api/scripts/".concat(e,"/run"),{data:{environment:[{key:"TBL_FILENAME",value:n.filename}]}}).then((function(e){sn().f[40]++,sn().s[105]++,!0!==n.scriptBackground?(sn().b[11][0]++,sn().s[106]++,window.open("/tools/scriptrunner/".concat(e.data),"_blank")):sn().b[11][1]++}))})).catch((function(n){sn().f[41]++}))},confirmLocalUnlock:function(){var n=this;sn().f[42]++,sn().s[107]++,this.$dialog.confirm("Are you sure you want to unlock this file for editing? If another user is editing this file, your changes might conflict with each other.",{okText:"Force Unlock",cancelText:"Cancel"}).then((function(){return sn().f[43]++,sn().s[108]++,n.lockedBy=null,sn().s[109]++,n.lockFile()}))},lockFile:function(){return sn().f[44]++,sn().s[110]++,C.post("/openc3-api/tables/".concat(this.filename,"/lock"))},unlockFile:function(){sn().f[45]++,sn().s[111]++,sn().b[13][0]++,""===this.filename||(sn().b[13][1]++,this.readOnly)?sn().b[12][1]++:(sn().b[12][0]++,sn().s[112]++,C.post("/openc3-api/tables/".concat(this.filename,"/unlock")))},getDefinition:function(){var n=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(sn().b[14][0]++,null);sn().f[46]++,sn().s[113]++,e?sn().b[15][1]++:(sn().b[15][0]++,sn().s[114]++,e=this.filename.replace("/bin/","/config/").replace(".bin","_def.txt")),sn().s[115]++,this.tables=[];var t=(sn().s[116]++,new FormData);sn().s[117]++,t.append("binary",this.filename),sn().s[118]++,t.append("definition",e),sn().s[119]++,C.post("/openc3-api/tables/load",{data:t}).then((function(t){sn().f[47]++,sn().s[120]++,n.definitionFilename=e,sn().s[121]++,n.tables=t.data.tables.map((function(n){return sn().f[48]++,sn().s[122]++,(0,a.Z)((0,a.Z)({},n),{},{headers:n.headers.map((function(e,t){sn().f[49]++;var l=(sn().s[123]++,{text:e,filterable:"INDEX"!==e});return sn().s[124]++,1===n.numColumns?(sn().b[16][0]++,sn().s[125]++,(0,a.Z)((0,a.Z)({},l),{},{value:"[0].".concat(e.toLowerCase())})):(sn().b[16][1]++,sn().s[126]++,(0,a.Z)((0,a.Z)({},l),{},{value:"[".concat(t,"].value")}))}))})})),sn().s[127]++,t.data["errors"]?(sn().b[17][0]++,sn().s[128]++,n.$notify.caution({title:"Warning",body:t.data["errors"]})):sn().b[17][1]++})).catch((function(t){sn().f[50]++,sn().s[129]++,404==t.response.status?(sn().b[18][0]++,sn().s[130]++,n.$notify.normal({title:"Definition File Not Found",body:"Definition file ".concat(e," not found. Please select definition file.")}),sn().s[131]++,n.fileOpen=!0):(sn().b[18][1]++,sn().s[132]++,n.$notify.serious({title:"Error",body:"Error loading due to ".concat(t.response.statusText,". Status: ").concat(t.response.status)}))}))},buildNewBinary:function(n){var e=this;sn().f[51]++;var t=(sn().s[133]++,new FormData);sn().s[134]++,t.append("definition",n),sn().s[135]++,C.post("/openc3-api/tables/generate",{data:t}).then((function(t){sn().f[52]++,sn().s[136]++,e.filename=t.data.filename,sn().s[137]++,e.getDefinition(n)}))},onChange:function(n,e){var t=e.index,l=e.event;sn().f[53]++,sn().s[138]++,this.fileModified="*",sn().s[139]++,n[t].value=l}}},un=rn,mn=(0,S.Z)(un,i,o,!1,null,null,null),dn=mn.exports},363:function(n,e,t){"use strict";t.r(e);var l=t(9601),i=t.n(l),o=t(2609),a=t.n(o),c=a()(i());c.push([n.id,".v-list[data-v-5fb8d7fb] .v-label{margin-left:5px}.v-list-item__icon[data-v-5fb8d7fb]{margin-right:15px!important}.v-list-item__title[data-v-5fb8d7fb]{color:#fff}",""]),e["default"]=c},9824:function(n,e,t){var l=t(363);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[n.id,l,""]]),l.locals&&(n.exports=l.locals);var i=t(3514).Z;i("7bc1978b",l,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
2
  //# sourceMappingURL=836.js.map