openc3-cosmos-tool-scriptrunner 5.19.0 → 5.20.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2 +0,0 @@
1
- (self["webpackChunk_openc3_cosmos_tool_scriptrunner"]=self["webpackChunk_openc3_cosmos_tool_scriptrunner"]||[]).push([[931],{7448:(e,n,t)=>{var l={"./ArrayWidget.vue":1951,"./BlockWidget.vue":9312,"./ButtonWidget.vue":4814,"./CanvasWidget.vue":2430,"./CanvasdotWidget.vue":6614,"./CanvasimageWidget.vue":8239,"./CanvasimagevalueWidget.vue":4653,"./CanvaslabelWidget.vue":6631,"./CanvaslabelvalueWidget.vue":8211,"./CanvaslineWidget.vue":4352,"./CanvaslinevalueWidget.vue":4291,"./CheckbuttonWidget.vue":5733,"./ComboboxWidget.vue":3835,"./DynamicWidget.vue":3634,"./FormatvalueWidget.vue":2656,"./HorizontalWidget.vue":2907,"./HorizontalboxWidget.vue":4812,"./HorizontallineWidget.vue":9646,"./IframeWidget.vue":527,"./ImageviewerWidget.vue":4259,"./LabelWidget.vue":4858,"./LabelledWidget.vue":8195,"./LabelprogressbarWidget.vue":8207,"./LabelsparklineWidget.vue":5162,"./LabelvalueWidget.vue":6543,"./LabelvaluedescWidget.vue":7623,"./LabelvaluelimitsbarWidget.vue":1852,"./LabelvaluelimitscolumnWidget.vue":2766,"./LabelvaluerangebarWidget.vue":8756,"./LedWidget.vue":8386,"./LimitsbarWidget.vue":2835,"./LimitscolorWidget.vue":8518,"./LimitscolumnWidget.vue":9178,"./LinegraphWidget.vue":2653,"./MatrixbycolumnsWidget.vue":5043,"./ProgressbarWidget.vue":6825,"./RadiobuttonWidget.vue":5993,"./RadiogroupWidget.vue":5758,"./RangebarWidget.vue":5736,"./RollupWidget.vue":9517,"./ScrollwindowWidget.vue":9769,"./SectionheaderWidget.vue":2959,"./SignalWidget.vue":1533,"./SpacerWidget.vue":773,"./SparklineWidget.vue":6115,"./TabbookWidget.vue":2926,"./TextboxWidget.vue":7462,"./TextfieldWidget.vue":7540,"./TitleWidget.vue":6525,"./ValueWidget.vue":2932,"./ValuelimitsbarWidget.vue":3660,"./ValuelimitscolumnWidget.vue":4428,"./ValuerangebarWidget.vue":1616,"./VerticalWidget.vue":1629,"./VerticalboxWidget.vue":5757};function i(e){var n=s(e);return t(n)}function s(e){if(!t.o(l,e)){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}return l[e]}i.keys=function(){return Object.keys(l)},i.resolve=s,e.exports=i,i.id=7448},2754:(e,n,t)=>{"use strict";t.d(n,{A:()=>s});var l=t(9729),i=t(4364);const s={mixins:[l.A],data(){return{minValue:null,maxValue:null,redLow:0,yellowLow:0,greenLow:0,greenHigh:0,yellowHigh:0,redHigh:0,blue:0,api:null,limitsSettings:{DEFAULT:[]},currentLimitsSet:"DEFAULT",currentSetRefreshInterval:null}},computed:{cssProps:function(){let e=null;this.screen&&(e=this.screen.screenValues[this.valueId][0]);let n=this.modifyLimits(this.limitsSettings[this.selectedLimitsSet]);return this.calcLimits(n),{"--height":this.height+"px","--width":this.width+"px","--container-height":this.height-5+"px","--position":this.calcPosition(e,n)+"%","--redlow-width":this.redLow+"%","--redhigh-width":this.redHigh+"%","--yellowlow-width":this.yellowLow+"%","--yellowhigh-width":this.yellowHigh+"%","--greenlow-width":this.greenLow+"%","--greenhigh-width":this.greenHigh+"%","--blue-width":this.blue+"%"}},selectedLimitsSet:function(){return this.limitsSettings.hasOwnProperty(this.currentLimitsSet)?this.currentLimitsSet:"DEFAULT"}},created(){this.api=new i.x,this.api.get_limits(this.parameters[0],this.parameters[1],this.parameters[2]).then((e=>{this.limitsSettings=e})),this.getCurrentLimitsSet(),this.currentSetRefreshInterval=setInterval(this.getCurrentLimitsSet,6e4),this.settings.forEach((e=>{"MIN_VALUE"===e[0]&&(this.minValue=parseInt(e[1])),"MAX_VALUE"===e[0]&&(this.maxValue=parseInt(e[1]))})),this.width=this.setWidth(this.parameters[4],"px",this.width),this.height=this.setHeight(this.parameters[5],"px",this.height),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__CONVERTED`,this.screen&&this.screen.addItem(this.valueId)},destroyed(){this.screen&&this.screen.deleteItem(this.valueId),clearInterval(this.currentSetRefreshInterval)},methods:{modifyLimits(e){this.redLow=10,this.redHigh=10,null!==this.minValue&&(e[0]<=this.minValue&&(e[0]=this.minValue,this.redLow=0),e[1]<=this.minValue&&(e[1]=this.minValue),e[2]<=this.minValue&&(e[2]=this.minValue),e[3]<=this.minValue&&(e[3]=this.minValue),e.length>4&&e[4]<=this.minValue&&(e[4]=this.minValue),e.length>4&&e[5]<=this.minValue&&(e[5]=this.minValue)),null!==this.maxValue&&(e[0]>=this.maxValue&&(e[0]=this.maxValue),e[1]>=this.maxValue&&(e[1]=this.maxValue),e[2]>=this.maxValue&&(e[2]=this.maxValue),e[3]>=this.maxValue&&(e[3]=this.maxValue,this.redHigh=0),e.length>4&&e[4]>=this.maxValue&&(e[4]=this.maxValue),e.length>4&&e[5]>=this.maxValue&&(e[5]=this.maxValue)),e[0]==e[1]&&(this.yellowLow=0),e[2]==e[3]&&(this.yellowHigh=0);let n=80;return 0==this.redLow&&(n+=10),0==this.redHigh&&(n+=10),this.scale=(e[3]-e[0])/n,e},calcPosition(e,n){if(!e||!n)return;let t=n[0]-10*this.scale;this.minValue&&this.minValue==n[0]&&(t=n[0]);let l=n[3]-10*this.scale;if(this.maxValue&&this.maxValue==n[3]&&(l=n[3]),e.raw)return"-Infinity"===e.raw?0:100;if(e<this.min)return 0;if(e>this.max)return 100;{const n=parseInt((e-t)/this.scale);return n>100?100:n<0?0:n}},calcLimits(e){e&&(this.yellowLow=Math.round((e[1]-e[0])/this.scale),this.yellowHigh=Math.round((e[3]-e[2])/this.scale),e.length>4?(this.greenLow=Math.round((e[4]-e[1])/this.scale),this.greenHigh=Math.round((e[2]-e[5])/this.scale),this.blue=Math.round(100-this.redLow-this.yellowLow-this.greenLow-this.greenHigh-this.yellowHigh-this.redHigh)):(this.greenLow=Math.round(100-this.redLow-this.yellowLow-this.yellowHigh-this.redHigh),this.greenHigh=0,this.blue=0))},getCurrentLimitsSet:function(){this.api.get_limits_set().then((e=>{this.currentLimitsSet=e}))}}}},1033:(e,n,t)=>{"use strict";t.d(n,{A:()=>o});t(7107),t(9375),t(4293);var l=t(2266),i=t(5169),s=t(9729);const o={mixins:[s.A],data:function(){return{id:Math.floor(1e11*Math.random()),state:"start",items:[{targetName:this.parameters[0],packetName:this.parameters[1],itemName:this.parameters[2],valueType:this.parameters[3]||"CONVERTED",reduced:this.parameters[4]||"DECOM",reducedType:this.parameters[5]||null}],startTime:null,secondsGraphed:3600,pointsSaved:3600,pointsGraphed:3600,size:{height:300,width:400}}},created:function(){this.settings.forEach((e=>{switch(e[0]){case"ITEM":this.items.push({targetName:e[1],packetName:e[2],itemName:e[3],valueType:e[4]||"CONVERTED",reduced:e[5]||"DECOM",reducedType:e[6]||null});case"STARTTIME":let n=(0,l.qg)(e[1],"yyyy/MM/dd HH:mm:ss",new Date);this.startTime=1e6*n.getTime();break;case"HISTORY":let t=parseInt(e[1].slice(0,e[1].length-1)),s=null,o=1;switch(e[1][e[1].length-1]){case"d":s="days",o=86400;break;case"h":s="hours",o=3600;break;case"m":s="minutes",o=60;break;case"s":s="seconds";break;default:throw new Error(`Unknown time suffix: ${e[1]}!`)}let a={};a[s]=t,this.startTime=1e6*(0,i.j)(new Date,a).getTime(),t*o>this.secondsGraphed&&(this.secondsGraphed=t*o),t*o>this.pointsSaved&&(this.pointsSaved=t*o),t*o>this.pointsGraphed&&(this.pointsGraphed=t*o);break;case"SECONDSGRAPHED":this.secondsGraphed=parseInt(e[1]);break;case"POINTSSAVED":this.pointsSaved=parseInt(e[1]);break;case"POINTSGRAPHED":this.pointsGraphed=parseInt(e[1]);break;case"SIZE":this.size.width=parseInt(e[1]),this.size.height=parseInt(e[2]);break}})),this.screen&&(this.items=this.items.map((e=>{let n=e.itemName;if(e.itemName.includes("[["))e.itemName=e.itemName.replace("[[","[").replace("]]","]"),n=e.itemName;else if(e.itemName.includes("[")){let t=e.itemName.match(/\[(\d+)\]/);this.arrayIndex=parseInt(t[1]),n=e.itemName.replace(t[0],"")}return this.screen.addItem(`${e.targetName}__${e.packetName}__${n}__${e.valueType}`,!0),e})))},destroyed(){this.screen&&this.items.map((e=>this.screen.deleteItem(`${e.targetName}__${e.packetName}__${e.itemName}__${e.valueType}`)))}}},7163:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});var l=t(2795);const i={props:{target:{type:String,require:!0}},methods:{getPresignedUrl:async function(e){let n="targets_modified";await l.A.get(`/openc3-api/storage/exists/${encodeURIComponent(`${window.openc3Scope}/${n}/${this.target}/public/${e}`)}?bucket=OPENC3_CONFIG_BUCKET`,{headers:{Accept:"application/json","Ignore-Errors":"404"}}).catch((e=>{n="targets"}));let t=await l.A.get(`/openc3-api/storage/download/${encodeURIComponent(`${window.openc3Scope}/${n}/${this.target}/public/${e}`)}?bucket=OPENC3_CONFIG_BUCKET`);return t.data.url}}}},9843:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});var l=t(9729);const i={mixins:[l.A],props:{widgets:{type:Array,default:()=>[]}}}},2967:(e,n,t)=>{"use strict";t.d(n,{A:()=>s});t(4293),t(8715);var l=t(7903),i=t(9729);t(9471);const s={mixins:[i.A,l.A],props:{value:{default:null},limitsState:{type:String,default:null},counter:{default:null},formatString:null,timeZone:{type:String,default:"local"}},data(){return{curValue:null,prevValue:null,grayLevel:80,grayRate:5,valueId:null,arrayIndex:null,viewDetails:!1,contextMenuShown:!1,x:0,y:0,contextMenuOptions:[{title:"Details",action:()=>{this.contextMenuShown=!1,this.viewDetails=!0}},{title:"Graph",action:()=>{window.open("/tools/tlmgrapher/"+this.parameters[0]+"/"+this.parameters[1]+"/"+this.parameters[2],"_blank")}}]}},watch:{_counter:function(e,n){this.curValue!==this.prevValue?this.grayLevel=80:(this.grayLevel-=this.grayRate,this.grayLevel<30&&(this.grayLevel=30)),this.prevValue=this.curValue}},computed:{_value:function(){return this.curValue=this.value,null===this.curValue&&(this.screen?this.screen.screenValues[this.valueId]&&(null!==this.arrayIndex&&this.screen.screenValues[this.valueId][0]?this.curValue=this.screen.screenValues[this.valueId][0][this.arrayIndex]:this.curValue=this.screen.screenValues[this.valueId][0]):this.curValue=null),this.curValue=this.formatValue(this.curValue),this.curValue},_limitsState:function(){let e=this.limitsState;return null===e&&(this.screen?this.screen.screenValues[this.valueId]&&(e=this.screen.screenValues[this.valueId][1]):e=null),e},_counter:function(){let e=this.counter;return null===e&&(this.screen?this.screen.screenValues[this.valueId]&&(e=this.screen.screenValues[this.valueId][2]):e=null),e},valueClass:function(){return"value shrink pa-1 openc3-"+this.limitsColor},astroIcon(){switch(this.limitsColor){case"green":return"$vuetify.icons.astro-status-normal";case"yellow":return"$vuetify.icons.astro-status-caution";case"red":return"$vuetify.icons.astro-status-critical";case"blue":return"$vuetify.icons.astro-status-standby";default:return null}},limitsColor(){let e=this._limitsState;if(null!=e)switch(e){case"GREEN":case"GREEN_HIGH":case"GREEN_LOW":return"green";case"YELLOW":case"YELLOW_HIGH":case"YELLOW_LOW":return"yellow";case"RED":case"RED_HIGH":case"RED_LOW":return"red";case"BLUE":return"blue";case"STALE":return"purple";default:return"white"}return""},limitsLetter(){let e=this._limitsState;if(null!=e){let n=e.charAt(0);return e.endsWith("_LOW")&&(n=n.toLowerCase()),n}return""}},created(){if(null===this.value||null===this.limitsState){if(this.parameters[2].includes("[["))this.parameters[2]=this.parameters[2].replace("[[","[").replace("]]","]");else if(this.parameters[2].includes("[")){let e=this.parameters[2].match(/\[(\d+)\]/);this.arrayIndex=parseInt(e[1]),this.parameters[2]=this.parameters[2].replace(e[0],"")}this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${this.getType()}`,this.screen&&(this.screen.addItem(this.valueId),this.timeZone=this.screen.timeZone)}},destroyed(){null!==this.value&&null!==this.limitsState||this.screen&&this.screen.deleteItem(this.valueId)},methods:{getType(){let e="WITH_UNITS";return this.parameters[3]&&(e=this.parameters[3]),e},formatValue(e){if(e&&this.valueId&&(this.valueId.includes("PACKET_TIMEFORMATTED")||this.valueId.includes("RECEIVED_TIMEFORMATTED")))return e=e.replaceAll("/","-"),this.formatUtcToLocal(new Date(e),this.timeZone);if(e&&"String"===e["json_class"]&&void 0!==e["raw"]){let n=Array.from(e["raw"].slice(0,32),(function(e){return("0"+(255&e).toString(16)).slice(-2)})).join(" ").toUpperCase();return e["raw"].length>32&&(n+="..."),n}if("Array"===Object.prototype.toString.call(e).slice(8,-1)){let n="[";for(let t=0;t<e.length;t++)"String"===Object.prototype.toString.call(e[t]).slice(8,-1)?n+='"'+e[t]+'"':n+=e[t],t!=e.length-1&&(n+=", ");return n+="]",n}return"Object"===Object.prototype.toString.call(e).slice(8,-1)?"":this.formatString&&e?sprintf(this.formatString,e):""+e},showContextMenu(e){e.preventDefault(),this.contextMenuShown=!1,this.x=e.clientX,this.y=e.clientY,this.$nextTick((()=>{this.contextMenuShown=!0}))}}}},9729:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});t(9375),t(7534);var l=t(3069);const i={props:{widgetIndex:{type:Number,default:null},parameters:{type:Array,default:()=>[]},settings:{type:Array,default:()=>[]},line:{type:String,default:""},lineNumber:{type:Number,default:0}},data(){return{screen:null,style:{}}},computed:{computedStyle(){return this.settings.forEach((e=>{const n=parseInt(e[0]);if(null!==this.widgetIndex){if(this.widgetIndex!==n)return;e=e.slice(1)}this.applySetting(this.style,e)})),void 0===this.style["width"]&&(this.style["flex"]="0 10 100%"),this.style}},created(){this.settings.forEach((e=>{"__SCREEN__"===e[0]&&(this.screen=e[1])})),this.settings=this.settings.map((e=>{const n=parseInt(e[0]);return isNaN(n)||null===this.widgetIndex?e:this.widgetIndex===n?e.slice(1):void 0})).filter((e=>void 0!==e))},methods:{applySetting(e,n){switch(n[0]){case"TEXTALIGN":e["text-align"]=n[1].toLowerCase()+" !important",e["--text-align"]=n[1].toLowerCase();break;case"PADDING":isNaN(Number(n[1]))||(n[1]+="px"),e["padding"]=n[1]+" !important";break;case"MARGIN":isNaN(Number(n[1]))||(n[1]+="px"),e["margin"]=n[1]+" !important";break;case"BACKCOLOR":e["background-color"]=this.getColor(n.slice(1))+" !important";break;case"TEXTCOLOR":e["color"]=this.getColor(n.slice(1))+" !important";break;case"BORDERCOLOR":e["border-width"]="1px!important",e["border-style"]="solid!important",e["border-color"]=this.getColor(n.slice(1))+" !important";break;case"WIDTH":isNaN(Number(n[1]))||(n[1]+="px"),e["width"]=n[1]+" !important";break;case"HEIGHT":isNaN(Number(n[1]))||(n[1]+="px"),e["height"]=n[1]+" !important";break;case"RAW":e[n[1].toLowerCase()]=n[2]+" !important";break}},verifyNumParams(e,n,t,i=""){let s={line:this.line,lineNumber:this.lineNumber,keyword:e,parameters:this.parameters};for(let o=1;o<=n;o++)if(void 0===this.parameters[o-1])throw new l.o(s,`Not enough parameters for ${e}.`,i,"https://docs.openc3.com/docs/configuration");if(null!==t&&this.parameters.length>t)throw new l.o(s,`Too many parameters for ${e}.`,i,"https://docs.openc3.com/docs/configuration")},setWidth(e,n="px",t="120"){let l=null;if(l=null!==this.widgetIndex?this.settings.find((e=>parseInt(e[0])===this.widgetIndex&&"WIDTH"===e[1])):this.settings.find((e=>"WIDTH"===e[0])),l)return l["WIDTH"];if(e){let t=["WIDTH",`${e}${n}`];return null!==this.widgetIndex&&t.unshift(this.widgetIndex),this.settings.push(t),parseInt(e)}{let e=["WIDTH",`${t}${n}`];return null!==this.widgetIndex&&e.unshift(this.widgetIndex),this.settings.push(e),parseInt(t)}},setHeight(e,n="px",t="20"){let l=null;if(l=null!==this.widgetIndex?this.settings.find((e=>parseInt(e[0])===this.widgetIndex&&"HEIGHT"===e[1])):this.settings.find((e=>"HEIGHT"===e[0])),l)return l["HEIGHT"];if(e){let t=["HEIGHT",`${e}${n}`];return null!==this.widgetIndex&&t.unshift(this.widgetIndex),this.settings.push(t),parseInt(e)}{let e=["HEIGHT",`${t}${n}`];return null!==this.widgetIndex&&e.unshift(this.widgetIndex),this.settings.push(e),parseInt(t)}},getColor(e){switch(e.length){case 1:return e[0].toLowerCase();case 3:return`rgb(${e[0]},${e[1]},${e[2]})`}}}}},2795:(e,n,t)=>{"use strict";t.d(n,{A:()=>a});var l=t(2673);const i=async function(e,n,{data:t,params:i={},headers:s,noAuth:o=!1,noScope:a=!1,onUploadProgress:r=!1}={}){if(!o){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(c){OpenC3Auth.login()}s["Authorization"]=localStorage.openc3Token}return s["manual"]=!0,a||i["scope"]||(i["scope"]=window.openc3Scope),(0,l.A)({method:e,url:n,data:t,params:i,headers:s,onUploadProgress:r})},s={Accept:"application/json"},o={...s,"Content-Type":"application/json"},a={get:function(e,{params:n,headers:t=s,noScope:l,noAuth:o,onUploadProgress:a}={}){return i("get",e,{params:n,headers:t,noScope:l,noAuth:o,onUploadProgress:a})},put:function(e,{data:n,params:t,headers:l=o,noScope:s,noAuth:a,onUploadProgress:r}={}){return i("put",e,{data:n,params:t,headers:l,noScope:s,noAuth:a,onUploadProgress:r})},post:function(e,{data:n,params:t,headers:l=o,noScope:s,noAuth:a,onUploadProgress:r}={}){return i("post",e,{data:n,params:t,headers:l,noScope:s,noAuth:a,onUploadProgress:r})},delete:function(e,{params:n,headers:t=s,noScope:l,noAuth:o,onUploadProgress:a}={}){return i("delete",e,{params:n,headers:t,noScope:l,noAuth:o,onUploadProgress:a})}}},2673:(e,n,t)=>{"use strict";t.d(n,{A:()=>a});var l=t(3816),i=t(1649);const s=new i["default"],o=l.A.create({baseURL:location.origin,timeout:6e4,params:{}});o.interceptors.response.use((e=>e),(e=>{if(e.response){if(401===e.response.status&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then((function(e){e&&OpenC3Auth.setTokens()})),e.response.config.headers["Ignore-Errors"]&&e.response.config.headers["Ignore-Errors"].includes(e.response.status.toString()))return Promise.reject(e);let n=`HTTP ${e.response.status} - `;throw e.response?.statusText&&(n+=`${e.response.statusText} `),e.response?.config?.data&&(n+=`${e.response.config.data} `),e.response?.data?.message?n+=`${e.response.data.message}`:e.response?.data?.exception?n+=`${e.response.data.exception}`:e.response?.data?.error?.message?(e.response.data.error.class&&(n+=`${e.response.data.error.class} `),n+=`${e.response.data.error.message}`):n+=`${e.response?.data}`,s.$notify&&s.$notify.serious({title:"Network error",body:n}),e}throw e}));const a=o},2702:(e,n,t)=>{"use strict";t.d(n,{A:()=>i});var l=t(7752);l.D$.staleThreshold=10;class i{constructor(e="/openc3-api/cable"){this._cable=null,this._url=e}disconnect(){this._cable&&this._cable.disconnect()}createSubscription(e,n,t={},i={}){return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then((n=>{if(n&&OpenC3Auth.setTokens(),null==this._cable){let e=this._url+"?scope="+encodeURIComponent(window.openc3Scope)+"&authorization="+encodeURIComponent(localStorage.openc3Token);this._cable=l.Be(e)}return this._cable.subscriptions.create({channel:e,...i},t)}))}recordPing(){this._cable.connection.monitor.recordPing()}}},3069:(e,n,t)=>{"use strict";t.d(n,{R:()=>s,o:()=>i});var l=t(814);t(9375),t(4293);class i{constructor(e,n,t="",l=""){this.keyword=e.keyword,this.parameters=e.parameters,this.filename=e.filename,this.line=e.line,this.lineNumber=e.lineNumber,this.message=n,this.usage=t,this.url=l}}class s{constructor(){(0,l.A)(this,"keyword",null),(0,l.A)(this,"parameters",[]),(0,l.A)(this,"filename",""),(0,l.A)(this,"line",""),(0,l.A)(this,"lineNumber",0),(0,l.A)(this,"url","https://docs.openc3.com/docs/configuration")}verify_num_parameters(e,n,t=""){for(let l=1;l<=e;l++)if(void 0===this.parameters[l-1])throw new i(this,`Not enough parameters for ${this.keyword}.`,t,this.url);if(n&&void 0!==this.parameters[n])throw new i(this,`Too many parameters for ${this.keyword}.`,t,this.url)}remove_quotes(e){if(e.length<2)return e;let n=e.charAt(0);if('"'!==n&&"'"!==n)return e;let t=e.charAt(e.length-1);return n!==t?e:e.substring(1,e.length-1)}scan_string(e,n){if(!n.global)throw"rx must have 'global' flag set";let t=[];return e.replace(n,(function(e){return t.push(e),e})),t}parse_string(e,n,t,l,i){let s=!1;this.line="",this.keyword=null,this.parameters=[],this.filename=n;let o=e.split("\n"),a=o.length;for(let r=0;r<a;r++){this.lineNumber=r+1;let e=o[r].trim();if(0===e.length)continue;if(!0===s){if("#"===e[0])continue;e=e.substring(1,e.length)}let n=e.charAt(e.length-1),a=!1;switch(n){case"+":a=!0;case"\\":let n=e.substring(0,e.length-1).trim();this.line+=n.substring(0,n.length-1),a&&(this.line+="\n"),s=!0;continue;case"&":this.line+=e.substring(0,e.length-1);continue;default:this.line+=e}s=!1;let c=/("([^\\"]|\\.)*")|('([^\\']|\\.)*')|\S+/g,u=this.scan_string(this.line,c),d="";if(u.length>0&&(d+=u[0]),0===d.length||"#"===d.charAt(0)?this.keyword=null:this.keyword=d.toUpperCase(),this.parameters=[],null===this.keyword){t&&i(this.keyword,this.parameters,this.line,this.lineNumber),this.line="";continue}let m=u.length;if(m>1)for(let t=1;t<m;t++){let e=u[t];if(e.length>0&&"#"===e.charAt(0))break;l?this.parameters.push(this.remove_quotes(e)):this.parameters.push(e)}i(this.keyword,this.parameters,this.line,this.lineNumber),this.line=""}}}},4364:(e,n,t)=>{"use strict";t.d(n,{x:()=>s});var l=t(814),i=(t(7107),t(2482),t(7067),t(4147),t(2682),t(785),t(8357),t(6196),t(821),t(6554),t(8472),t(7404),t(5803),t(3912),t(2673));class s{constructor(){(0,l.A)(this,"id",1)}async exec(e,n,t={},l={},s=6e4){try{let e=await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity);e&&OpenC3Auth.setTokens()}catch(o){OpenC3Auth.login()}this.id=this.id+1;try{t["scope"]=window.openc3Scope,l["manual"]=!0;const o=await i.A.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:n,id:this.id,keyword_params:t},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...l},timeout:s});return o.data.result}catch(o){let e=new Error;throw o.response?(e.name=o.response.data.error.data.class,e.message=o.response.data.error.data.message):o.request?(e.name="Request error",e.message="Request error, no response received"):e.name="Unknown error",e}}decode_openc3_type(e){if(null!==e&&"object"===typeof e&&"Float"==e.json_class&&e.raw){if("NaN"==e.raw)return NaN;if("Infinity"==e.raw)return 1/0;if("-Infinity"==e.raw)return-1/0}return null}encode_openc3_type(e){return Number.isNaN(e)?{json_class:"Float",raw:"NaN"}:e==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:e==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}ensure_offline_access(){this.offline_access_needed().then((e=>{e&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then((()=>{delete localStorage.openc3OfflineToken})):OpenC3Auth.getOfflineAccess())}))}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(e){return this.exec("set_offline_access",[e])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(e,n){return this.exec("map_target_to_interface",[e,n])}connect_interface(e,...n){return n.length>0?this.exec("connect_interface",[e,...n]):this.exec("connect_interface",[e])}disconnect_interface(e){return this.exec("disconnect_interface",[e])}interface_cmd(e,n,...t){return this.exec("interface_cmd",[e,n,...t])}get_all_router_info(){return this.exec("get_all_router_info",[])}connect_router(e){return this.exec("connect_router",[e])}disconnect_router(e){return this.exec("disconnect_router",[e])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_all_target_info(){return this.exec("get_all_target_info",[])}get_tlm_cnts(e){return this.exec("get_tlm_cnts",[e])}get_item(e,n,t){return this.exec("get_item",[e,n,t])}get_param(e,n,t){return this.exec("get_param",[e,n,t])}get_parameter(e,n,t){return this.exec("get_parameter",[e,n,t])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(e){return this.exec("set_limits_set",[e])}get_target(e){return this.exec("get_target",[e])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_list",[])}get_tlm(e,n){return this.exec("get_tlm",[e,n])}get_telemetry(e,n){return this.exec("get_telemetry",[e,n])}get_all_tlm(e){return this.exec("get_all_tlm",[e])}get_all_telemetry(e){return this.exec("get_all_telemetry",[e])}get_all_tlm_names(e,n=!1){return this.exec("get_all_tlm_names",[e],{hidden:n})}get_all_telemetry_names(e){return this.exec("get_all_telemetry_names",[e])}async get_tlm_packet(e,n,t,l=30){const i=await this.exec("get_tlm_packet",[e,n],{type:t,stale_time:l});if(null!=i){let e=i.length,n=null;for(let t=0;t<e;t++)n=this.decode_openc3_type(i[t][1]),null!==n&&(i[t][1]=n)}return i}get_packet_derived_items(e,n){return this.exec("get_packet_derived_items",[e,n])}get_tlm_buffer(e,n){return this.exec("get_tlm_buffer",[e,n])}async get_tlm_values(e,n=30,t=null){let l={stale_time:n};null!==t&&(l["cache_timeout"]=t);const i=await this.exec("get_tlm_values",[e],l,{},1e4);let s=i[0].length,o=null;for(let a=0;a<s;a++)o=this.decode_openc3_type(i[0][a]),null!==o&&(i[0][a]=o);return i}get_limits(e,n,t){return this.exec("get_limits",[e,n,t])}async tlm(e,n,t,l="CONVERTED"){let i=null;if(void 0===n)i=await this.exec("tlm",[e]);else if(void 0===t){if(!["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(n)){let e=new Error;throw e.name="TypeError",e.message=`Invalid data type ${n}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`,e}i=await this.exec("tlm",[e],{type:n})}else i=await this.exec("tlm",[e,n,t],{type:l});let s=this.decode_openc3_type(i);return null!==s&&(i=s),i}async inject_tlm(e,n,t=null,l="CONVERTED"){data=await this.exec("inject_tlm",[e,n,t],{type:l})}set_tlm(e,n,t,l){return this.exec("set_tlm",[e,n,t],{type:l})}override_tlm(e,n,t,l){return this.exec("override_tlm",[e,n,t],{type:l})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(e,n,t,l){return this.exec("normalize_tlm",[e,n,t],{type:l})}get_all_cmds(e){return this.exec("get_all_cmds",[e])}get_all_commands(e){return this.exec("get_all_commands",[e])}get_all_cmd_names(e,n=!1){return this.exec("get_all_cmd_names",[e],{hidden:n})}get_all_command_names(e){return this.exec("get_all_command_names",[e])}get_cmd(e,n){return this.exec("get_cmd",[e,n])}get_command(e,n){return this.exec("get_command",[e,n])}get_cmd_cnts(e){return this.exec("get_cmd_cnts",[e])}get_cmd_value(e,n,t,l="CONVERTED"){return this.exec("get_cmd_value",[e,n,t,l])}get_cmd_buffer(e,n){return this.exec("get_cmd_buffer",[e,n])}_cmd(e,n,t,l,i){let s=null;for(let o in l)Object.prototype.hasOwnProperty.call(l,o)&&(s=this.encode_openc3_type(l[o]),null!==s&&(l[o]=s));return this.exec(e,[n,t,l],{},i)}get_cmd_hazardous(e,n,t){return void 0===n?this.exec("get_cmd_hazardous",e):this._cmd("get_cmd_hazardous",e,n,t)}cmd(e,n,t,l={}){return void 0===n?this.exec("cmd",e,{},l):this._cmd("cmd",e,n,t,l)}cmd_no_range_check(e,n,t){return void 0===n?this.exec("cmd_no_range_check",e):this._cmd("cmd_no_range_check",e,n,t)}cmd_raw(e,n,t){return void 0===n?this.exec("cmd_raw",e):this._cmd("cmd_raw",e,n,t)}cmd_raw_no_range_check(e,n,t){return void 0===n?this.exec("cmd_raw_no_range_check",e):this._cmd("cmd_raw_no_range_check",e,n,t)}cmd_no_hazardous_check(e,n,t){return void 0===n?this.exec("cmd_no_hazardous_check",e):this._cmd("cmd_no_hazardous_check",e,n,t)}cmd_no_checks(e,n,t){return void 0===n?this.exec("cmd_no_checks",e):this._cmd("cmd_no_checks",e,n,t)}cmd_raw_no_hazardous_check(e,n,t){return void 0===n?this.exec("cmd_raw_no_hazardous_check",e):this._cmd("cmd_raw_no_hazardous_check",e,n,t)}cmd_raw_no_checks(e,n,t){return void 0===n?this.exec("cmd_raw_no_checks",e):this._cmd("cmd_raw_no_checks",e,n,t)}build_cmd(e,n,t){return void 0===n?this.exec("build_cmd",e):this._cmd("build_cmd",e,n,t)}build_command(e,n,t){return void 0===n?this.exec("build_command",e):this._cmd("build_command",e,n,t)}get_interface_names(){return this.exec("get_interface_names",[])}send_raw(e,n){return this.exec("send_raw",[e,n])}list_configs(e){return this.exec("list_configs",[e])}load_config(e,n){return this.exec("load_config",[e,n])}save_config(e,n,t){return this.exec("save_config",[e,n,t])}delete_config(e,n){return this.exec("delete_config",[e,n])}enable_limits(e,n,t){return this.exec("enable_limits",[e,n,t])}disable_limits(e,n,t){return this.exec("disable_limits",[e,n,t])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(e){return this.exec("get_overall_limits_state",[e])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(e){return this.exec("get_setting",[e])}get_settings(e){return this.exec("get_settings",e)}set_setting(e,n){return this.exec("set_setting",[e,n])}save_setting(e,n){return this.exec("save_setting",[e,n])}get_metrics(){return this.exec("get_metrics",[])}async hashString(e){if(window.isSecureContext){const n=(new TextEncoder).encode(e),t=await crypto.subtle.digest("SHA-256",n),l=new Uint8Array(t);return Array.from(l).map((e=>e.toString(16).padStart(2,"0"))).join("")}}}},7903:(e,n,t)=>{"use strict";t.d(n,{A:()=>d});var l=t(686),i=t(5475),s=t(5179),o=t(2378);const a="yyyy-MM-dd",r="HH:mm:ss.SSS",c="HH:mm:ss",u=`${a} ${r}`,d={methods:{formatUtcToLocal(e,n){return n&&"local"!==n?(0,l.GP)(e,u):(0,l.GP)((0,i.Y)(e,e.getTimezoneOffset()),u)},formatDateTime(e,n){return n&&"local"!==n?(0,o.qD)(e,n,u):(0,l.GP)(e,u)},formatDate:function(e,n){return n&&"local"!==n?(0,o.qD)(e,this.timeZone,a):(0,l.GP)(e,a)},formatTime:function(e,n,t=r){return n&&"local"!==n?(0,o.qD)(e,this.timeZone,t):(0,l.GP)(e,t)},formatTimeHMS:function(e,n){return this.formatTime(e,n,c)},formatTimestamp(e,n){return this.formatDateTime((0,s.H)(e),n)},formatSeconds(e,n){return this.formatDateTime(new Date(1e3*e),n)},formatNanoseconds(e,n){return this.formatDateTime(new Date(parseInt(e)/1e6),n)}}}},6931:(e,n,t)=>{"use strict";function l(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue",n="3eb93f1e9b18405012adbff13c7a2b549bb01777",t=new Function("return this")(),i="__coverage__",s={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.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:35}},4:{start:{line:1,column:277},end:{line:1,column:418}},5:{start:{line:1,column:351},end:{line:1,column:372}},6:{start:{line:1,column:477},end:{line:1,column:494}},7:{start:{line:1,column:764},end:{line:3,column:74}},8:{start:{line:2,column:12},end:{line:2,column:40}},9:{start:{line:3,column:140},end:{line:3,column:164}},10:{start:{line:3,column:421},end:{line:3,column:963}},11:{start:{line:3,column:858},end:{line:3,column:888}},12:{start:{line:3,column:923},end:{line:3,column:953}},13:{start:{line:3,column:1625},end:{line:3,column:1817}},14:{start:{line:3,column:2191},end:{line:3,column:2213}},15:{start:{line:3,column:2501},end:{line:3,column:2517}},16:{start:{line:3,column:2802},end:{line:3,column:2815}},17:{start:{line:3,column:3468},end:{line:3,column:3792}},18:{start:{line:3,column:3643},end:{line:3,column:3699}},19:{start:{line:3,column:4771},end:{line:3,column:4787}},20:{start:{line:3,column:4945},end:{line:3,column:4969}},21:{start:{line:3,column:4969},end:{line:3,column:5027}},22:{start:{line:3,column:5204},end:{line:3,column:5232}},23:{start:{line:3,column:5337},end:{line:3,column:5541}},24:{start:{line:3,column:6291},end:{line:3,column:6304}},25:{start:{line:3,column:6497},end:{line:3,column:6513}},26:{start:{line:3,column:6685},end:{line:3,column:6711}},27:{start:{line:3,column:6738},end:{line:3,column:6765}},28:{start:{line:3,column:6797},end:{line:3,column:6825}},29:{start:{line:3,column:6881},end:{line:3,column:6897}},30:{start:{line:3,column:7144},end:{line:3,column:7177}},31:{start:{line:3,column:7204},end:{line:3,column:7231}},32:{start:{line:3,column:7263},end:{line:3,column:7291}},33:{start:{line:3,column:7349},end:{line:3,column:7367}},34:{start:{line:3,column:7524},end:{line:3,column:7547}},35:{start:{line:3,column:7851},end:{line:3,column:7881}},36:{start:{line:3,column:8168},end:{line:3,column:8199}},37:{start:{line:3,column:8423},end:{line:3,column:8461}},38:{start:{line:3,column:8754},end:{line:3,column:8794}},39:{start:{line:3,column:8953},end:{line:3,column:8974}},40:{start:{line:3,column:9366},end:{line:3,column:9399}},41:{start:{line:3,column:9579},end:{line:3,column:9613}},42:{start:{line:3,column:9889},end:{line:3,column:9933}},43:{start:{line:3,column:10153},end:{line:3,column:10175}},44:{start:{line:3,column:10297},end:{line:3,column:10316}},45:{start:{line:4,column:12},end:{line:4,column:35}},46:{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:257},end:{line:1,column:258}},loc:{start:{line:1,column:276},end:{line:1,column:419}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:334},end:{line:1,column:335}},loc:{start:{line:1,column:350},end:{line:1,column:373}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:461},end:{line:1,column:462}},loc:{start:{line:1,column:476},end:{line:1,column:495}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:744},end:{line:1,column:745}},loc:{start:{line:1,column:763},end:{line:3,column:75}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1011},end:{line:1,column:1012}},loc:{start:{line:1,column:1017},end:{line:3,column:11}},line:1},6:{name:"(anonymous_6)",decl:{start:{line:3,column:124},end:{line:3,column:125}},loc:{start:{line:3,column:139},end:{line:3,column:165}},line:3},7:{name:"(anonymous_7)",decl:{start:{line:3,column:407},end:{line:3,column:408}},loc:{start:{line:3,column:420},end:{line:3,column:964}},line:3},8:{name:"(anonymous_8)",decl:{start:{line:3,column:841},end:{line:3,column:842}},loc:{start:{line:3,column:857},end:{line:3,column:889}},line:3},9:{name:"(anonymous_9)",decl:{start:{line:3,column:906},end:{line:3,column:907}},loc:{start:{line:3,column:922},end:{line:3,column:954}},line:3},10:{name:"(anonymous_10)",decl:{start:{line:3,column:1601},end:{line:3,column:1602}},loc:{start:{line:3,column:1624},end:{line:3,column:1818}},line:3},11:{name:"(anonymous_11)",decl:{start:{line:3,column:2175},end:{line:3,column:2176}},loc:{start:{line:3,column:2190},end:{line:3,column:2214}},line:3},12:{name:"(anonymous_12)",decl:{start:{line:3,column:2485},end:{line:3,column:2486}},loc:{start:{line:3,column:2500},end:{line:3,column:2518}},line:3},13:{name:"(anonymous_13)",decl:{start:{line:3,column:2786},end:{line:3,column:2787}},loc:{start:{line:3,column:2801},end:{line:3,column:2816}},line:3},14:{name:"(anonymous_14)",decl:{start:{line:3,column:3444},end:{line:3,column:3445}},loc:{start:{line:3,column:3467},end:{line:3,column:3793}},line:3},15:{name:"(anonymous_15)",decl:{start:{line:3,column:3626},end:{line:3,column:3627}},loc:{start:{line:3,column:3642},end:{line:3,column:3700}},line:3},16:{name:"(anonymous_16)",decl:{start:{line:3,column:4755},end:{line:3,column:4756}},loc:{start:{line:3,column:4770},end:{line:3,column:4788}},line:3},17:{name:"(anonymous_17)",decl:{start:{line:3,column:4928},end:{line:3,column:4929}},loc:{start:{line:3,column:4944},end:{line:3,column:5028}},line:3},18:{name:"(anonymous_18)",decl:{start:{line:3,column:5188},end:{line:3,column:5189}},loc:{start:{line:3,column:5203},end:{line:3,column:5233}},line:3},19:{name:"(anonymous_19)",decl:{start:{line:3,column:5322},end:{line:3,column:5323}},loc:{start:{line:3,column:5336},end:{line:3,column:5542}},line:3},20:{name:"(anonymous_20)",decl:{start:{line:3,column:6275},end:{line:3,column:6276}},loc:{start:{line:3,column:6290},end:{line:3,column:6305}},line:3},21:{name:"(anonymous_21)",decl:{start:{line:3,column:6481},end:{line:3,column:6482}},loc:{start:{line:3,column:6496},end:{line:3,column:6514}},line:3},22:{name:"(anonymous_22)",decl:{start:{line:3,column:6668},end:{line:3,column:6669}},loc:{start:{line:3,column:6684},end:{line:3,column:6712}},line:3},23:{name:"(anonymous_23)",decl:{start:{line:3,column:6721},end:{line:3,column:6722}},loc:{start:{line:3,column:6737},end:{line:3,column:6766}},line:3},24:{name:"(anonymous_24)",decl:{start:{line:3,column:6780},end:{line:3,column:6781}},loc:{start:{line:3,column:6796},end:{line:3,column:6826}},line:3},25:{name:"(anonymous_25)",decl:{start:{line:3,column:6865},end:{line:3,column:6866}},loc:{start:{line:3,column:6880},end:{line:3,column:6898}},line:3},26:{name:"(anonymous_26)",decl:{start:{line:3,column:7127},end:{line:3,column:7128}},loc:{start:{line:3,column:7143},end:{line:3,column:7178}},line:3},27:{name:"(anonymous_27)",decl:{start:{line:3,column:7187},end:{line:3,column:7188}},loc:{start:{line:3,column:7203},end:{line:3,column:7232}},line:3},28:{name:"(anonymous_28)",decl:{start:{line:3,column:7246},end:{line:3,column:7247}},loc:{start:{line:3,column:7262},end:{line:3,column:7292}},line:3},29:{name:"(anonymous_29)",decl:{start:{line:3,column:7333},end:{line:3,column:7334}},loc:{start:{line:3,column:7348},end:{line:3,column:7368}},line:3},30:{name:"(anonymous_30)",decl:{start:{line:3,column:7508},end:{line:3,column:7509}},loc:{start:{line:3,column:7523},end:{line:3,column:7548}},line:3},31:{name:"(anonymous_31)",decl:{start:{line:3,column:7835},end:{line:3,column:7836}},loc:{start:{line:3,column:7850},end:{line:3,column:7882}},line:3},32:{name:"(anonymous_32)",decl:{start:{line:3,column:8152},end:{line:3,column:8153}},loc:{start:{line:3,column:8167},end:{line:3,column:8200}},line:3},33:{name:"(anonymous_33)",decl:{start:{line:3,column:8407},end:{line:3,column:8408}},loc:{start:{line:3,column:8422},end:{line:3,column:8462}},line:3},34:{name:"(anonymous_34)",decl:{start:{line:3,column:8738},end:{line:3,column:8739}},loc:{start:{line:3,column:8753},end:{line:3,column:8795}},line:3},35:{name:"(anonymous_35)",decl:{start:{line:3,column:8937},end:{line:3,column:8938}},loc:{start:{line:3,column:8952},end:{line:3,column:8975}},line:3},36:{name:"(anonymous_36)",decl:{start:{line:3,column:9350},end:{line:3,column:9351}},loc:{start:{line:3,column:9365},end:{line:3,column:9400}},line:3},37:{name:"(anonymous_37)",decl:{start:{line:3,column:9563},end:{line:3,column:9564}},loc:{start:{line:3,column:9578},end:{line:3,column:9614}},line:3},38:{name:"(anonymous_38)",decl:{start:{line:3,column:9873},end:{line:3,column:9874}},loc:{start:{line:3,column:9888},end:{line:3,column:9934}},line:3},39:{name:"(anonymous_39)",decl:{start:{line:3,column:10137},end:{line:3,column:10138}},loc:{start:{line:3,column:10152},end:{line:3,column:10176}},line:3},40:{name:"(anonymous_40)",decl:{start:{line:3,column:10281},end:{line:3,column:10282}},loc:{start:{line:3,column:10296},end:{line:3,column:10317}},line:3},41:{name:"(anonymous_41)",decl:{start:{line:3,column:10526},end:{line:3,column:10527}},loc:{start:{line:3,column:10532},end:{line:5,column:11}},line:3}},branchMap:{0:{loc:{start:{line:3,column:1027},end:{line:3,column:1262}},type:"cond-expr",locations:[{start:{line:3,column:1045},end:{line:3,column:1253}},{start:{line:3,column:1254},end:{line:3,column:1262}}],line:3},1:{loc:{start:{line:3,column:1378},end:{line:3,column:1512}},type:"cond-expr",locations:[{start:{line:3,column:1399},end:{line:3,column:1503}},{start:{line:3,column:1504},end:{line:3,column:1512}}],line:3},2:{loc:{start:{line:3,column:2851},end:{line:3,column:3070}},type:"cond-expr",locations:[{start:{line:3,column:2883},end:{line:3,column:2989}},{start:{line:3,column:2990},end:{line:3,column:3070}}],line:3},3:{loc:{start:{line:3,column:3110},end:{line:3,column:4485}},type:"cond-expr",locations:[{start:{line:3,column:3144},end:{line:3,column:3880}},{start:{line:3,column:3881},end:{line:3,column:4485}}],line:3},4:{loc:{start:{line:3,column:3248},end:{line:3,column:3289}},type:"binary-expr",locations:[{start:{line:3,column:3248},end:{line:3,column:3269}},{start:{line:3,column:3273},end:{line:3,column:3289}}],line:3},5:{loc:{start:{line:3,column:5687},end:{line:3,column:6344}},type:"cond-expr",locations:[{start:{line:3,column:5703},end:{line:3,column:6335}},{start:{line:3,column:6336},end:{line:3,column:6344}}],line:3},6:{loc:{start:{line:3,column:6560},end:{line:3,column:6932}},type:"cond-expr",locations:[{start:{line:3,column:6575},end:{line:3,column:6923}},{start:{line:3,column:6924},end:{line:3,column:6932}}],line:3},7:{loc:{start:{line:3,column:6945},end:{line:3,column:7404}},type:"cond-expr",locations:[{start:{line:3,column:6962},end:{line:3,column:7395}},{start:{line:3,column:7396},end:{line:3,column:7404}}],line:3},8:{loc:{start:{line:3,column:7417},end:{line:3,column:7589}},type:"cond-expr",locations:[{start:{line:3,column:7439},end:{line:3,column:7580}},{start:{line:3,column:7581},end:{line:3,column:7589}}],line:3},9:{loc:{start:{line:3,column:7602},end:{line:3,column:7916}},type:"cond-expr",locations:[{start:{line:3,column:7617},end:{line:3,column:7907}},{start:{line:3,column:7908},end:{line:3,column:7916}}],line:3},10:{loc:{start:{line:3,column:7929},end:{line:3,column:8235}},type:"cond-expr",locations:[{start:{line:3,column:7945},end:{line:3,column:8226}},{start:{line:3,column:8227},end:{line:3,column:8235}}],line:3},11:{loc:{start:{line:3,column:8248},end:{line:3,column:8504}},type:"cond-expr",locations:[{start:{line:3,column:8271},end:{line:3,column:8495}},{start:{line:3,column:8496},end:{line:3,column:8504}}],line:3},12:{loc:{start:{line:3,column:8517},end:{line:3,column:8839}},type:"cond-expr",locations:[{start:{line:3,column:8542},end:{line:3,column:8830}},{start:{line:3,column:8831},end:{line:3,column:8839}}],line:3},13:{loc:{start:{line:3,column:8852},end:{line:3,column:9014}},type:"cond-expr",locations:[{start:{line:3,column:8872},end:{line:3,column:9005}},{start:{line:3,column:9006},end:{line:3,column:9014}}],line:3},14:{loc:{start:{line:3,column:9027},end:{line:3,column:9437}},type:"cond-expr",locations:[{start:{line:3,column:9045},end:{line:3,column:9428}},{start:{line:3,column:9429},end:{line:3,column:9437}}],line:3},15:{loc:{start:{line:3,column:9450},end:{line:3,column:9652}},type:"cond-expr",locations:[{start:{line:3,column:9469},end:{line:3,column:9643}},{start:{line:3,column:9644},end:{line:3,column:9652}}],line:3},16:{loc:{start:{line:3,column:9665},end:{line:3,column:9982}},type:"cond-expr",locations:[{start:{line:3,column:9694},end:{line:3,column:9973}},{start:{line:3,column:9974},end:{line:3,column:9982}}],line:3},17:{loc:{start:{line:3,column:10392},end:{line:5,column:23}},type:"cond-expr",locations:[{start:{line:3,column:10410},end:{line:5,column:14}},{start:{line:5,column:15},end:{line:5,column:23}}],line:3}},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},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},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0],8:[0,0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0],14:[0,0],15:[0,0],16:[0,0],17:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"3eb93f1e9b18405012adbff13c7a2b549bb01777"},o=t[i]||(t[i]={});o[e]&&o[e].hash===n||(o[e]=s);var a=o[e];return l=function(){return a},a}t.r(n),t.d(n,{default:()=>wl}),l(),l().s[0]++;var i=function(){l().f[0]++;var e=(l().s[1]++,this),n=(l().s[2]++,e._self._c);return l().s[3]++,n("div",[n("top-bar",{attrs:{menus:e.menus,title:e.title}}),e._v(" "),n("v-snackbar",{attrs:{top:"",color:e.alertType,timeout:3e3},scopedSlots:e._u([{key:"action",fn:function({attrs:t}){return l().f[1]++,l().s[4]++,[n("v-btn",e._b({attrs:{text:""},on:{click:function(n){l().f[2]++,l().s[5]++,e.showAlert=!1}}},"v-btn",t,!1),[e._v(" Close ")])]}}]),model:{value:e.showAlert,callback:function(n){l().f[3]++,l().s[6]++,e.showAlert=n},expression:"showAlert"}},[n("v-icon",[e._v(" mdi-"+e._s(e.alertType)+" ")]),e._v("\n "+e._s(e.alertText)+"\n ")],1),e._v(" "),n("v-snackbar",{attrs:{top:"",timeout:-1,color:"orange"},scopedSlots:e._u([{key:"action",fn:function({attrs:t}){return l().f[4]++,l().s[7]++,[n("v-btn",e._b({attrs:{text:"",color:"danger","data-test":"unlock-button"},on:{click:e.confirmLocalUnlock}},"v-btn",t,!1),[e._v("\n Unlock\n ")]),e._v(" "),n("v-btn",e._b({attrs:{text:""},on:{click:()=>{l().f[5]++,l().s[8]++,e.showEditingToast=!1}}},"v-btn",t,!1),[e._v("\n dismiss\n ")])]}}]),model:{value:e.showEditingToast,callback:function(n){l().f[6]++,l().s[9]++,e.showEditingToast=n},expression:"showEditingToast"}},[n("v-icon",[e._v(" mdi-pencil-off ")]),e._v("\n "+e._s(e.lockedBy)+" is editing this script. Editor is in read-only mode\n ")],1),e._v(" "),n("div",{staticClass:"grid"},e._l(e.screens,(function(t){return l().f[7]++,l().s[10]++,n("div",{key:t.id,ref:"gridItem",refInFor:!0,staticClass:"item",attrs:{id:e.screenId(t.id)}},[n("div",{staticClass:"item-content"},[n("openc3-screen",{attrs:{target:t.target,screen:t.screen,definition:t.definition,keywords:e.screenKeywords,initialFloated:!0,initialTop:t.top,initialLeft:t.left,initialZ:3,minZ:3,fixFloated:!0,count:t.count},on:{"close-screen":function(n){return l().f[8]++,l().s[11]++,e.closeScreen(t.id)},"delete-screen":function(n){return l().f[9]++,l().s[12]++,e.closeScreen(t.id)}}})],1)])})),0),e._v(" "),n("v-card",{staticStyle:{padding:"10px"}},[e.suiteRunner?(l().b[0][0]++,n("suite-runner",{staticClass:"suite-runner",attrs:{"suite-map":e.suiteMap,"disable-buttons":e.disableSuiteButtons,filename:e.fullFilename},on:{button:e.suiteRunnerButton,loaded:e.doResize}})):(l().b[0][1]++,e._e()),e._v(" "),n("div",{attrs:{id:"sr-controls"}},[n("v-row",{attrs:{"no-gutters":"",justify:"space-between"}},[e.showDisconnect?(l().b[1][0]++,n("v-icon",{staticClass:"mr-2",attrs:{color:"red"}},[e._v("\n mdi-connection\n ")])):(l().b[1][1]++,e._e()),e._v(" "),n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:i}){return l().f[10]++,l().s[13]++,[n("v-btn",e._g(e._b({attrs:{icon:"",disabled:e.filename===e.NEW_FILENAME},on:{click:e.reloadFile}},"v-btn",i,!1),t),[n("v-icon",[e._v("mdi-cached")])],1)]}}])},[e._v(" "),n("span",[e._v(" Reload File ")])]),e._v(" "),n("v-select",{staticStyle:{width:"300px"},attrs:{items:e.fileList,disabled:e.fileList.length<=1,label:"Filename",id:"filename","data-test":"filename",dense:"",outlined:"","hide-details":""},on:{change:e.fileNameChanged},model:{value:e.filenameSelect,callback:function(n){l().f[11]++,l().s[14]++,e.filenameSelect=n},expression:"filenameSelect"}}),e._v(" "),n("v-text-field",{staticClass:"shrink ml-2 script-state",staticStyle:{width:"100px"},attrs:{label:"Script ID","data-test":"id",dense:"",outlined:"",readonly:"","hide-details":""},model:{value:e.scriptId,callback:function(n){l().f[12]++,l().s[15]++,e.scriptId=n},expression:"scriptId"}}),e._v(" "),n("v-text-field",{staticClass:"shrink ml-2 script-state",staticStyle:{width:"120px"},attrs:{label:"Script State","data-test":"state",dense:"",outlined:"",readonly:"","hide-details":""},model:{value:e.state,callback:function(n){l().f[13]++,l().s[16]++,e.state=n},expression:"state"}}),e._v(" "),"Connecting..."===e.state?(l().b[2][0]++,n("v-progress-circular",{staticClass:"ml-2 mr-2",attrs:{size:40,indeterminate:"",color:"primary"}})):(l().b[2][1]++,n("div",{staticClass:"ml-2 mr-2",staticStyle:{width:"40px",height:"40px"}})),e._v(" "),n("v-spacer"),e._v(" "),"Start"===e.startOrGoButton?(l().b[3][0]++,n("div",[n("v-btn",{staticClass:"mx-1",attrs:{color:"primary","data-test":"start-button",disabled:(l().b[4][0]++,e.startOrGoDisabled||(l().b[4][1]++,!e.executeUser))},on:{click:e.startHandler}},[n("span",[e._v(" Start ")])]),e._v(" "),n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:i}){return l().f[14]++,l().s[17]++,[n("v-btn",e._g(e._b({staticClass:"mx-1",attrs:{"data-test":"env-button",color:e.environmentIconColor,disabled:e.envDisabled},on:{click:function(n){l().f[15]++,l().s[18]++,e.scriptEnvironment.show=!e.scriptEnvironment.show}}},"v-btn",i,!1),t),[n("v-icon",[e._v(" "+e._s(e.environmentIcon)+" ")])],1)]}}],null,!1,3991735395)},[e._v(" "),n("span",[e._v("Script Environment")])])],1)):(l().b[3][1]++,n("div",[n("v-btn",{staticClass:"mr-2",attrs:{color:"primary",disabled:e.startOrGoDisabled,"data-test":"go-button"},on:{click:e.go}},[e._v("\n Go\n ")]),e._v(" "),n("v-btn",{staticClass:"mr-2",attrs:{color:"primary",disabled:e.pauseOrRetryDisabled,"data-test":"pause-retry-button"},on:{click:e.pauseOrRetry}},[e._v("\n "+e._s(e.pauseOrRetryButton)+"\n ")]),e._v(" "),n("v-btn",{attrs:{color:"primary","data-test":"stop-button",disabled:e.stopDisabled},on:{click:e.stop}},[e._v("\n Stop\n ")])],1))],1)],1)],1),e._v(" "),n("multipane",{attrs:{layout:"horizontal"},on:{paneResize:e.doResize}},[n("div",{staticClass:"editorbox"},[n("v-snackbar",{staticClass:"saving",attrs:{absolute:"",top:"",right:"",timeout:-1},model:{value:e.showSave,callback:function(n){l().f[16]++,l().s[19]++,e.showSave=n},expression:"showSave"}},[e._v("\n Saving...\n ")]),e._v(" "),n("pre",{ref:"editor",staticClass:"editor",on:{contextmenu:function(n){return l().f[17]++,l().s[20]++,n.preventDefault(),l().s[21]++,e.showExecuteSelectionMenu.apply(null,arguments)}}}),e._v(" "),n("v-menu",{attrs:{"position-x":e.menuX,"position-y":e.menuY,absolute:"","offset-y":""},model:{value:e.executeSelectionMenu,callback:function(n){l().f[18]++,l().s[22]++,e.executeSelectionMenu=n},expression:"executeSelectionMenu"}},[n("v-list",e._l(e.executeSelectionMenuItems,(function(t){return l().f[19]++,l().s[23]++,n("v-list-item",{key:t.label,attrs:{link:"",disabled:e.scriptId}},[n("v-list-item-title",{on:{click:t.command}},[e._v("\n "+e._s(t.label)+"\n ")])],1)})),1)],1)],1),e._v(" "),n("multipane-resizer",[n("hr")]),e._v(" "),n("div",{ref:"messagesDiv",staticClass:"mt-2",attrs:{id:"messages"}},[e.showDebug?(l().b[5][0]++,n("div",{staticClass:"pa-0",attrs:{id:"debug"}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-btn",{staticClass:"mr-4",staticStyle:{width:"100px"},attrs:{color:"primary",disabled:!e.scriptId,"data-test":"step-button"},on:{click:e.step}},[e._v("\n Step\n "),n("v-icon",{attrs:{right:""}},[e._v(" mdi-step-forward ")])],1),e._v(" "),n("v-text-field",{staticClass:"mb-2",attrs:{outlined:"",dense:"","hide-details":"",label:"Debug","data-test":"debug-text"},on:{keydown:e.debugKeydown},model:{value:e.debug,callback:function(n){l().f[20]++,l().s[24]++,e.debug=n},expression:"debug"}})],1)],1)):(l().b[5][1]++,e._e()),e._v(" "),n("script-log-messages",{attrs:{id:"log-messages"},on:{sort:e.messageSortOrder},model:{value:e.messages,callback:function(n){l().f[21]++,l().s[25]++,e.messages=n},expression:"messages"}})],1)],1),e._v(" "),e.fileOpen?(l().b[6][0]++,n("file-open-save-dialog",{attrs:{type:"open","api-url":"/script-api/scripts"},on:{file:function(n){return l().f[22]++,l().s[26]++,e.setFile(n)},error:function(n){return l().f[23]++,l().s[27]++,e.setError(n)},"clear-temp":function(n){return l().f[24]++,l().s[28]++,e.clearTemp(n)}},model:{value:e.fileOpen,callback:function(n){l().f[25]++,l().s[29]++,e.fileOpen=n},expression:"fileOpen"}})):(l().b[6][1]++,e._e()),e._v(" "),e.showSaveAs?(l().b[7][0]++,n("file-open-save-dialog",{attrs:{type:"save","api-url":"/script-api/scripts","require-target-parent-dir":"","input-filename":e.filenameOrBlank},on:{filename:function(n){return l().f[26]++,l().s[30]++,e.saveAsFilename(n)},error:function(n){return l().f[27]++,l().s[31]++,e.setError(n)},"clear-temp":function(n){return l().f[28]++,l().s[32]++,e.clearTemp(n)}},model:{value:e.showSaveAs,callback:function(n){l().f[29]++,l().s[33]++,e.showSaveAs=n},expression:"showSaveAs"}})):(l().b[7][1]++,e._e()),e._v(" "),e.showEnvironment?(l().b[8][0]++,n("environment-dialog",{model:{value:e.showEnvironment,callback:function(n){l().f[30]++,l().s[34]++,e.showEnvironment=n},expression:"showEnvironment"}})):(l().b[8][1]++,e._e()),e._v(" "),e.ask.show?(l().b[9][0]++,n("ask-dialog",{attrs:{question:e.ask.question,default:e.ask.default,password:e.ask.password,"answer-required":e.ask.answerRequired},on:{response:e.ask.callback},model:{value:e.ask.show,callback:function(n){l().f[31]++,l().s[35]++,e.$set(e.ask,"show",n)},expression:"ask.show"}})):(l().b[9][1]++,e._e()),e._v(" "),e.file.show?(l().b[10][0]++,n("file-dialog",{attrs:{title:e.file.title,message:e.file.message,multiple:e.file.multiple,filter:e.file.filter},on:{response:e.fileDialogCallback},model:{value:e.file.show,callback:function(n){l().f[32]++,l().s[36]++,e.$set(e.file,"show",n)},expression:"file.show"}})):(l().b[10][1]++,e._e()),e._v(" "),e.information.show?(l().b[11][0]++,n("information-dialog",{attrs:{title:e.information.title,text:e.information.text},model:{value:e.information.show,callback:function(n){l().f[33]++,l().s[37]++,e.$set(e.information,"show",n)},expression:"information.show"}})):(l().b[11][1]++,e._e()),e._v(" "),e.inputMetadata.show?(l().b[12][0]++,n("event-list-dialog",{attrs:{events:e.inputMetadata.events,"time-zone":e.timeZone,"new-metadata":""},on:{close:e.inputMetadata.callback},model:{value:e.inputMetadata.show,callback:function(n){l().f[34]++,l().s[38]++,e.$set(e.inputMetadata,"show",n)},expression:"inputMetadata.show"}})):(l().b[12][1]++,e._e()),e._v(" "),e.showOverrides?(l().b[13][0]++,n("overrides-dialog",{model:{value:e.showOverrides,callback:function(n){l().f[35]++,l().s[39]++,e.showOverrides=n},expression:"showOverrides"}})):(l().b[13][1]++,e._e()),e._v(" "),e.prompt.show?(l().b[14][0]++,n("prompt-dialog",{attrs:{title:e.prompt.title,subtitle:e.prompt.subtitle,message:e.prompt.message,details:e.prompt.details,buttons:e.prompt.buttons,layout:e.prompt.layout,multiple:e.prompt.multiple},on:{response:e.prompt.callback},model:{value:e.prompt.show,callback:function(n){l().f[36]++,l().s[40]++,e.$set(e.prompt,"show",n)},expression:"prompt.show"}})):(l().b[14][1]++,e._e()),e._v(" "),e.results.show?(l().b[15][0]++,n("results-dialog",{attrs:{text:e.results.text},model:{value:e.results.show,callback:function(n){l().f[37]++,l().s[41]++,e.$set(e.results,"show",n)},expression:"results.show"}})):(l().b[15][1]++,e._e()),e._v(" "),e.scriptEnvironment.show?(l().b[16][0]++,n("script-environment-dialog",{attrs:{"input-environment":e.scriptEnvironment.env},on:{environment:e.environmentHandler},model:{value:e.scriptEnvironment.show,callback:function(n){l().f[38]++,l().s[42]++,e.$set(e.scriptEnvironment,"show",n)},expression:"scriptEnvironment.show"}})):(l().b[16][1]++,e._e()),e._v(" "),n("simple-text-dialog",{attrs:{title:"Suite Analysis Error",text:e.suiteError,width:1e3},model:{value:e.showSuiteError,callback:function(n){l().f[39]++,l().s[43]++,e.showSuiteError=n},expression:"showSuiteError"}}),e._v(" "),n("v-bottom-sheet",{model:{value:e.showScripts,callback:function(n){l().f[40]++,l().s[44]++,e.showScripts=n},expression:"showScripts"}},[n("v-sheet",{staticClass:"pb-11 pt-5 px-5"},[e.showScripts?(l().b[17][0]++,n("running-scripts",{attrs:{"connect-in-new-tab":!!e.fileModified},on:{disconnect:e.scriptDisconnect,close:()=>{l().f[41]++,l().s[45]++,e.showScripts=!1}}})):(l().b[17][1]++,e._e())],1)],1)],1)},s=(l().s[46]++,[]),o=(t(9375),t(7534),t(9033),t(8903),t(1018),t(1415),t(4448),t(8871),t(6539),t(4293),t(3165),t(4541),t(4397),t(1412),t(1883),t(7905),t(3816)),a=t(2702),r=t(2795),c=t(1841),u=(t(2739),t(2281),t(5617),t(6717),t(9946),t(686)),d=t(3898),m=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{width:"600",scrollable:""},on:{keydown:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.success()}},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-overlay",{attrs:{value:e.loading}},[n("v-progress-circular",{attrs:{indeterminate:"",absolute:"",size:"64"}})],1),e._v(" "),n("form",{on:{submit:function(n){return n.preventDefault(),e.success.apply(null,arguments)}}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" "+e._s(e.title)+" ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card-text",[n("div",{staticClass:"pa-3"},[n("v-row",[e._v(e._s(e.helpText)+" ")]),e._v(" "),n("v-row",{staticClass:"mt-5",attrs:{dense:""}},[n("v-text-field",{attrs:{flat:"",autofocus:"","solo-inverted":"","hide-details":"",clearable:"",label:"Search","prepend-inner-icon":"mdi-magnify",outlined:"",dense:"","data-test":"file-open-save-search"},on:{input:e.handleSearch},model:{value:e.search,callback:function(n){e.search=n},expression:"search"}})],1),e._v(" "),n("v-row",{staticClass:"mt-2",attrs:{dense:""}},[n("v-treeview",{ref:"tree",staticStyle:{width:"100%","max-height":"60vh",overflow:"auto"},attrs:{dense:"",activatable:"","return-object":"",items:e.items,search:e.search,"open-on-click":"open"===e.type},on:{"update:active":e.activeFile},scopedSlots:e._u([{key:"prepend",fn:function({item:t,open:l}){return[t.file?n("v-icon",[e._v(" "+e._s(e.calcIcon(t.name))+" ")]):n("v-icon",[e._v("\n "+e._s(l?"mdi-folder-open":"mdi-folder")+"\n ")])]}},{key:"append",fn:function({item:t}){return["__TEMP__"===t.name?n("v-btn",{attrs:{icon:""},on:{click:e.deleteTemp}},[n("v-icon",[e._v(" mdi-delete ")])],1):e._e()]}}]),model:{value:e.tree,callback:function(n){e.tree=n},expression:"tree"}})],1),e._v(" "),n("v-row",{staticClass:"my-2"},[n("v-text-field",{attrs:{"hide-details":"",label:"Filename","data-test":"file-open-save-filename",disabled:"open"===e.type},model:{value:e.selectedFile,callback:function(n){e.selectedFile=n},expression:"selectedFile"}})],1),e._v(" "),n("v-row",{attrs:{dense:""}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.error,expression:"error"}],staticClass:"my-2 red--text",staticStyle:{"white-space":"pre-line"}},[e._v("\n "+e._s(e.error)+"\n ")])]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"file-open-save-cancel-btn",disabled:e.disableButtons},on:{click:function(n){e.show=!1}}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{type:"submit",color:"primary","data-test":"file-open-save-submit-btn",disabled:e.disableButtons||!!e.error},on:{click:function(n){return n.preventDefault(),e.success.apply(null,arguments)}}},[e._v("\n "+e._s(e.submit)+"\n ")])],1)],1)])],1)],1)],1)},A=[];const p=function(e){if(e&&e.includes(".")){let n=e.split(".").pop();if("py"===n)return"mdi-language-python";if("rb"===n)return"mdi-language-ruby";if("js"===n)return"mdi-language-javascript";if("csv"===n)return"mdi-file-delimited";if("txt"===n)return"mdi-file-document";if("png"===n||"gif"===n||"jpg"===n)return"mdi-file-image"}return"mdi-file"},h={props:{type:{type:String,required:!0,validator:function(e){return-1!==["open","save"].indexOf(e)}},apiUrl:String,requireTargetParentDir:Boolean,inputFilename:String,value:Boolean},data(){return{tree:[],items:[],id:1,search:null,selectedFile:null,disableButtons:!1,targets:[],loading:!0}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}},title:function(){return"open"===this.type?"File Open":"File Save As..."},submit:function(){return"open"===this.type?"OPEN":"SAVE"},helpText:function(){return"open"===this.type?"Click on folders to open them and then click a file to select it before clicking Open. Use the search box to filter the results.":"Click on the folder to save into. Then complete the filename path with the desired name. Use the search box to filter the results."},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(/\.\.|\/\/|\.\/|\/\./)){let e=`${this.selectedFile} is not a valid filename. Must `;return this.requireTargetParentDir&&(e+="be in a target directory and "),e+="only contain alphanumeric characters (including !-_.*) and a valid extension.\n\nFor example: TGT1/procedures/test.py or TGT2/lib/inst.rb",e}if("save"===this.type&&this.selectedFile.match(/\*$/)){let e=`${this.selectedFile} is not a valid filename. Must not end in '*'.`;return e}return null},validFilenameRegex:function(){const e="0-9a-zA-Z",n=`${e}\\/\\!\\-\\_\\.\\*\\'\\(\\)`;let t=`[${n}]+\\.[${e}]+`;if(this.requireTargetParentDir){const e=`(${this.targets.join("|")})`;t=`\\/?${e}\\/${t}`}return new RegExp(t)}},created(){this.loadFiles(),this.requireTargetParentDir&&r.A.get("/openc3-api/targets").then((e=>{this.targets=e.data,this.targets.push("__TEMP__")}))},methods:{calcIcon:function(e){return p(e)},loadFiles:function(){r.A.get(this.apiUrl).then((e=>{this.items=[],this.id=1;for(let n of e.data)this.filepath=n,this.insertFile(this.items,1,n),this.id++;this.inputFilename&&(this.selectedFile=this.inputFilename),this.loading=!1})).catch((e=>{this.$emit("error",`Failed to connect to OpenC3. ${e}`)}))},clear:function(){this.show=!1,this.overwrite=!1,this.disableButtons=!1},handleSearch:function(e){e?this.$refs.tree.updateAll(!0):this.$refs.tree.updateAll(!1)},activeFile:function(e){0===e.length?this.selectedFile=null:this.selectedFile=e[0].path},exists:function(e,n){let t=!1;for(let l of e){if(l.path===n)return!0;if(l.path.length>1&&"*"===l.path[l.path.length-1]&&l.path.slice(0,l.path.length-1)===n)return!0;l.children&&(t=t||this.exists(l.children,n))}return t},success:function(){null!==this.selectedFile&&null===this.error&&("open"===this.type?this.openSuccess():this.saveSuccess())},deleteTemp:function(){this.$dialog.confirm("Are you sure you want to delete all the temporary files?",{okText:"Delete",cancelText:"Cancel"}).then((e=>r.A.delete("/script-api/scripts/temp_files"))).then((e=>{this.$emit("clear-temp"),this.loadFiles()})).catch((e=>{this.$notify.serious({title:"Error",body:`Failed to remove script temporary files due to ${e}`})}))},openSuccess:function(){this.disableButtons=!0,r.A.get(`${this.apiUrl}/${this.selectedFile}`).then((e=>{const n={name:this.selectedFile,contents:e.data.contents};e.data.suites&&(n["suites"]=JSON.parse(e.data.suites)),e.data.error&&(n["error"]=e.data.error),e.data.success&&(n["success"]=e.data.success);const t=e.data.locked,l=e.data.breakpoints;this.$emit("file",{file:n,locked:t,breakpoints:l}),this.clear()})).catch((e=>{this.$emit("error",`Failed to open ${this.selectedFile}. ${e}`),this.clear()}))},saveSuccess:function(){const e=this.exists(this.items,this.selectedFile);e?this.$dialog.confirm(`Are you sure you want to overwrite: ${this.selectedFile}`,{okText:"Overwrite",cancelText:"Cancel"}).then((e=>{this.$emit("filename",this.selectedFile),this.clear()})).catch((e=>{})):(this.$emit("filename",this.selectedFile),this.clear())},insertFile:function(e,n,t){var l=t.split("/");if(1===l.length)return e.push({id:this.id,name:l[0],file:"ruby",path:this.filepath}),void this.id++;const i=e.findIndex((e=>e.name===l[0]));-1===i?(e.push({id:this.id,name:l[0],children:[],path:this.filepath.split("/").slice(0,n).join("/")}),this.id++,this.insertFile(e[e.length-1].children,n+1,l.slice(1).join("/"))):this.insertFile(e[i].children,n+1,l.slice(1).join("/"))}}},v=h;var f=t(2401),g=(0,f.A)(v,m,A,!1,null,null,null);const C=g.exports;var b=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{width:"600"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("form",{on:{submit:function(n){return n.preventDefault(),e.addEnvironment.apply(null,arguments)}}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v("Global Environment Variables")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card-text",[n("div",{staticClass:"pa-3"},[n("v-row",{staticClass:"mb-2",attrs:{dense:""}},[n("v-text-field",{attrs:{label:"search",type:"text","data-test":"search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","clear-icon":"mdi-close-circle-outline",clearable:"",autofocus:"","single-line":"","hide-details":""},model:{value:e.search,callback:function(n){e.search=n},expression:"search"}})],1),e._v(" "),n("v-data-table",{attrs:{"item-key":"name","hide-default-header":"","data-test":"env-table",search:e.search,headers:e.headers,items:e.environment,"items-per-page":5,"footer-props":{"items-per-page-options":[5]}},scopedSlots:e._u([{key:"item.actions",fn:function({item:t}){return[n("v-btn",{staticClass:"mt-1",attrs:{icon:"","data-test":"item-delete"},on:{click:function(n){return e.deleteEnvironment(t)}}},[n("v-icon",[e._v("mdi-delete")])],1)]}}])}),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-col",[n("v-text-field",{attrs:{label:"Key","data-test":"env-key"},model:{value:e.key,callback:function(n){e.key=n},expression:"key"}})],1),e._v(" "),n("v-col",[n("v-text-field",{attrs:{label:"Value","data-test":"env-value"},model:{value:e.keyValue,callback:function(n){e.keyValue=n},expression:"keyValue"}})],1)],1),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-btn",{attrs:{block:"",type:"submit",color:"primary","data-test":"add-env",disabled:!e.key||!e.keyValue},on:{click:function(n){return n.preventDefault(),e.addEnvironment.apply(null,arguments)}}},[e._v("\n Add\n ")])],1)],1)])],1)])],1)},_=[];const y={props:{value:Boolean},data(){return{alert:"",alertType:"success",showAlert:!1,search:"",key:"",keyValue:"",environment:[],headers:[{text:"Key",value:"key"},{text:"Value",value:"value"},{text:"Actions",value:"actions",align:"end",sortable:!1}]}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}}},mounted(){this.update()},methods:{alertHandler:function(e){this.alert=e.text,this.alertType=e.type,this.showAlert=!0},update:function(){r.A.get("/openc3-api/environment").then((e=>{this.environment=e.data})).catch((e=>{}))},addEnvironment:function(){r.A.post("/openc3-api/environment",{data:{key:this.key.toUpperCase(),value:this.keyValue}}).then((e=>{e.data.name;this.update()})).catch((e=>{const n={text:`Failed to add environment variable: ${e}`,type:"error"};this.alertHandler(n)})),this.key="",this.keyValue=""},deleteEnvironment:function(e){this.$dialog.confirm(`Are you sure you want to delete: ${e.key}=${e.value}`,{okText:"Delete",cancelText:"Cancel"}).then((n=>r.A.delete(`/openc3-api/environment/${e.name}`))).then((n=>{const t={text:`Removed environment variable: ${e.name}`,type:"success"};this.alertHandler(t),this.update()})).catch((e=>{const n={text:`Failed to delete environment: ${e}`,type:"error"};this.alertHandler(n)}))}}},w=y;var x=(0,f.A)(w,b,_,!1,null,null,null);const k=x.exports;var S=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{width:e.width},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" "+e._s(e.title)+" ")]),e._v(" "),n("v-spacer"),e._v(" "),n("div",{staticClass:"mx-2"},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"downloadIcon"},on:{click:e.download}},[e._v("\n mdi-download\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Download ")])])],1)],1),e._v(" "),n("v-card-text",[n("div",{staticClass:"pa-3"},[n("span",{staticStyle:{"white-space":"pre-wrap"}},[e._v(e._s(e.text))])])]),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(n){e.show=!e.show}}},[e._v(" Ok ")])],1)],1)],1)},T=[];const E={props:{value:Boolean,text:String,title:String,width:800},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{download:function(){const e=new Blob([this.text],{type:"text/plain"}),n=document.createElement("a");n.href=URL.createObjectURL(e),n.setAttribute("download",`${this.title}.txt`),n.click()}}},M=E;var I=(0,f.A)(M,S,T,!1,null,null,null);const D=I.exports;var R=function(){var e=this,n=e._self._c;return n("mounting-portal",{attrs:{"mount-to":"#openc3-menu",append:""}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{"align-self":"end"}},[n("span",{staticClass:"app-title mr-2"},[e._v(e._s(e.title))])])],1),e._v(" "),n("v-row",{staticClass:"flex-nowrap",attrs:{dense:""}},e._l(e.menus,(function(t,l){return n("v-menu",{key:l,ref:"topmenu",refInFor:!0,attrs:{"offset-y":""},scopedSlots:e._u([{key:"activator",fn:function({on:l,attrs:i}){return[n("v-btn",e._g(e._b({staticClass:"mx-1 menu-button",attrs:{outlined:"","data-test":e.formatDT(`${e.title} ${t.label}`)}},"v-btn",i,!1),l),[n("span",{domProps:{textContent:e._s(t.label)}}),e._v(" "),n("v-icon",{staticClass:"myicon",attrs:{right:""}},[e._v(" mdi-menu-down ")])],1)]}}],null,!0)},[e._v(" "),n("v-list",[n("v-radio-group",{staticClass:"ma-0 pa-0",attrs:{value:t.radioGroup,"hide-details":"",dense:""}},[e._l(t.items,(function(l,i){return[l.divider?n("v-divider",{key:i}):l.subMenu&&l.subMenu.length>0?n("div",{key:i},[n("v-menu",{key:e.k,attrs:{"open-on-hover":"","offset-x":"",bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:s}){return[n("v-list-item",e._g(e._b({key:i,attrs:{disabled:l.disabled}},"v-list-item",s,!1),t),[l.icon?n("v-list-item-icon",[n("v-icon",{attrs:{disabled:l.disabled}},[e._v(e._s(l.icon))])],1):e._e(),e._v(" "),l.radio||l.checkbox?e._e():n("v-list-item-title",{style:"cursor: pointer;"+(l.disabled?"opacity: 0.2":"")},[e._v(e._s(l.label)+"\n ")]),e._v(" "),n("v-icon",[e._v(" mdi-chevron-right ")])],1)]}}],null,!0)},[e._v(" "),n("v-list",e._l(l.subMenu,(function(t,l){return n("v-list-item",{key:l,on:{click:function(n){return e.subMenuClick(t)}}},[t.icon?n("v-list-item-icon",[n("v-icon",[e._v(e._s(t.icon))])],1):e._e(),e._v(" "),n("v-list-item-title",[e._v(e._s(t.label))])],1)})),1)],1)],1):n("v-list-item",{key:i,attrs:{disabled:l.disabled,"data-test":e.formatDT(`${e.title} ${t.label} ${l.label}`)},on:{click:function(e){return l.command(l)}}},[l.radio?n("v-list-item-action",{staticClass:"list-action"},[n("v-radio",{attrs:{color:"secondary",label:l.label,value:l.label}})],1):e._e(),e._v(" "),l.checkbox?n("v-list-item-action",{staticClass:"list-action"},[n("v-checkbox",{attrs:{color:"secondary",label:l.label},model:{value:l.checked,callback:function(n){e.$set(l,"checked",n)},expression:"option.checked"}})],1):e._e(),e._v(" "),l.icon?n("v-list-item-icon",[n("v-icon",{attrs:{disabled:l.disabled}},[e._v(e._s(l.icon))])],1):e._e(),e._v(" "),l.radio||l.checkbox?e._e():n("v-list-item-title",{style:"cursor: pointer;"+(l.disabled?"opacity: 0.2":"")},[e._v(e._s(l.label))])],1)]}))],2)],1)],1)})),1)],1)},$=[];t(8715);const O={props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(e){return e.replaceAll(" ","-").toLowerCase()},subMenuClick(e){e.command(e),this.$refs.topmenu[0].isActive=!1}},mounted(){document.title=this.title}},N=O;t(5699);var L=(0,f.A)(N,R,$,!1,null,"0af23388",null);const F=L.exports;var P=t(4364);function U(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/AskDialog.vue",n="1604238f3c57062f86c44bd7fd40b6b8fd614aad",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/AskDialog.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:1421}},4:{start:{line:1,column:169},end:{line:1,column:181}},5:{start:{line:1,column:260},end:{line:1,column:284}},6:{start:{line:1,column:284},end:{line:1,column:331}},7:{start:{line:1,column:384},end:{line:1,column:397}},8:{start:{line:1,column:869},end:{line:1,column:887}},9:{start:{line:1,column:1293},end:{line:1,column:1317}},10:{start:{line:1,column:1317},end:{line:1,column:1364}},11:{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:153},end:{line:1,column:154}},loc:{start:{line:1,column:168},end:{line:1,column:182}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:243},end:{line:1,column:244}},loc:{start:{line:1,column:259},end:{line:1,column:332}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:368},end:{line:1,column:369}},loc:{start:{line:1,column:383},end:{line:1,column:398}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:853},end:{line:1,column:854}},loc:{start:{line:1,column:868},end:{line:1,column:888}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1276},end:{line:1,column:1277}},loc:{start:{line:1,column:1292},end:{line:1,column:1365}},line:1}},branchMap:{0:{loc:{start:{line:1,column:760},end:{line:1,column:794}},type:"cond-expr",locations:[{start:{line:1,column:775},end:{line:1,column:785}},{start:{line:1,column:788},end:{line:1,column:794}}],line:1}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"1604238f3c57062f86c44bd7fd40b6b8fd614aad"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return U=function(){return o},o}U(),U().s[0]++;var H=function(){U().f[0]++;var e=(U().s[1]++,this),n=(U().s[2]++,e._self._c);return U().s[3]++,n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){U().f[1]++,U().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-form",{on:{submit:function(n){return U().f[2]++,U().s[5]++,n.preventDefault(),U().s[6]++,e.submitHandler.apply(null,arguments)}},model:{value:e.valid,callback:function(n){U().f[3]++,U().s[7]++,e.valid=n},expression:"valid"}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" User Input Required ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",[n("div",{staticClass:"question"},[e._v(e._s(e.question))]),e._v(" "),n("v-text-field",{attrs:{autofocus:"","data-test":"ask-value-input",type:e.password?(U().b[0][0]++,"password"):(U().b[0][1]++,"text"),rules:e.rules},model:{value:e.inputValue,callback:function(n){U().f[4]++,U().s[8]++,e.inputValue=n},expression:"inputValue"}})],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-1",attrs:{outlined:"","data-test":"ask-cancel"},on:{click:e.cancelHandler}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-1",attrs:{color:"primary",type:"submit","data-test":"ask-ok",disabled:!e.valid},on:{click:function(n){return U().f[5]++,U().s[9]++,n.preventDefault(),U().s[10]++,e.submitHandler.apply(null,arguments)}}},[e._v("\n Ok\n ")])],1)],1)],1)],1)},B=(U().s[11]++,[]);function V(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/AskDialog.vue",n="53f3240c42abd90371a21370deaf0ba93c289913",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/AskDialog.vue",statementMap:{0:{start:{line:23,column:4},end:{line:27,column:5}},1:{start:{line:26,column:21},end:{line:26,column:38}},2:{start:{line:30,column:4},end:{line:33,column:5}},3:{start:{line:31,column:6},end:{line:31,column:23}},4:{start:{line:32,column:6},end:{line:32,column:36}},5:{start:{line:34,column:4},end:{line:37,column:5}},6:{start:{line:35,column:6},end:{line:35,column:23}},7:{start:{line:36,column:6},end:{line:36,column:32}},8:{start:{line:36,column:27},end:{line:36,column:31}},9:{start:{line:42,column:8},end:{line:42,column:25}},10:{start:{line:45,column:8},end:{line:45,column:34}},11:{start:{line:51,column:6},end:{line:51,column:45}},12:{start:{line:54,column:6},end:{line:54,column:38}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:22,column:2},end:{line:22,column:3}},loc:{start:{line:22,column:9},end:{line:28,column:3}},line:22},1:{name:"(anonymous_1)",decl:{start:{line:26,column:14},end:{line:26,column:15}},loc:{start:{line:26,column:21},end:{line:26,column:38}},line:26},2:{name:"(anonymous_2)",decl:{start:{line:29,column:2},end:{line:29,column:3}},loc:{start:{line:29,column:12},end:{line:38,column:3}},line:29},3:{name:"(anonymous_3)",decl:{start:{line:36,column:20},end:{line:36,column:21}},loc:{start:{line:36,column:27},end:{line:36,column:31}},line:36},4:{name:"(anonymous_4)",decl:{start:{line:41,column:6},end:{line:41,column:7}},loc:{start:{line:41,column:12},end:{line:43,column:7}},line:41},5:{name:"(anonymous_5)",decl:{start:{line:44,column:6},end:{line:44,column:7}},loc:{start:{line:44,column:17},end:{line:46,column:7}},line:44},6:{name:"(anonymous_6)",decl:{start:{line:50,column:19},end:{line:50,column:20}},loc:{start:{line:50,column:31},end:{line:52,column:5}},line:50},7:{name:"(anonymous_7)",decl:{start:{line:53,column:19},end:{line:53,column:20}},loc:{start:{line:53,column:31},end:{line:55,column:5}},line:53}},branchMap:{0:{loc:{start:{line:26,column:21},end:{line:26,column:38}},type:"binary-expr",locations:[{start:{line:26,column:21},end:{line:26,column:24}},{start:{line:26,column:28},end:{line:26,column:38}}],line:26},1:{loc:{start:{line:30,column:4},end:{line:33,column:5}},type:"if",locations:[{start:{line:30,column:4},end:{line:33,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:30},2:{loc:{start:{line:34,column:4},end:{line:37,column:5}},type:"if",locations:[{start:{line:34,column:4},end:{line:37,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:34}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0,0],1:[0,0],2:[0,0]},inputSourceMap:{version:3,sources:["AskDialog.vue"],names:[],mappings:";AAsEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"AskDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog persistent v-model="show" width="600">\n <v-card>\n <v-form v-model="valid" v-on:submit.prevent="submitHandler">\n <v-system-bar>\n <v-spacer />\n <span> User Input Required </span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text>\n <div class="question">{{ question }}</div>\n <v-text-field\n v-model="inputValue"\n autofocus\n data-test="ask-value-input"\n :type="password ? \'password\' : \'text\'"\n :rules="rules"\n />\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn\n @click="cancelHandler"\n outlined\n class="mx-1"\n data-test="ask-cancel"\n >\n Cancel\n </v-btn>\n <v-btn\n @click.prevent="submitHandler"\n class="mx-1"\n color="primary"\n type="submit"\n data-test="ask-ok"\n :disabled="!valid"\n >\n Ok\n </v-btn>\n </v-card-actions>\n </v-form>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n question: {\n type: String,\n required: true,\n },\n default: {\n type: String,\n default: null,\n },\n password: {\n type: Boolean,\n default: false,\n },\n answerRequired: {\n type: Boolean,\n default: true,\n },\n value: Boolean, // value is the default prop when using v-model\n },\n data() {\n return {\n inputValue: \'\',\n valid: false,\n rules: [(v) => !!v || \'Required\'],\n }\n },\n created() {\n if (this.default) {\n this.valid = true\n this.inputValue = this.default\n }\n if (this.answerRequired === false) {\n this.valid = true\n this.rules = [(v) => true]\n }\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n submitHandler: function () {\n this.$emit(\'response\', this.inputValue)\n },\n cancelHandler: function () {\n this.$emit(\'response\', \'Cancel\')\n },\n },\n}\n<\/script>\n\n<style lang="scss" scoped>\n.question {\n font-size: 1rem;\n white-space: pre-line;\n}\n</style>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"53f3240c42abd90371a21370deaf0ba93c289913"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return V=function(){return o},o}V();const W={props:{question:{type:String,required:!0},default:{type:String,default:null},password:{type:Boolean,default:!1},answerRequired:{type:Boolean,default:!0},value:Boolean},data(){return V().f[0]++,V().s[0]++,{inputValue:"",valid:!1,rules:[e=>(V().f[1]++,V().s[1]++,V().b[0][0]++,!!e||(V().b[0][1]++,"Required"))]}},created(){V().f[2]++,V().s[2]++,this.default?(V().b[1][0]++,V().s[3]++,this.valid=!0,V().s[4]++,this.inputValue=this.default):V().b[1][1]++,V().s[5]++,!1===this.answerRequired?(V().b[2][0]++,V().s[6]++,this.valid=!0,V().s[7]++,this.rules=[e=>(V().f[3]++,V().s[8]++,!0)]):V().b[2][1]++},computed:{show:{get(){return V().f[4]++,V().s[9]++,this.value},set(e){V().f[5]++,V().s[10]++,this.$emit("input",e)}}},methods:{submitHandler:function(){V().f[6]++,V().s[11]++,this.$emit("response",this.inputValue)},cancelHandler:function(){V().f[7]++,V().s[12]++,this.$emit("response","Cancel")}}},G=W;t(1670);var z=(0,f.A)(G,H,B,!1,null,"1585368a",null);const q=z.exports;function j(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/FileDialog.vue",n="1a46492a559e19d606145205560b4b05bc5b7eb3",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/FileDialog.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:1644}},4:{start:{line:1,column:169},end:{line:1,column:181}},5:{start:{line:1,column:260},end:{line:1,column:284}},6:{start:{line:1,column:284},end:{line:1,column:331}},7:{start:{line:1,column:384},end:{line:1,column:397}},8:{start:{line:1,column:1086},end:{line:1,column:1104}},9:{start:{line:1,column:1516},end:{line:1,column:1540}},10:{start:{line:1,column:1540},end:{line:1,column:1587}},11:{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:153},end:{line:1,column:154}},loc:{start:{line:1,column:168},end:{line:1,column:182}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:243},end:{line:1,column:244}},loc:{start:{line:1,column:259},end:{line:1,column:332}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:368},end:{line:1,column:369}},loc:{start:{line:1,column:383},end:{line:1,column:398}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:1070},end:{line:1,column:1071}},loc:{start:{line:1,column:1085},end:{line:1,column:1105}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1499},end:{line:1,column:1500}},loc:{start:{line:1,column:1515},end:{line:1,column:1588}},line:1}},branchMap:{0:{loc:{start:{line:1,column:683},end:{line:1,column:835}},type:"cond-expr",locations:[{start:{line:1,column:697},end:{line:1,column:826}},{start:{line:1,column:827},end:{line:1,column:835}}],line:1}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"1a46492a559e19d606145205560b4b05bc5b7eb3"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return j=function(){return o},o}j(),j().s[0]++;var Y=function(){j().f[0]++;var e=(j().s[1]++,this),n=(j().s[2]++,e._self._c);return j().s[3]++,n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){j().f[1]++,j().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-form",{on:{submit:function(n){return j().f[2]++,j().s[5]++,n.preventDefault(),j().s[6]++,e.submitHandler.apply(null,arguments)}},model:{value:e.valid,callback:function(n){j().f[3]++,j().s[7]++,e.valid=n},expression:"valid"}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" File Dialog ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",[n("v-row",[n("span",{staticClass:"title"},[e._v(e._s(e.title))])]),e._v(" "),e.message?(j().b[0][0]++,n("v-row",[n("span",{staticClass:"ma-3",staticStyle:{"white-space":"pre-line"},domProps:{textContent:e._s(e.message)}})])):(j().b[0][1]++,e._e()),e._v(" "),n("v-row",{staticClass:"my-1"},[n("v-file-input",{attrs:{label:"Choose File",autofocus:"","data-test":"file-input",accept:e.filter,"small-chips":"",multiple:e.multiple},model:{value:e.inputValue,callback:function(n){j().f[4]++,j().s[8]++,e.inputValue=n},expression:"inputValue"}})],1)],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-1",attrs:{outlined:"","data-test":"file-cancel"},on:{click:e.cancelHandler}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-1",attrs:{color:"primary",type:"submit","data-test":"file-ok",disabled:!e.valid},on:{click:function(n){return j().f[5]++,j().s[9]++,n.preventDefault(),j().s[10]++,e.submitHandler.apply(null,arguments)}}},[e._v("\n Ok\n ")])],1)],1)],1)],1)},K=(j().s[11]++,[]);function Z(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/FileDialog.vue",n="f15cf212f1cb38a430c6f613e3b8ad3e500ffc3d",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/FileDialog.vue",statementMap:{0:{start:{line:23,column:4},end:{line:25,column:5}},1:{start:{line:30,column:8},end:{line:30,column:25}},2:{start:{line:33,column:8},end:{line:33,column:34}},3:{start:{line:41,column:6},end:{line:43,column:7}},4:{start:{line:42,column:8},end:{line:42,column:43}},5:{start:{line:44,column:6},end:{line:44,column:45}},6:{start:{line:47,column:6},end:{line:47,column:38}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:22,column:2},end:{line:22,column:3}},loc:{start:{line:22,column:9},end:{line:26,column:3}},line:22},1:{name:"(anonymous_1)",decl:{start:{line:29,column:6},end:{line:29,column:7}},loc:{start:{line:29,column:12},end:{line:31,column:7}},line:29},2:{name:"(anonymous_2)",decl:{start:{line:32,column:6},end:{line:32,column:7}},loc:{start:{line:32,column:17},end:{line:34,column:7}},line:32},3:{name:"(anonymous_3)",decl:{start:{line:38,column:19},end:{line:38,column:20}},loc:{start:{line:38,column:31},end:{line:45,column:5}},line:38},4:{name:"(anonymous_4)",decl:{start:{line:46,column:19},end:{line:46,column:20}},loc:{start:{line:46,column:31},end:{line:48,column:5}},line:46}},branchMap:{0:{loc:{start:{line:41,column:6},end:{line:43,column:7}},type:"if",locations:[{start:{line:41,column:6},end:{line:43,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:41}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},f:{0:0,1:0,2:0,3:0,4:0},b:{0:[0,0]},inputSourceMap:{version:3,sources:["FileDialog.vue"],names:[],mappings:";AAmFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"FileDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog persistent v-model="show" width="600">\n <v-card>\n <v-form v-model="valid" v-on:submit.prevent="submitHandler">\n <v-system-bar>\n <v-spacer />\n <span> File Dialog </span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text>\n <v-row>\n <span class="title">{{ title }}</span>\n </v-row>\n <v-row v-if="message">\n <span\n class="ma-3"\n style="white-space: pre-line"\n v-text="message"\n />\n </v-row>\n <v-row class="my-1">\n <v-file-input\n label="Choose File"\n v-model="inputValue"\n autofocus\n data-test="file-input"\n :accept="filter"\n small-chips\n :multiple="multiple"\n />\n </v-row>\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn\n @click="cancelHandler"\n outlined\n class="mx-1"\n data-test="file-cancel"\n >\n Cancel\n </v-btn>\n <v-btn\n @click.prevent="submitHandler"\n class="mx-1"\n color="primary"\n type="submit"\n data-test="file-ok"\n :disabled="!valid"\n >\n Ok\n </v-btn>\n </v-card-actions>\n </v-form>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n title: {\n type: String,\n required: true,\n },\n message: {\n type: String,\n default: null,\n },\n filter: {\n type: String,\n default: \'*\',\n },\n multiple: {\n type: Boolean,\n default: false,\n },\n value: Boolean, // value is the default prop when using v-model\n },\n data() {\n return {\n inputValue: null,\n }\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n submitHandler: function () {\n // Ensure we send back an array of file names even in the single case\n // to make it easier to deal with a consistent result\n if (!Array.isArray(this.inputValue)) {\n this.inputValue = [this.inputValue]\n }\n this.$emit(\'response\', this.inputValue)\n },\n cancelHandler: function () {\n this.$emit(\'response\', \'Cancel\')\n },\n },\n}\n<\/script>\n\n<style scoped>\n.title {\n font-size: 1.125rem;\n font-weight: bold;\n padding-bottom: 5px;\n}\n</style>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"f15cf212f1cb38a430c6f613e3b8ad3e500ffc3d"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Z=function(){return o},o}Z();const X={props:{title:{type:String,required:!0},message:{type:String,default:null},filter:{type:String,default:"*"},multiple:{type:Boolean,default:!1},value:Boolean},data(){return Z().f[0]++,Z().s[0]++,{inputValue:null}},computed:{show:{get(){return Z().f[1]++,Z().s[1]++,this.value},set(e){Z().f[2]++,Z().s[2]++,this.$emit("input",e)}}},methods:{submitHandler:function(){Z().f[3]++,Z().s[3]++,Array.isArray(this.inputValue)?Z().b[0][1]++:(Z().b[0][0]++,Z().s[4]++,this.inputValue=[this.inputValue]),Z().s[5]++,this.$emit("response",this.inputValue)},cancelHandler:function(){Z().f[4]++,Z().s[6]++,this.$emit("response","Cancel")}}},J=X;t(7382);var Q=(0,f.A)(J,Y,K,!1,null,"b7ae078e",null);const ee=Q.exports;function ne(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/InformationDialog.vue",n="a9cf516d76680aac892bdf43e547c48c45854a96",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/InformationDialog.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:808}},4:{start:{line:1,column:153},end:{line:1,column:165}},5:{start:{line:1,column:472},end:{line:1,column:618}},6:{start:{line:1,column:755},end:{line:1,column:775}},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:137},end:{line:1,column:138}},loc:{start:{line:1,column:152},end:{line:1,column:166}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:451},end:{line:1,column:452}},loc:{start:{line:1,column:471},end:{line:1,column:619}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:738},end:{line:1,column:739}},loc:{start:{line:1,column:754},end:{line:1,column:776}},line:1}},branchMap:{},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:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"a9cf516d76680aac892bdf43e547c48c45854a96"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return ne=function(){return o},o}ne(),ne().s[0]++;var te=function(){ne().f[0]++;var e=(ne().s[1]++,this),n=(ne().s[2]++,e._self._c);return ne().s[3]++,n("v-dialog",{attrs:{width:"600"},model:{value:e.show,callback:function(n){ne().f[1]++,ne().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",{staticStyle:{"white-space":"pre-line"},domProps:{textContent:e._s(e.title)}}),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",e._l(e.text,(function(t,l){return ne().f[2]++,ne().s[5]++,n("v-row",{key:l,attrs:{"no-gutters":""}},[n("span",{staticStyle:{"white-space":"pre-line"},domProps:{textContent:e._s(t)}})])})),1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{color:"primary"},on:{click:function(n){ne().f[3]++,ne().s[6]++,e.show=!e.show}}},[e._v(" Ok ")])],1)],1)],1)},le=(ne().s[7]++,[]);function ie(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/InformationDialog.vue",n="0e6f63f54fe8f26950d23e02c85bf37a007389e7",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/InformationDialog.vue",statementMap:{0:{start:{line:20,column:8},end:{line:20,column:25}},1:{start:{line:23,column:8},end:{line:23,column:34}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:19,column:6},end:{line:19,column:7}},loc:{start:{line:19,column:12},end:{line:21,column:7}},line:19},1:{name:"(anonymous_1)",decl:{start:{line:22,column:6},end:{line:22,column:7}},loc:{start:{line:22,column:17},end:{line:24,column:7}},line:22}},branchMap:{},s:{0:0,1:0},f:{0:0,1:0},b:{},inputSourceMap:{version:3,sources:["InformationDialog.vue"],names:[],mappings:";AA+CA;AACA;AACA;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:"InformationDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n \x3c!-- INFO --\x3e\n <v-dialog v-model="show" width="600">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span style="white-space: pre-line" v-text="title" />\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text>\n <v-row no-gutters v-for="(line, index) in text" :key="index">\n <span style="white-space: pre-line" v-text="line" />\n </v-row>\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn color="primary" @click="show = !show"> Ok </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n value: {\n type: Boolean,\n required: true,\n },\n title: {\n type: String,\n required: true,\n },\n text: {\n type: String,\n required: true,\n },\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {},\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"0e6f63f54fe8f26950d23e02c85bf37a007389e7"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return ie=function(){return o},o}ie();const se={props:{value:{type:Boolean,required:!0},title:{type:String,required:!0},text:{type:String,required:!0}},computed:{show:{get(){return ie().f[0]++,ie().s[0]++,this.value},set(e){ie().f[1]++,ie().s[1]++,this.$emit("input",e)}}},methods:{}},oe=se;var ae=(0,f.A)(oe,te,le,!1,null,null,null);const re=ae.exports;var ce=function(){var e=this,n=e._self._c;return n("div",[n("v-dialog",{attrs:{persistent:"",width:"80vw"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),e.newMetadata?n("span",[e._v("Metadata")]):n("span",[e._v("Events")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-metadata-icon"},on:{click:e.close}},[e._v("\n mdi-close-box\n ")])],1)]}}])},[e._v(" "),n("span",[e._v("Close")])])],1),e._v(" "),n("v-card-title",[e.newMetadata?n("span",[e._v("Metadata")]):n("span",[e._v("Events")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-text-field",{attrs:{label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","single-line":"","hide-details":""},model:{value:e.search,callback:function(n){e.search=n},expression:"search"}})],1),e._v(" "),n("v-data-table",{attrs:{headers:e.eventHeaders,items:e.localEvents,search:e.search,"sort-by":"start","sort-desc":""},scopedSlots:e._u([{key:"no-data",fn:function(){return[n("span",[e._v(" No events ")])]},proxy:!0},{key:"item.start",fn:function({item:n}){return[e._v("\n "+e._s(e.formatDateTime(n.start,e.timeZone))+"\n ")]}},{key:"item.end",fn:function({item:n}){return[e._v("\n "+e._s(e.formatDateTime(n.end,e.timeZone))+"\n ")]}},{key:"item.type",fn:function({item:n}){return[e._v("\n "+e._s(n.type.charAt(0).toUpperCase()+n.type.slice(1))+"\n ")]}},{key:"item.data",fn:function({item:n}){return[e._v("\n "+e._s(e.dataFormat(n))+"\n ")]}},{key:"item.actions",fn:function({item:t}){return[n("v-icon",{staticClass:"mr-2",attrs:{small:"","data-test":"edit-event"},on:{click:function(n){return e.editAction(t)}}},[e._v("\n mdi-pencil\n ")]),e._v(" "),n("v-icon",{attrs:{small:"","data-test":"delete-event"},on:{click:function(n){return e.deleteAction(t)}}},[e._v("\n mdi-delete\n ")])]}}])}),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"close-event-list"},on:{click:e.close}},[e._v("\n Close\n ")]),e._v(" "),e.newMetadata?n("v-btn",{attrs:{color:"primary","data-test":"new-event"},on:{click:function(n){e.showMetadataCreate=!0}}},[e._v("\n New Metadata\n ")]):e._e()],1)],1)],1),e._v(" "),e.showActivityUpdate?n("activity-create-dialog",{attrs:{activity:e.editActivity,"time-zone":e.timeZone},on:{update:e.updateActivity},model:{value:e.showActivityUpdate,callback:function(n){e.showActivityUpdate=n},expression:"showActivityUpdate"}}):e._e(),e._v(" "),e.showMetadataUpdate?n("metadata-create-dialog",{attrs:{metadata:e.editMetadata,"time-zone":e.timeZone},on:{update:e.updateMetadata},model:{value:e.showMetadataUpdate,callback:function(n){e.showMetadataUpdate=n},expression:"showMetadataUpdate"}}):e._e(),e._v(" "),e.showNoteUpdate?n("note-create-dialog",{attrs:{note:e.editNote,"time-zone":e.timeZone},on:{update:e.updateNote},model:{value:e.showNoteUpdate,callback:function(n){e.showNoteUpdate=n},expression:"showNoteUpdate"}}):e._e(),e._v(" "),e.showMetadataCreate?n("metadata-create-dialog",{attrs:{"time-zone":e.timeZone},on:{update:e.addMetadata},model:{value:e.showMetadataCreate,callback:function(n){e.showMetadataCreate=n},expression:"showMetadataCreate"}}):e._e()],1)},ue=[],de=t(7903);const me={methods:{deleteItem(e){let n=null,t="";switch(e.type.toLowerCase()){case"activity":t="activity",n=e.activity.start;break;case"metadata":t="metadata",n=e.metadata.start;break;case"note":t="notes",n=e.note.start;break}this.$dialog.confirm(`Are you sure you want to remove ${e.typeStr} at ${e.startStr}`,{okText:"Delete",cancelText:"Cancel"}).then((()=>r.A.delete(`/openc3-api/${t}/${n}`))).then((()=>{this.$emit("delete",e),this.$notify.normal({title:`Deleted ${e.typeStr}`,body:`Deleted ${e.typeStr} at ${e.startStr}`})})).catch((()=>{}))}}};var Ae=function(){var e=this,n=e._self._c;return n("div",[n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("form",{on:{submit:function(n){return n.preventDefault(),e.createActivity.apply(null,arguments)}}},[n("v-system-bar",[n("v-spacer"),e._v(" "),e.activity?n("span",[e._v("Update Activity")]):n("span",[e._v("Create Activity")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-activity-icon"},on:{click:function(n){e.show=!e.show}}},[e._v("\n mdi-close-box\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Close ")])])],1),e._v(" "),n("v-stepper",{attrs:{vertical:"","non-linear":""},model:{value:e.dialogStep,callback:function(n){e.dialogStep=n},expression:"dialogStep"}},[n("v-stepper-step",{attrs:{editable:"",step:"1"}},[e._v("\n Input start time, stop time\n ")]),e._v(" "),n("v-stepper-content",{attrs:{step:"1"}},[n("v-card-text",[n("div",{staticClass:"pr-2"},[n("v-select",{staticClass:"pb-2",attrs:{dense:"","hide-details":"",outlined:"",items:e.timelineNames,label:"Timeline","data-test":"activity-select-timeline"},scopedSlots:e._u([{key:"item",fn:function({item:t,attrs:l,on:i}){return[n("v-list-item",e._g(e._b({attrs:{"data-test":`activity-select-timeline-${t}`}},"v-list-item",l,!1),i),[n("v-list-item-content",[n("v-list-item-title",[e._v(e._s(t))])],1)],1)]}}]),model:{value:e.timeline,callback:function(n){e.timeline=n},expression:"timeline"}}),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"Start Date",rules:[e.rules.required],"data-test":"activity-start-date"},model:{value:e.startDate,callback:function(n){e.startDate=n},expression:"startDate"}}),e._v(" "),n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"Start Time",rules:[e.rules.required],"data-test":"activity-start-time"},model:{value:e.startTime,callback:function(n){e.startTime=n},expression:"startTime"}})],1),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"End Date",rules:[e.rules.required],"data-test":"activity-end-date"},model:{value:e.endDate,callback:function(n){e.endDate=n},expression:"endDate"}}),e._v(" "),n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"End Time",rules:[e.rules.required],"data-test":"activity-end-time"},model:{value:e.endTime,callback:function(n){e.endTime=n},expression:"endTime"}})],1),e._v(" "),n("v-row",{staticStyle:{"margin-top":"0px"}},[n("v-col",[n("v-checkbox",{staticStyle:{"padding-top":"0px","margin-top":"0px"},attrs:{disabled:!!e.activity,label:"Recurring","hide-details":"","data-test":"recurring"},model:{value:e.recurring,callback:function(n){e.recurring=n},expression:"recurring"}})],1)],1),e._v(" "),e.recurring?n("v-row",[n("v-col",[n("div",{staticClass:"repeat"},[e._v("Repeat every")])]),e._v(" "),n("v-col",[n("v-text-field",{attrs:{disabled:!!e.activity,dense:"",outlined:"","single-line":"","hide-details":"","data-test":"recurring-frequency"},model:{value:e.frequency,callback:function(n){e.frequency=n},expression:"frequency"}})],1),e._v(" "),n("v-col",[n("v-select",{staticStyle:{},attrs:{disabled:!!e.activity,items:e.timeSpans,"hide-details":"",dense:"",outlined:"","data-test":"recurring-span"},model:{value:e.timeSpan,callback:function(n){e.timeSpan=n},expression:"timeSpan"}})],1)],1):e._e(),e._v(" "),e.recurring?n("v-row",{staticStyle:{"padding-bottom":"10px"}},[n("v-col",[n("div",{staticClass:"repeat"},[e._v("Ending")])]),e._v(" "),n("v-col",[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"End Date",rules:[e.rules.required],disabled:!!e.activity,"data-test":"recurring-end-date"},model:{value:e.recurringEndDate,callback:function(n){e.recurringEndDate=n},expression:"recurringEndDate"}})],1),e._v(" "),n("v-col",[n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"End Time",rules:[e.rules.required],disabled:!!e.activity,"data-test":"recurring-end-time"},model:{value:e.recurringEndTime,callback:function(n){e.recurringEndTime=n},expression:"recurringEndTime"}})],1)],1):e._e(),e._v(" "),n("v-row",[n("span",{directives:[{name:"show",rawName:"v-show",value:e.timeError,expression:"timeError"}],staticClass:"ma-2 red--text",domProps:{textContent:e._s(e.timeError)}})]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{"data-test":"activity-step-two-btn",color:"success",disabled:!!e.timeError},on:{click:function(n){e.dialogStep=2}}},[e._v("\n Continue\n ")])],1)],1)])],1),e._v(" "),n("v-stepper-step",{attrs:{editable:"",step:"2"}},[e._v("\n Activity type Input\n ")]),e._v(" "),n("v-stepper-content",{attrs:{step:"2"}},[n("v-card-text",[n("div",{staticClass:"pr-2"},[n("v-select",{staticClass:"pb-2",attrs:{dense:"","hide-details":"",outlined:"",items:e.types,label:"Activity Type","data-test":"activity-select-type"},scopedSlots:e._u([{key:"item",fn:function({item:t,attrs:l,on:i}){return[n("v-list-item",e._g(e._b({attrs:{"data-test":`activity-select-type-${t}`}},"v-list-item",l,!1),i),[n("v-list-item-content",[n("v-list-item-title",[e._v(e._s(t))])],1)],1)]}}]),model:{value:e.kind,callback:function(n){e.kind=n},expression:"kind"}}),e._v(" "),"COMMAND"===e.kind?n("div",[n("v-text-field",{attrs:{type:"text",label:"Command Input",placeholder:"INST COLLECT with TYPE 0, DURATION 1, OPCODE 171, TEMP 0",prefix:"cmd('",suffix:"')",hint:"Timeline runs commands with cmd_no_hazardous_check","data-test":"activity-cmd"},model:{value:e.activityData,callback:function(n){e.activityData=n},expression:"activityData"}})],1):"SCRIPT"===e.kind?n("div",{staticClass:"ma-3"},[n("script-chooser",{on:{file:e.fileHandler}}),e._v(" "),n("environment-chooser",{model:{value:e.activityEnvironment,callback:function(n){e.activityEnvironment=n},expression:"activityEnvironment"}})],1):n("div",[n("span",{staticClass:"ma-2"},[e._v(" No required input ")])]),e._v(" "),n("v-row",{directives:[{name:"show",rawName:"v-show",value:e.typeError,expression:"typeError"}],staticClass:"mt-2"},[n("span",{staticClass:"ma-2 red--text",domProps:{textContent:e._s(e.typeError)}})]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"activity-cancel-btn"},on:{click:function(n){e.show=!e.show}}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary",type:"submit","data-test":"activity-submit-btn",disabled:!!e.timeError||!!e.typeError},on:{click:function(n){return n.preventDefault(),e.createActivity.apply(null,arguments)}}},[e._v("\n Ok\n ")])],1)],1)])],1)],1)],1)])],1)],1)},pe=[],he=function(){var e=this,n=e._self._c;return n("div",[n("v-simple-table",{attrs:{dense:""}},[n("span",[e._v(" Add environment variables (optional)")]),e._v(" "),n("tbody",[n("tr",[n("th",{staticClass:"text-left",attrs:{scope:"col"}},[e._v("Key")]),e._v(" "),n("th",{staticClass:"text-left",attrs:{scope:"col"}},[e._v("Value")]),e._v(" "),n("th",{staticClass:"text-right",attrs:{scope:"col"}},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"new-metadata-icon"},on:{click:e.addEnvVar}},[e._v("\n mdi-plus\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Add Environment ")])])],1)]),e._v(" "),e._l(e.selected,(function(t,l){return[n("tr",{key:`tr-${l}`},[n("td",[n("v-text-field",{attrs:{dense:"",type:"text",readonly:t.readonly,"data-test":`key-${l}`},model:{value:t.key,callback:function(n){e.$set(t,"key",n)},expression:"env.key"}})],1),e._v(" "),n("td",[n("v-text-field",{attrs:{dense:"",type:"text",readonly:t.readonly,"data-test":`value-${l}`},model:{value:t.value,callback:function(n){e.$set(t,"value",n)},expression:"env.value"}})],1),e._v(" "),n("td",[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:i}){return[n("div",e._g(e._b({},"div",i,!1),t),[n("v-icon",{attrs:{"data-test":`remove-env-icon-${l}`},on:{click:function(n){return e.delEnvVar(l)}}},[e._v("\n mdi-delete\n ")])],1)]}}],null,!0)},[e._v(" "),n("span",[e._v(" Delete Environment ")])])],1)])]}))],2)])],1)},ve=[];const fe={props:{value:{type:Array,required:!0}},computed:{selected:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{addEnvVar:function(){this.selected.push({key:"",value:""})},delEnvVar:function(e){this.selected.splice(e,1)}}},ge=fe;var Ce=(0,f.A)(ge,he,ve,!1,null,null,null);const be=Ce.exports;var _e=function(){var e=this,n=e._self._c;return n("div",[n("v-row",[n("v-autocomplete",{staticClass:"mb-5",attrs:{"cache-items":"",dense:"",outlined:"","hide-no-data":"","hide-details":"",label:"Select script",loading:e.loading,items:e.items,"search-input":e.search,"data-test":"select-script"},on:{"update:searchInput":function(n){e.search=n},"update:search-input":function(n){e.search=n}},model:{value:e.selected,callback:function(n){e.selected=n},expression:"selected"}})],1)],1)},ye=[];const we={props:{value:String},data(){return{loading:!1,search:"",selected:this.value,scripts:[],items:[]}},created(){this.loading=!0,r.A.get("/script-api/scripts").then((e=>{this.scripts=e.data.filter((e=>e.includes(".rb")||e.includes(".py"))),this.items=this.scripts})).catch((e=>{this.$emit("error",{type:"error",text:`Failed to connect to OpenC3. ${e}`,error:e})})),this.selected=this.value?this.value:null,this.loading=!1},watch:{selected(e,n){e!==n&&this.$emit("file",e)},search(e){e&&e!==this.selected&&this.querySelections(e)}},methods:{querySelections:function(e){this.loading=!0,setTimeout((()=>{this.items=this.scripts.filter((n=>(n||"").toLowerCase().indexOf((e||"").toLowerCase())>-1)),this.loading=!1}),500)}}},xe=we;var ke=(0,f.A)(xe,_e,ye,!1,null,null,null);const Se=ke.exports;var Te=t(2266),Ee=t(5168);const Me={props:{date:{type:String},time:{type:String},timeZone:{type:String}},data(){return{startDate:"",startTime:"",endDate:"",endTime:""}},methods:{calcStartDateTime:function(){this.date?(this.startDate=this.date,this.endDate=this.date):(this.startDate=(0,u.GP)(new Date,"yyyy-MM-dd"),this.endDate=(0,u.GP)(new Date,"yyyy-MM-dd"));let e=18e5,n=null;this.time?(n=(0,Te.qg)(this.time,"HH:mm:ss",new Date),n=new Date(Math.floor(n.getTime()/e)*e)):n=new Date(Math.ceil((new Date).getTime()/e)*e),this.startTime=(0,u.GP)(n,"HH:mm:ss"),this.endTime=(0,u.GP)((0,Ee.W)(n,{minutes:30}),"HH:mm:ss")}}},Ie={components:{EnvironmentChooser:be,ScriptChooser:Se},props:{value:Boolean,timelines:{type:Array,required:!0},activity:{type:Object,default:null}},mixins:[Me,de.A],data(){return{timeline:null,dialogStep:1,kind:"",types:["COMMAND","SCRIPT","RESERVE"],activityData:"",activityEnvironment:[],rules:{required:e=>!!e||"Required"},recurring:!1,recurringEndDate:null,recurringEndTime:null,frequency:90,timeSpan:"minutes",timeSpans:["minutes","hours","days"]}},mounted:function(){this.updateValues()},computed:{timeError:function(){const e=new Date,n=Date.parse(`${this.startDate}T${this.startTime}`),t=Date.parse(`${this.endDate}T${this.endTime}`);return n===t?"Invalid start, end time. Activity must have different start and end times.":e>n?"Invalid start time. Activity must be in the future.":n>t?"Invalid start time. Activity start before end.":null},typeError:function(){return this.timeline?"RESERVE"===this.kind||this.activityData?null:"No data is selected or inputted":"Activity must have a timeline selected."},timelineNames:function(){return this.timelines.map((e=>e.name))},show:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{changeKind:function(e){e!==this.kind&&(this.kind=e,this.activityData="")},fileHandler:function(e){this.activityData=e},updateValues:function(){if(this.dialogStep=1,this.activity){this.timeline=this.activity.name;const e=new Date(1e3*this.activity.start),n=new Date(1e3*this.activity.stop);if(this.startDate=this.formatDate(e,this.timeZone),this.startTime=this.formatTime(e,this.timeZone),this.endDate=this.formatDate(n,this.timeZone),this.endTime=this.formatTime(n,this.timeZone),this.kind=this.activity.kind.toUpperCase(),this.activityData=this.activity.data[this.activity.kind],this.activityEnvironment=this.activity.data.environment,this.activity.recurring?.uuid){this.recurring=!0;const e=new Date(1e3*this.activity.recurring.end);this.recurringEndDate=this.formatDate(e,this.timeZone),this.recurringEndTime=this.formatTime(e,this.timeZone),this.frequency=this.activity.recurring.frequency,this.timeSpan=this.activity.recurring.span}}else this.calcStartDateTime(),this.recurringEndDate=this.startDate,this.recurringEndTime=this.startTime,this.kind="",this.activityData="",this.activityEnvironment=[],this.timeline=this.timelineNames[0]},createActivity:function(){let e=null,n=null,t=null;"local"===this.timeZone?(e=new Date(this.startDate+" "+this.startTime).toISOString(),n=new Date(this.endDate+" "+this.endTime).toISOString(),this.recurring&&(t=new Date(this.recurringEndDate+" "+this.recurringEndTime).toISOString())):(e=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),n=new Date(this.endDate+" "+this.endTime+"Z").toISOString(),this.recurring&&(t=new Date(this.recurringEndDate+" "+this.recurringEndTime+"Z").toISOString()));const l=this.kind.toLowerCase();let i={environment:this.activityEnvironment};i[l]=this.activityData;let s={};this.recurring&&(s={frequency:this.frequency,span:this.timeSpan,end:t}),this.activity?r.A.put(`/openc3-api/timeline/${this.activity.name}/activity/${this.activity.start}`,{data:{start:e,stop:n,kind:l,data:i,recurring:s}}).then((e=>{const n=this.formatSeconds(new Date(1e3*e.data.start));this.$notify.normal({title:"Updated Activity",body:`${n} (${e.data.start}) on timeline: ${e.data.name}`}),this.$emit("update",e.data),this.show=!this.show})).catch((e=>{this.show=!this.show})):r.A.post(`/openc3-api/timeline/${this.timeline}/activities`,{data:{start:e,stop:n,kind:l,data:i,recurring:s}}).then((e=>{const n=this.formatSeconds(new Date(1e3*e.data.start));this.$notify.normal({title:"Created Activity",body:`${n} (${e.data.start}) on timeline: ${e.data.name}`}),this.$emit("update",e.data),this.show=!this.show})).catch((e=>{this.show=!this.show}))}}},De=Ie;t(6528);var Re=(0,f.A)(De,Ae,pe,!1,null,"c74ea3cc",null);const $e=Re.exports;var Oe=function(){var e=this,n=e._self._c;return n("div",[n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("form",{on:{submit:function(n){return n.preventDefault(),e.createMetadata.apply(null,arguments)}}},[n("v-system-bar",[n("v-spacer"),e._v(" "),e.metadata?n("span",[e._v("Update Metadata")]):n("span",[e._v("Create Metadata")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-metadata-icon"},on:{click:function(n){e.show=!e.show}}},[e._v("\n mdi-close-box\n ")])],1)]}}])},[e._v(" "),n("span",[e._v("Close")])])],1),e._v(" "),n("v-stepper",{attrs:{vertical:"","non-linear":""},model:{value:e.dialogStep,callback:function(n){e.dialogStep=n},expression:"dialogStep"}},[n("v-stepper-step",{attrs:{editable:"",step:"1"}},[e._v("\n Input start time\n ")]),e._v(" "),n("v-stepper-content",{attrs:{step:"1"}},[n("v-card-text",[n("div",{staticClass:"pa-2"},[n("color-select-form",{model:{value:e.color,callback:function(n){e.color=n},expression:"color"}}),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"Start Date",rules:[e.rules.required],"data-test":"metadata-start-date"},model:{value:e.startDate,callback:function(n){e.startDate=n},expression:"startDate"}}),e._v(" "),n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"Start Time",rules:[e.rules.required],"data-test":"metadata-start-time"},model:{value:e.startTime,callback:function(n){e.startTime=n},expression:"startTime"}})],1),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{"data-test":"metadata-step-two-btn",color:"success"},on:{click:function(n){e.dialogStep=2}}},[e._v("\n Continue\n ")])],1)],1)])],1),e._v(" "),n("v-stepper-step",{attrs:{editable:"",step:"2"}},[e._v("Metadata Input")]),e._v(" "),n("v-stepper-content",{attrs:{step:"2"}},[n("v-card-text",[n("div",{staticClass:"pa-2"},[n("div",{staticStyle:{"min-height":"200px"}},[n("metadata-input-form",{model:{value:e.metadataVals,callback:function(n){e.metadataVals=n},expression:"metadataVals"}})],1),e._v(" "),n("v-row",{directives:[{name:"show",rawName:"v-show",value:e.typeError,expression:"typeError"}]},[n("span",{staticClass:"ma-2 red--text",domProps:{textContent:e._s(e.typeError)}})]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"metadata-cancel-btn"},on:{click:function(n){e.show=!e.show}}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary",type:"submit","data-test":"metadata-submit-btn",disabled:!!e.typeError},on:{click:function(n){return n.preventDefault(),e.createMetadata.apply(null,arguments)}}},[e._v("\n Ok\n ")])],1)],1)])],1)],1)],1)])],1)],1)},Ne=[],Le=(t(8605),function(){var e=this,n=e._self._c;return n("div",[n("v-select",{attrs:{items:e.swatches,label:"Color"},scopedSlots:e._u([{key:"selection",fn:function({item:t}){return[n("div",[n("v-badge",{attrs:{inline:"",color:t}},[n("span",{domProps:{textContent:e._s(t)}})])],1)]}},{key:"item",fn:function({item:t}){return[n("div",[n("v-badge",{attrs:{inline:"",color:t}},[n("span",{domProps:{textContent:e._s(t)}})])],1)]}}]),model:{value:e.color,callback:function(n){e.color=n},expression:"color"}})],1)}),Fe=[];const Pe={components:{},props:{value:{type:String,required:!0}},data(){return{}},computed:{color:{get(){return this.value},set(e){this.$emit("input",e)}},swatches:function(){return["#005a8f","#003784","#8F3400","#df1368","#ff5252","#df323b","#9f0010","#2d9437","#004700","#db7200","#802700","#0f2941"]}},methods:{}},Ue=Pe;var He=(0,f.A)(Ue,Le,Fe,!1,null,null,null);const Be=He.exports;var Ve=function(){var e=this,n=e._self._c;return n("div",[n("v-simple-table",{attrs:{dense:""}},[n("tbody",[n("tr",[n("th",{staticClass:"text-left",attrs:{scope:"col"}},[e._v("Key")]),e._v(" "),n("th",{staticClass:"text-left",attrs:{scope:"col"}},[e._v("Value")]),e._v(" "),n("th",{staticClass:"text-right",attrs:{scope:"col"}},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"new-metadata-icon"},on:{click:e.newMetadata}},[e._v("\n mdi-plus\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" New Metadata ")])])],1)]),e._v(" "),e._l(e.metadata,(function(t,l){return[n("tr",{key:`tr-${l}`},[n("td",[n("v-text-field",{attrs:{type:"text",dense:"","data-test":`key-${l}`},model:{value:t.key,callback:function(n){e.$set(t,"key",n)},expression:"meta.key"}})],1),e._v(" "),n("td",[n("v-text-field",{attrs:{type:"text",dense:"","data-test":`value-${l}`},model:{value:t.value,callback:function(n){e.$set(t,"value",n)},expression:"meta.value"}})],1),e._v(" "),n("td",[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:i}){return[n("div",e._g(e._b({},"div",i,!1),t),[n("v-icon",{attrs:{"data-test":`delete-metadata-icon-${l}`},on:{click:function(n){return e.rm(l)}}},[e._v("\n mdi-delete\n ")])],1)]}}],null,!0)},[e._v(" "),n("span",[e._v(" Delete Metadata ")])])],1)])]}))],2)])],1)},We=[];const Ge={components:{},props:{value:{type:Array,required:!0}},data(){return{}},computed:{metadata:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{newMetadata:function(){this.metadata.push({key:"",value:""})},rm:function(e){this.metadata.splice(e,1)}}},ze=Ge;var qe=(0,f.A)(ze,Ve,We,!1,null,null,null);const je=qe.exports,Ye={components:{ColorSelectForm:Be,MetadataInputForm:je},props:{value:Boolean,metadata:{type:Object,default:null}},mixins:[Me,de.A],data(){return{dialogStep:1,color:"#003784",metadataVals:[],rules:{required:e=>!!e||"Required"}}},mounted:function(){this.updateValues()},computed:{typeError:function(){if(!this.color)return"A color is required.";if(this.metadataVals.length<1)return"Please enter a value in the metadata table.";const e=this.metadataVals.find((e=>""===e.key||""===e.value));return e?"Missing or empty key, value in the metadata table.":null},show:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{updateValues:function(){if(this.dialogStep=1,this.metadata){const e=new Date(1e3*this.metadata.start);this.startDate=this.formatDate(e,this.timeZone),this.startTime=this.formatTime(e,this.timeZone),this.color=this.metadata.color,this.metadataVals=Object.keys(this.metadata.metadata).map((e=>({key:e,value:this.metadata.metadata[e]})))}else this.calcStartDateTime(),this.color="#003784",this.metadataVals=[]},createMetadata:function(){const e=this.color,n=this.metadataVals.reduce(((e,n)=>(e[n.key]=n.value,e)),{}),t={color:e,metadata:n};"local"===this.timeZone?t.start=new Date(this.startDate+" "+this.startTime).toISOString():t.start=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),this.metadata?r.A.put(`/openc3-api/metadata/${this.metadata.start}`,{data:t}).then((e=>{this.$notify.normal({title:"Updated Metadata",body:`Metadata updated: (${e.data.start})`}),this.$emit("update",e.data),this.show=!this.show})):r.A.post("/openc3-api/metadata",{data:t}).then((e=>{this.$notify.normal({title:"Created new Metadata",body:`Metadata: (${e.data.start})`}),this.$emit("update",e.data),this.show=!this.show}))}}},Ke=Ye;t(5813);var Ze=(0,f.A)(Ke,Oe,Ne,!1,null,"da0170c4",null);const Xe=Ze.exports;var Je=function(){var e=this,n=e._self._c;return n("div",[n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("form",{on:{submit:function(n){return n.preventDefault(),e.createNote.apply(null,arguments)}}},[n("v-system-bar",[n("v-spacer"),e._v(" "),e.note?n("span",[e._v("Update Note")]):n("span",[e._v("Create Note")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-note-icon"},on:{click:function(n){e.show=!e.show}}},[e._v("\n mdi-close-box\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Close ")])])],1),e._v(" "),n("v-stepper",{attrs:{vertical:"","non-linear":""},model:{value:e.dialogStep,callback:function(n){e.dialogStep=n},expression:"dialogStep"}},[n("v-stepper-step",{attrs:{editable:"",step:"1"}},[e._v("\n Input start time, end time\n ")]),e._v(" "),n("v-stepper-content",{attrs:{step:"1"}},[n("v-card-text",[n("div",{staticClass:"pa-2"},[n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"Start Date",rules:[e.rules.required],"data-test":"note-start-date"},model:{value:e.startDate,callback:function(n){e.startDate=n},expression:"startDate"}}),e._v(" "),n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"Start Time",rules:[e.rules.required],"data-test":"note-start-time"},model:{value:e.startTime,callback:function(n){e.startTime=n},expression:"startTime"}})],1),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"mx-1",attrs:{type:"date",label:"End Date",rules:[e.rules.required],"data-test":"note-end-date"},model:{value:e.endDate,callback:function(n){e.endDate=n},expression:"endDate"}}),e._v(" "),n("v-text-field",{staticClass:"mx-1",attrs:{type:"time",step:"1",label:"End Time",rules:[e.rules.required],"data-test":"note-end-time"},model:{value:e.endTime,callback:function(n){e.endTime=n},expression:"endTime"}})],1),e._v(" "),n("v-row",[n("span",{directives:[{name:"show",rawName:"v-show",value:e.timeError,expression:"timeError"}],staticClass:"ma-2 red--text",domProps:{textContent:e._s(e.timeError)}})]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{"data-test":"note-step-two-btn",color:"success",disabled:!!e.timeError},on:{click:function(n){e.dialogStep=2}}},[e._v("\n Continue\n ")])],1)],1)])],1),e._v(" "),n("v-stepper-step",{attrs:{editable:"",step:"2"}},[e._v("\n Input Description\n ")]),e._v(" "),n("v-stepper-content",{attrs:{step:"2"}},[n("v-card-text",[n("div",{staticClass:"pa-2"},[n("div",[n("color-select-form",{model:{value:e.color,callback:function(n){e.color=n},expression:"color"}})],1),e._v(" "),n("div",[n("v-text-field",{attrs:{type:"text",label:"Note Description","data-test":"note-description"},model:{value:e.description,callback:function(n){e.description=n},expression:"description"}})],1),e._v(" "),n("v-row",{directives:[{name:"show",rawName:"v-show",value:e.typeError,expression:"typeError"}]},[n("span",{staticClass:"ma-2 red--text",domProps:{textContent:e._s(e.typeError)}})]),e._v(" "),n("v-row",{staticClass:"mt-2"},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"note-cancel-btn"},on:{click:function(n){e.show=!e.show}}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary",type:"submit","data-test":"note-submit-btn",disabled:!!e.timeError||!!e.typeError},on:{click:function(n){return n.preventDefault(),e.createNote.apply(null,arguments)}}},[e._v("\n Ok\n ")])],1)],1)])],1)],1)],1)])],1)],1)},Qe=[];const en={components:{ColorSelectForm:Be},props:{value:Boolean,note:{type:Object}},mixins:[Me,de.A],data(){return{dialogStep:1,description:"",color:"#8F3400",rules:{required:e=>!!e||"Required"}}},mounted:function(){this.updateValues()},computed:{timeError:function(){let e,n;return"local"===this.timeZone?(e=new Date(this.startDate+" "+this.startTime),n=new Date(this.endDate+" "+this.endTime)):(e=new Date(this.startDate+" "+this.startTime+"Z"),n=new Date(this.endDate+" "+this.endTime+"Z")),e===n?"Invalid start, end time. Notes must have different start and end times.":e>n?"Invalid start time. Notes start before end.":null},typeError:function(){return this.color?this.description?null:"A description is required for a valid note.":"A color is required."},show:{get(){return this.value},set(e){this.$emit("input",e)}}},methods:{updateValues:function(){if(this.dialogStep=1,this.note){const e=new Date(1e3*this.note.start);this.startDate=this.formatDate(e,this.timeZone),this.startTime=this.formatTime(e,this.timeZone);const n=new Date(1e3*this.note.stop);this.endDate=this.formatDate(n,this.timeZone),this.endTime=this.formatTime(n,this.timeZone),this.color=this.note.color,this.description=this.note.description}else this.calcStartDateTime(),this.color="#8F3400",this.description=""},createNote:function(){let e,n;"local"===this.timeZone?(e=new Date(this.startDate+" "+this.startTime).toISOString(),n=new Date(this.endDate+" "+this.endTime).toISOString()):(e=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),n=new Date(this.endDate+" "+this.endTime+"Z").toISOString());const t=this.color,l=this.description;this.note?r.A.put(`/openc3-api/notes/${this.note.start}`,{data:{start:e,stop:n,color:t,description:l}}).then((e=>{const n=e.data.description.length>16?`${e.data.description.substring(0,16)}...`:e.data.description;this.$notify.normal({title:"Updated Note",body:`Note updated: (${e.data.start}): "${n}"`}),this.$emit("update",e.data),this.show=!this.show})):r.A.post("/openc3-api/notes",{data:{start:e,stop:n,color:t,description:l}}).then((e=>{const n=e.data.description.length>16?`${e.data.description.substring(0,16)}...`:e.data.description;this.$notify.normal({title:"Created new Note",body:`Note: (${e.data.start}) created: "${n}"`}),this.$emit("update",e.data),this.show=!this.show}))}}},nn=en;t(8361);var tn=(0,f.A)(nn,Je,Qe,!1,null,"9d9c27a0",null);const ln=tn.exports,sn={components:{ActivityCreateDialog:$e,MetadataCreateDialog:Xe,NoteCreateDialog:ln},mixins:[de.A,me],props:{events:{type:Array,required:!0},value:{type:Boolean,required:!0},timeZone:{type:String,required:!0},types:{type:Array},newMetadata:{type:Boolean,default:!1}},data(){return{search:"",localEvents:[...this.events],eventHeaders:[{text:"Start",value:"start",width:215},{text:"Stop",value:"end",width:215},{text:"Type",value:"type"},{text:"Data",value:"data"},{text:"Actions",value:"actions",sortable:!1}],editActivity:{start:new Date,end:new Date},editMetadata:{start:new Date,end:new Date},editNote:{start:new Date,end:new Date},editIndex:0,showActivityUpdate:!1,showMetadataUpdate:!1,showNoteUpdate:!1,showMetadataCreate:!1}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}}},created:function(){this.$on("delete",(e=>{let n=this.localEvents.findIndex((n=>n.type===e.type&&n.start===e.start));this.localEvents.splice(n,1)}))},methods:{close(){this.$emit("close"),this.show=!1},dataFormat(e){let n=e.name;switch(e.type){case"note":n=e.note.description;break;case"metadata":let t=[];Object.entries(e.metadata.metadata).forEach((([e,n])=>t.push(`${e}: ${n}`))),n=t.join(", ");break}return n},editAction(e){switch(this.editIndex=this.localEvents.findIndex((n=>n.type===e.type&&n.start===e.start)),e.type){case"activity":this.editActivity=e.activity,this.showActivityUpdate=!0;break;case"metadata":this.editMetadata=e.metadata,this.showMetadataUpdate=!0;break;case"note":this.editNote=e.note,this.showNoteUpdate=!0;break}},deleteAction(e){let n=this.localEvents.findIndex((n=>n.type===e.type&&n.start===e.start)),t=null,l=null,i=null;switch(e.type){case"activity":t=`timeline/${e.activity.name}/activity`,l=e.activity.start,i=e.activity.uuid;break;case"metadata":t="metadata",l=e.metadata.start;break;case"note":t="notes",l=e.note.start;break}this.$dialog.confirm(`Are you sure you want to remove ${e.type} at ${e.start}`,{okText:"Delete",cancelText:"Cancel"}).then((e=>{this.localEvents.splice(n,1);let s=`/openc3-api/${t}/${l}`;return i&&(s+=`/${i}`),r.A.delete(s)})).then((n=>{this.$emit("update"),this.$notify.normal({title:`Deleted ${e.type}`,body:`Deleted ${e.type} at ${l}`})})).catch((e=>{}))},updateActivity(e){this.$emit("update"),this.localEvents[this.editIndex].activity=e},updateMetadata(e){this.$emit("update"),this.localEvents[this.editIndex].metadata=e},updateNote(e){this.$emit("update"),this.localEvents[this.editIndex].note=e},addMetadata(e){let n={name:"Metadata",start:new Date(1e3*e.start),end:new Date(1e3*e.start),color:e.color,type:e.type,timed:!0,metadata:e};this.localEvents.push(n)}}},on=sn;var an=(0,f.A)(on,ce,ue,!1,null,null,null);const rn=an.exports;function cn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/OverridesDialog.vue",n="037ef992500788b26e7aee52536081b64692de06",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/OverridesDialog.vue",statementMap:{0:{start:{line:1,column:13},end:{line:9,column:1}},1:{start:{line:1,column:39},end:{line:1,column:43}},2:{start:{line:1,column:47},end:{line:1,column:59}},3:{start:{line:1,column:60},end:{line:8,column:733}},4:{start:{line:1,column:153},end:{line:1,column:165}},5:{start:{line:1,column:846},end:{line:1,column:860}},6:{start:{line:8,column:123},end:{line:8,column:488}},7:{start:{line:8,column:231},end:{line:8,column:418}},8:{start:{line:8,column:295},end:{line:8,column:326}},9:{start:{line:8,column:664},end:{line:8,column:684}},10:{start:{line:10,column:22},end:{line:10,column:24}}},fnMap:{0:{name:"render",decl:{start:{line:1,column:22},end:{line:1,column:28}},loc:{start:{line:1,column:30},end:{line:9,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:137},end:{line:1,column:138}},loc:{start:{line:1,column:152},end:{line:1,column:166}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:830},end:{line:1,column:831}},loc:{start:{line:1,column:845},end:{line:1,column:861}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:8,column:104},end:{line:8,column:105}},loc:{start:{line:8,column:122},end:{line:8,column:489}},line:8},4:{name:"(anonymous_4)",decl:{start:{line:8,column:207},end:{line:8,column:208}},loc:{start:{line:8,column:230},end:{line:8,column:419}},line:8},5:{name:"(anonymous_5)",decl:{start:{line:8,column:278},end:{line:8,column:279}},loc:{start:{line:8,column:294},end:{line:8,column:327}},line:8},6:{name:"(anonymous_6)",decl:{start:{line:8,column:647},end:{line:8,column:648}},loc:{start:{line:8,column:663},end:{line:8,column:685}},line:8}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"037ef992500788b26e7aee52536081b64692de06"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return cn=function(){return o},o}cn(),cn().s[0]++;var un=function(){cn().f[0]++;var e=(cn().s[1]++,this),n=(cn().s[2]++,e._self._c);return cn().s[3]++,n("v-dialog",{attrs:{width:"700"},model:{value:e.show,callback:function(n){cn().f[1]++,cn().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v("Overrides")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",[n("v-btn",{attrs:{color:"primary","data-test":"overrides-dialog-clear-all"},on:{click:e.clearOverrides}},[e._v("\n Clear All Overrides\n ")]),e._v(" "),n("v-card-title",[e._v("\n Overrides\n "),n("v-spacer"),e._v(" "),n("v-text-field",{attrs:{label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","single-line":"","hide-details":""},model:{value:e.search,callback:function(n){cn().f[2]++,cn().s[5]++,e.search=n},expression:"search"}})],1),e._v(" "),n("v-data-table",{attrs:{headers:e.headers,items:e.overrides,search:e.search,"footer-props":{itemsPerPageOptions:[100],showFirstLastPage:!0,firstIcon:"mdi-page-first",lastIcon:"mdi-page-last",prevIcon:"mdi-chevron-left",nextIcon:"mdi-chevron-right"},"calculate-widths":"","multi-sort":"",dense:""},scopedSlots:e._u([{key:"item.delete",fn:function({item:t}){return cn().f[3]++,cn().s[6]++,[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:l,attrs:i}){return cn().f[4]++,cn().s[7]++,[n("v-icon",e._g(e._b({on:{click:function(n){return cn().f[5]++,cn().s[8]++,e.deleteOverride(t)}}},"v-icon",i,!1),l),[e._v("\n mdi-delete\n ")])]}}],null,!0)},[e._v(" "),n("span",[e._v("Delete Override")])])]}}])})],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{color:"primary","data-test":"overrides-dialog-ok"},on:{click:function(n){cn().f[6]++,cn().s[9]++,e.show=!e.show}}},[e._v("\n Ok\n ")])],1)],1)],1)},dn=(cn().s[10]++,[]);function mn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/OverridesDialog.vue",n="4ec8440d406d8e61da0265be46ff73bc24a39a33",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/OverridesDialog.vue",statementMap:{0:{start:{line:13,column:4},end:{line:25,column:5}},1:{start:{line:28,column:4},end:{line:28,column:30}},2:{start:{line:29,column:4},end:{line:29,column:23}},3:{start:{line:34,column:8},end:{line:34,column:25}},4:{start:{line:37,column:8},end:{line:37,column:34}},5:{start:{line:43,column:6},end:{line:45,column:8}},6:{start:{line:44,column:8},end:{line:44,column:31}},7:{start:{line:48,column:20},end:{line:56,column:7}},8:{start:{line:50,column:39},end:{line:54,column:11}},9:{start:{line:57,column:6},end:{line:68,column:7}},10:{start:{line:58,column:8},end:{line:67,column:12}},11:{start:{line:66,column:12},end:{line:66,column:31}},12:{start:{line:71,column:6},end:{line:81,column:10}},13:{start:{line:79,column:22},end:{line:79,column:50}},14:{start:{line:80,column:10},end:{line:80,column:41}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:12,column:2},end:{line:12,column:3}},loc:{start:{line:12,column:9},end:{line:26,column:3}},line:12},1:{name:"(anonymous_1)",decl:{start:{line:27,column:11},end:{line:27,column:12}},loc:{start:{line:27,column:23},end:{line:30,column:3}},line:27},2:{name:"(anonymous_2)",decl:{start:{line:33,column:6},end:{line:33,column:7}},loc:{start:{line:33,column:12},end:{line:35,column:7}},line:33},3:{name:"(anonymous_3)",decl:{start:{line:36,column:6},end:{line:36,column:7}},loc:{start:{line:36,column:17},end:{line:38,column:7}},line:36},4:{name:"(anonymous_4)",decl:{start:{line:42,column:18},end:{line:42,column:19}},loc:{start:{line:42,column:30},end:{line:46,column:5}},line:42},5:{name:"(anonymous_5)",decl:{start:{line:43,column:36},end:{line:43,column:37}},loc:{start:{line:43,column:48},end:{line:45,column:7}},line:43},6:{name:"(anonymous_6)",decl:{start:{line:47,column:20},end:{line:47,column:21}},loc:{start:{line:47,column:32},end:{line:69,column:5}},line:47},7:{name:"(anonymous_7)",decl:{start:{line:50,column:29},end:{line:50,column:30}},loc:{start:{line:50,column:39},end:{line:54,column:11}},line:50},8:{name:"(anonymous_8)",decl:{start:{line:65,column:16},end:{line:65,column:17}},loc:{start:{line:65,column:28},end:{line:67,column:11}},line:65},9:{name:"(anonymous_9)",decl:{start:{line:70,column:20},end:{line:70,column:21}},loc:{start:{line:70,column:36},end:{line:82,column:5}},line:70},10:{name:"(anonymous_10)",decl:{start:{line:78,column:14},end:{line:78,column:15}},loc:{start:{line:78,column:26},end:{line:81,column:9}},line:78}},branchMap:{},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0},b:{},inputSourceMap:{version:3,sources:["OverridesDialog.vue"],names:[],mappings:";AAsGA;;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",file:"OverridesDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog v-model="show" width="700">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span>Overrides</span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text>\n <v-btn\n @click="clearOverrides"\n color="primary"\n data-test="overrides-dialog-clear-all"\n >\n Clear All Overrides\n </v-btn>\n\n <v-card-title>\n Overrides\n <v-spacer />\n <v-text-field\n v-model="search"\n label="Search"\n prepend-inner-icon="mdi-magnify"\n clearable\n outlined\n dense\n single-line\n hide-details\n />\n </v-card-title>\n <v-data-table\n :headers="headers"\n :items="overrides"\n :search="search"\n :footer-props="{\n itemsPerPageOptions: [100],\n showFirstLastPage: true,\n firstIcon: \'mdi-page-first\',\n lastIcon: \'mdi-page-last\',\n prevIcon: \'mdi-chevron-left\',\n nextIcon: \'mdi-chevron-right\',\n }"\n calculate-widths\n multi-sort\n dense\n >\n <template v-slot:item.delete="{ item }">\n <v-tooltip bottom>\n <template v-slot:activator="{ on, attrs }">\n <v-icon\n @click="deleteOverride(item)"\n v-bind="attrs"\n v-on="on"\n >\n mdi-delete\n </v-icon>\n </template>\n <span>Delete Override</span>\n </v-tooltip>\n </template>\n </v-data-table>\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn\n @click="show = !show"\n color="primary"\n data-test="overrides-dialog-ok"\n >\n Ok\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport { OpenC3Api } from \'@openc3/tool-common/src/services/openc3-api\'\n\nexport default {\n components: {},\n props: {\n value: {\n type: Boolean,\n required: true,\n },\n },\n data() {\n return {\n api: null,\n overrides: [],\n search: \'\',\n headers: [\n { text: \'Target\', value: \'target_name\' },\n { text: \'Packet\', value: \'packet_name\' },\n { text: \'Item\', value: \'item_name\' },\n { text: \'Type\', value: \'value_type\' },\n { text: \'Value\', value: \'value\' },\n { text: \'Delete\', value: \'delete\' },\n ],\n }\n },\n created: function () {\n this.api = new OpenC3Api()\n this.getOverrides()\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n getOverrides: function () {\n this.api.get_overrides().then((result) => {\n this.overrides = result\n })\n },\n clearOverrides: function () {\n const items = [\n ...new Map(\n this.overrides.map((item) => [\n // Create a key based on target, packet, item so we remove duplicates\n `${item.target_name}__${item.packet_name}__${item.item_name}`,\n item,\n ]),\n ).values(),\n ]\n for (let item of items) {\n this.api\n .normalize_tlm(\n item.target_name,\n item.packet_name,\n item.item_name,\n \'ALL\',\n )\n .then((result) => {\n this.overrides = []\n })\n }\n },\n deleteOverride: function (item) {\n this.api\n .normalize_tlm(\n item.target_name,\n item.packet_name,\n item.item_name,\n item.value_type,\n )\n .then((result) => {\n var index = this.overrides.indexOf(item)\n this.overrides.splice(index, 1)\n })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"4ec8440d406d8e61da0265be46ff73bc24a39a33"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return mn=function(){return o},o}mn();const An={components:{},props:{value:{type:Boolean,required:!0}},data(){return mn().f[0]++,mn().s[0]++,{api:null,overrides:[],search:"",headers:[{text:"Target",value:"target_name"},{text:"Packet",value:"packet_name"},{text:"Item",value:"item_name"},{text:"Type",value:"value_type"},{text:"Value",value:"value"},{text:"Delete",value:"delete"}]}},created:function(){mn().f[1]++,mn().s[1]++,this.api=new P.x,mn().s[2]++,this.getOverrides()},computed:{show:{get(){return mn().f[2]++,mn().s[3]++,this.value},set(e){mn().f[3]++,mn().s[4]++,this.$emit("input",e)}}},methods:{getOverrides:function(){mn().f[4]++,mn().s[5]++,this.api.get_overrides().then((e=>{mn().f[5]++,mn().s[6]++,this.overrides=e}))},clearOverrides:function(){mn().f[6]++;const e=(mn().s[7]++,[...new Map(this.overrides.map((e=>(mn().f[7]++,mn().s[8]++,[`${e.target_name}__${e.packet_name}__${e.item_name}`,e])))).values()]);mn().s[9]++;for(let n of e)mn().s[10]++,this.api.normalize_tlm(n.target_name,n.packet_name,n.item_name,"ALL").then((e=>{mn().f[8]++,mn().s[11]++,this.overrides=[]}))},deleteOverride:function(e){mn().f[9]++,mn().s[12]++,this.api.normalize_tlm(e.target_name,e.packet_name,e.item_name,e.value_type).then((n=>{mn().f[10]++;var t=(mn().s[13]++,this.overrides.indexOf(e));mn().s[14]++,this.overrides.splice(t,1)}))}}},pn=An;var hn=(0,f.A)(pn,un,dn,!1,null,null,null);const vn=hn.exports;function fn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/PromptDialog.vue",n="1e517431bbb2c84e58c9ff555a3a9cfed7442661",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/PromptDialog.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:2206}},4:{start:{line:1,column:169},end:{line:1,column:181}},5:{start:{line:1,column:1055},end:{line:1,column:1083}},6:{start:{line:1,column:1143},end:{line:1,column:1163}},7:{start:{line:1,column:1909},end:{line:1,column:2188}},8:{start:{line:1,column:2080},end:{line:1,column:2118}},9:{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:153},end:{line:1,column:154}},loc:{start:{line:1,column:168},end:{line:1,column:182}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:1038},end:{line:1,column:1039}},loc:{start:{line:1,column:1054},end:{line:1,column:1084}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:1127},end:{line:1,column:1128}},loc:{start:{line:1,column:1142},end:{line:1,column:1164}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:1886},end:{line:1,column:1887}},loc:{start:{line:1,column:1908},end:{line:1,column:2189}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:2063},end:{line:1,column:2064}},loc:{start:{line:1,column:2079},end:{line:1,column:2119}},line:1}},branchMap:{0:{loc:{start:{line:1,column:451},end:{line:1,column:543}},type:"cond-expr",locations:[{start:{line:1,column:466},end:{line:1,column:534}},{start:{line:1,column:535},end:{line:1,column:543}}],line:1},1:{loc:{start:{line:1,column:661},end:{line:1,column:776}},type:"cond-expr",locations:[{start:{line:1,column:675},end:{line:1,column:767}},{start:{line:1,column:768},end:{line:1,column:776}}],line:1},2:{loc:{start:{line:1,column:797},end:{line:1,column:2198}},type:"cond-expr",locations:[{start:{line:1,column:822},end:{line:1,column:1615}},{start:{line:1,column:1616},end:{line:1,column:2198}}],line:1},3:{loc:{start:{line:1,column:2020},end:{line:1,column:2049}},type:"cond-expr",locations:[{start:{line:1,column:2035},end:{line:1,column:2044}},{start:{line:1,column:2047},end:{line:1,column:2049}}],line:1}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0},f:{0:0,1:0,2:0,3:0,4:0,5:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"1e517431bbb2c84e58c9ff555a3a9cfed7442661"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return fn=function(){return o},o}fn(),fn().s[0]++;var gn=function(){fn().f[0]++;var e=(fn().s[1]++,this),n=(fn().s[2]++,e._self._c);return fn().s[3]++,n("v-dialog",{attrs:{persistent:"",width:"600"},model:{value:e.show,callback:function(n){fn().f[1]++,fn().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",{staticClass:"text",domProps:{textContent:e._s(e.title)}}),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",{staticClass:"text"},[e.subtitle?(fn().b[0][0]++,n("v-row",[n("v-card-subtitle",[e._v(e._s(e.subtitle))])],1)):(fn().b[0][1]++,e._e()),e._v(" "),n("v-row",{staticClass:"mt-1"},[n("span",{domProps:{textContent:e._s(e.message)}})]),e._v(" "),e.details?(fn().b[1][0]++,n("v-row",{staticClass:"mt-1"},[n("span",{domProps:{textContent:e._s(e.details)}})])):(fn().b[1][1]++,e._e())],1)],1),e._v(" "),"combo"===e.layout?(fn().b[2][0]++,n("div",[n("v-row",{staticClass:"ma-2"},[n("v-select",{staticClass:"ma-1",attrs:{label:"Select",color:"secondary","data-test":"prompt-select",items:e.buttons,multiple:!0===e.multiple},on:{change:function(n){fn().f[2]++,fn().s[5]++,e.selectOkDisabled=!1}},model:{value:e.selectedItem,callback:function(n){fn().f[3]++,fn().s[6]++,e.selectedItem=n},expression:"selectedItem"}})],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"ma-1",attrs:{outlined:"","data-test":"prompt-cancel"},on:{click:e.cancelHandler}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"ma-1",attrs:{color:"primary","data-test":"prompt-ok",disabled:e.selectOkDisabled},on:{click:e.submitHandler}},[e._v("\n Ok\n ")])],1)],1)):(fn().b[2][1]++,n("div",[n("v-card-actions",{class:e.layoutClass},[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"ma-1",attrs:{outlined:"","data-test":"prompt-cancel"},on:{click:e.cancelHandler}},[e._v("\n Cancel\n ")]),e._v(" "),e._l(e.buttons,(function(t,l){return fn().f[4]++,fn().s[7]++,n("div",{key:l},[n("v-btn",{staticClass:"ma-1",attrs:{"data-test":`prompt-${t.text}`,color:t.value?(fn().b[3][0]++,"primary"):(fn().b[3][1]++,"")},on:{click:function(n){return fn().f[5]++,fn().s[8]++,e.submitWrapper(t.value)}}},[e._v("\n "+e._s(t.text)+"\n ")])],1)}))],2)],1))],1)],1)},Cn=(fn().s[9]++,[]);function bn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/PromptDialog.vue",n="4508ca9b7ce0e7cb4b39f3b6bcd861fe99800c27",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/PromptDialog.vue",statementMap:{0:{start:{line:22,column:21},end:{line:22,column:23}},1:{start:{line:36,column:4},end:{line:39,column:5}},2:{start:{line:44,column:8},end:{line:44,column:25}},3:{start:{line:47,column:8},end:{line:47,column:34}},4:{start:{line:51,column:19},end:{line:51,column:39}},5:{start:{line:52,column:6},end:{line:56,column:7}},6:{start:{line:53,column:8},end:{line:53,column:38}},7:{start:{line:55,column:8},end:{line:55,column:35}},8:{start:{line:61,column:6},end:{line:61,column:32}},9:{start:{line:62,column:6},end:{line:62,column:26}},10:{start:{line:65,column:6},end:{line:65,column:47}},11:{start:{line:68,column:6},end:{line:68,column:38}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:22,column:15},end:{line:22,column:16}},loc:{start:{line:22,column:21},end:{line:22,column:23}},line:22},1:{name:"(anonymous_1)",decl:{start:{line:35,column:2},end:{line:35,column:3}},loc:{start:{line:35,column:9},end:{line:40,column:3}},line:35},2:{name:"(anonymous_2)",decl:{start:{line:43,column:6},end:{line:43,column:7}},loc:{start:{line:43,column:12},end:{line:45,column:7}},line:43},3:{name:"(anonymous_3)",decl:{start:{line:46,column:6},end:{line:46,column:7}},loc:{start:{line:46,column:17},end:{line:48,column:7}},line:46},4:{name:"(anonymous_4)",decl:{start:{line:50,column:4},end:{line:50,column:5}},loc:{start:{line:50,column:18},end:{line:57,column:5}},line:50},5:{name:"(anonymous_5)",decl:{start:{line:60,column:19},end:{line:60,column:20}},loc:{start:{line:60,column:37},end:{line:63,column:5}},line:60},6:{name:"(anonymous_6)",decl:{start:{line:64,column:19},end:{line:64,column:20}},loc:{start:{line:64,column:31},end:{line:66,column:5}},line:64},7:{name:"(anonymous_7)",decl:{start:{line:67,column:19},end:{line:67,column:20}},loc:{start:{line:67,column:31},end:{line:69,column:5}},line:67}},branchMap:{0:{loc:{start:{line:52,column:6},end:{line:56,column:7}},type:"if",locations:[{start:{line:52,column:6},end:{line:56,column:7}},{start:{line:54,column:13},end:{line:56,column:7}}],line:52}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0,0]},inputSourceMap:{version:3,sources:["PromptDialog.vue"],names:[],mappings:";AAyGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"PromptDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog persistent v-model="show" width="600">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span class="text" v-text="title" />\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text class="text">\n <v-row v-if="subtitle">\n <v-card-subtitle>{{ subtitle }}</v-card-subtitle>\n </v-row>\n <v-row class="mt-1">\n <span v-text="message" />\n </v-row>\n <v-row v-if="details" class="mt-1">\n <span v-text="details" />\n </v-row>\n </v-card-text>\n </div>\n <div v-if="layout === \'combo\'">\n <v-row class="ma-2">\n <v-select\n @change="selectOkDisabled = false"\n v-model="selectedItem"\n label="Select"\n color="secondary"\n class="ma-1"\n data-test="prompt-select"\n :items="buttons"\n :multiple="multiple === true"\n />\n </v-row>\n <v-card-actions>\n <v-spacer />\n <v-btn\n @click="cancelHandler"\n outlined\n data-test="prompt-cancel"\n class="ma-1"\n >\n Cancel\n </v-btn>\n <v-btn\n @click="submitHandler"\n class="ma-1"\n color="primary"\n data-test="prompt-ok"\n :disabled="selectOkDisabled"\n >\n Ok\n </v-btn>\n </v-card-actions>\n </div>\n <div v-else>\n <v-card-actions :class="layoutClass">\n <v-spacer />\n <v-btn\n @click="cancelHandler"\n outlined\n data-test="prompt-cancel"\n class="ma-1"\n >\n Cancel\n </v-btn>\n <div v-for="(button, index) in buttons" :key="index">\n <v-btn\n @click="submitWrapper(button.value)"\n class="ma-1"\n :data-test="`prompt-${button.text}`"\n :color="button.value ? \'primary\' : \'\'"\n >\n {{ button.text }}\n </v-btn>\n </div>\n </v-card-actions>\n </div>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nexport default {\n props: {\n title: {\n type: String,\n default: \'Prompt Dialog\',\n },\n subtitle: {\n type: String,\n default: \'\',\n },\n message: {\n type: String,\n required: true,\n },\n details: {\n type: String,\n default: \'\',\n },\n buttons: {\n type: Array,\n default: () => [],\n },\n layout: {\n type: String,\n default: \'horizontal\', // Also \'vertical\' or \'combo\' when means ComboBox\n },\n multiple: {\n type: Boolean,\n default: false,\n required: false,\n },\n value: Boolean, // value is the default prop when using v-model\n },\n data() {\n return {\n selectOkDisabled: true,\n selectedItem: null,\n }\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n layoutClass() {\n let layout = \'d-flex align-start\'\n if (this.layout === \'vertical\') {\n return `${layout} flex-column`\n } else {\n return `${layout} flex-row`\n }\n },\n },\n methods: {\n submitWrapper: function (output) {\n this.selectedItem = output\n this.submitHandler()\n },\n submitHandler: function () {\n this.$emit(\'response\', this.selectedItem)\n },\n cancelHandler: function () {\n this.$emit(\'response\', \'Cancel\')\n },\n },\n}\n<\/script>\n\n<style scoped>\n.v-card__subtitle {\n padding: 0;\n padding-bottom: 10px;\n}\n.text {\n font-size: 1rem;\n white-space: pre-line;\n}\n</style>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"4508ca9b7ce0e7cb4b39f3b6bcd861fe99800c27"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return bn=function(){return o},o}bn();const _n={props:{title:{type:String,default:"Prompt Dialog"},subtitle:{type:String,default:""},message:{type:String,required:!0},details:{type:String,default:""},buttons:{type:Array,default:()=>(bn().f[0]++,bn().s[0]++,[])},layout:{type:String,default:"horizontal"},multiple:{type:Boolean,default:!1,required:!1},value:Boolean},data(){return bn().f[1]++,bn().s[1]++,{selectOkDisabled:!0,selectedItem:null}},computed:{show:{get(){return bn().f[2]++,bn().s[2]++,this.value},set(e){bn().f[3]++,bn().s[3]++,this.$emit("input",e)}},layoutClass(){bn().f[4]++;let e=(bn().s[4]++,"d-flex align-start");return bn().s[5]++,"vertical"===this.layout?(bn().b[0][0]++,bn().s[6]++,`${e} flex-column`):(bn().b[0][1]++,bn().s[7]++,`${e} flex-row`)}},methods:{submitWrapper:function(e){bn().f[5]++,bn().s[8]++,this.selectedItem=e,bn().s[9]++,this.submitHandler()},submitHandler:function(){bn().f[6]++,bn().s[10]++,this.$emit("response",this.selectedItem)},cancelHandler:function(){bn().f[7]++,bn().s[11]++,this.$emit("response","Cancel")}}},yn=_n;t(9876);var wn=(0,f.A)(yn,gn,Cn,!1,null,"3ca9666e",null);const xn=wn.exports;function kn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ResultsDialog.vue",n="34f6b0f11a778dc4333ca518458f3f56907e38f0",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ResultsDialog.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:927}},4:{start:{line:1,column:169},end:{line:1,column:181}},5:{start:{line:1,column:858},end:{line:1,column:878}},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:153},end:{line:1,column:154}},loc:{start:{line:1,column:168},end:{line:1,column:182}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:841},end:{line:1,column:842}},loc:{start:{line:1,column:857},end:{line:1,column:879}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},f:{0:0,1:0,2:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"34f6b0f11a778dc4333ca518458f3f56907e38f0"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return kn=function(){return o},o}kn(),kn().s[0]++;var Sn=function(){kn().f[0]++;var e=(kn().s[1]++,this),n=(kn().s[2]++,e._self._c);return kn().s[3]++,n("v-dialog",{attrs:{scrollable:"",width:"800"},model:{value:e.show,callback:function(n){kn().f[1]++,kn().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" Script Results ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",{staticStyle:{width:"100%","max-height":"80vh",overflow:"auto"}},[n("v-textarea",{attrs:{readonly:"","hide-details":"",dense:"","auto-grow":"",value:e.text}})],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:""},on:{click:e.downloadResults}},[e._v(" Download ")]),e._v(" "),n("v-btn",{ref:"okButton",staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(n){kn().f[2]++,kn().s[5]++,e.show=!e.show}}},[e._v("\n Ok\n ")])],1)],1)],1)},Tn=(kn().s[6]++,[]);function En(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ResultsDialog.vue",n="ccc307bf5209ceb8f0acad541880eeeb6209b127",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ResultsDialog.vue",statementMap:{0:{start:{line:19,column:8},end:{line:19,column:25}},1:{start:{line:22,column:8},end:{line:22,column:34}},2:{start:{line:28,column:4},end:{line:30,column:6}},3:{start:{line:29,column:6},end:{line:29,column:37}},4:{start:{line:34,column:19},end:{line:36,column:8}},5:{start:{line:38,column:19},end:{line:38,column:46}},6:{start:{line:39,column:6},end:{line:39,column:43}},7:{start:{line:40,column:6},end:{line:43,column:7}},8:{start:{line:44,column:6},end:{line:44,column:18}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:18,column:6},end:{line:18,column:7}},loc:{start:{line:18,column:12},end:{line:20,column:7}},line:18},1:{name:"(anonymous_1)",decl:{start:{line:21,column:6},end:{line:21,column:7}},loc:{start:{line:21,column:17},end:{line:23,column:7}},line:21},2:{name:"(anonymous_2)",decl:{start:{line:26,column:2},end:{line:26,column:3}},loc:{start:{line:26,column:12},end:{line:31,column:3}},line:26},3:{name:"(anonymous_3)",decl:{start:{line:28,column:15},end:{line:28,column:16}},loc:{start:{line:28,column:21},end:{line:30,column:5}},line:28},4:{name:"(anonymous_4)",decl:{start:{line:33,column:4},end:{line:33,column:5}},loc:{start:{line:33,column:22},end:{line:45,column:5}},line:33}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0},f:{0:0,1:0,2:0,3:0,4:0},b:{},inputSourceMap:{version:3,sources:["ResultsDialog.vue"],names:[],mappings:";AAoDA;;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",file:"ResultsDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog v-model="show" scrollable width="800">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span> Script Results </span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text style="width: 100%; max-height: 80vh; overflow: auto">\n <v-textarea readonly hide-details dense auto-grow :value="text" />\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn class="mx-2" outlined @click="downloadResults"> Download </v-btn>\n <v-btn\n class="mx-2"\n color="primary"\n @click="show = !show"\n ref="okButton"\n >\n Ok\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport { format } from \'date-fns\'\n\nexport default {\n components: {},\n props: {\n value: {\n type: Boolean,\n required: true,\n },\n text: {\n type: String,\n required: true,\n },\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n mounted() {\n // Focus the OK button so it\'s easy to hit Enter to close\n setTimeout(() => {\n this.$refs.okButton.$el.focus()\n })\n },\n methods: {\n downloadResults() {\n const blob = new Blob([this.text], {\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(\n \'download\',\n format(Date.now(), \'yyyy_MM_dd_HH_mm_ss\') + \'_suite_results.txt\',\n )\n link.click()\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"ccc307bf5209ceb8f0acad541880eeeb6209b127"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return En=function(){return o},o}En();const Mn={components:{},props:{value:{type:Boolean,required:!0},text:{type:String,required:!0}},computed:{show:{get(){return En().f[0]++,En().s[0]++,this.value},set(e){En().f[1]++,En().s[1]++,this.$emit("input",e)}}},mounted(){En().f[2]++,En().s[2]++,setTimeout((()=>{En().f[3]++,En().s[3]++,this.$refs.okButton.$el.focus()}))},methods:{downloadResults(){En().f[4]++;const e=(En().s[4]++,new Blob([this.text],{type:"text/plain"})),n=(En().s[5]++,document.createElement("a"));En().s[6]++,n.href=URL.createObjectURL(e),En().s[7]++,n.setAttribute("download",(0,u.GP)(Date.now(),"yyyy_MM_dd_HH_mm_ss")+"_suite_results.txt"),En().s[8]++,n.click()}}},In=Mn;var Dn=(0,f.A)(In,Sn,Tn,!1,null,null,null);const Rn=Dn.exports;function $n(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ScriptEnvironmentDialog.vue",n="1398cbcdc4d6210a6543178e4e2c1b9b35be632a",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ScriptEnvironmentDialog.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:955}},4:{start:{line:1,column:153},end:{line:1,column:165}},5:{start:{line:1,column:470},end:{line:1,column:486}},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:137},end:{line:1,column:138}},loc:{start:{line:1,column:152},end:{line:1,column:166}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:454},end:{line:1,column:455}},loc:{start:{line:1,column:469},end:{line:1,column:487}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},f:{0:0,1:0,2:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"1398cbcdc4d6210a6543178e4e2c1b9b35be632a"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return $n=function(){return o},o}$n(),$n().s[0]++;var On=function(){$n().f[0]++;var e=($n().s[1]++,this),n=($n().s[2]++,e._self._c);return $n().s[3]++,n("v-dialog",{attrs:{width:"600"},model:{value:e.show,callback:function(n){$n().f[1]++,$n().s[4]++,e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v("Script Environment Variables")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("div",{staticClass:"pa-2"},[n("v-card-text",[n("environment-chooser",{model:{value:e.selected,callback:function(n){$n().f[2]++,$n().s[5]++,e.selected=n},expression:"selected"}})],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"environment-dialog-cancel"},on:{click:e.cancel}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary","data-test":"environment-dialog-save",disabled:!!e.inputError},on:{click:e.updateEnvironment}},[e._v("\n Save\n ")])],1)],1)],1)},Nn=($n().s[6]++,[]);function Ln(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ScriptEnvironmentDialog.vue",n="65e119e98de479afb4b1ef5c4afa2ff2f029eeb0",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/Dialogs/ScriptEnvironmentDialog.vue",statementMap:{0:{start:{line:19,column:4},end:{line:21,column:5}},1:{start:{line:24,column:4},end:{line:24,column:26}},2:{start:{line:29,column:8},end:{line:29,column:25}},3:{start:{line:32,column:8},end:{line:32,column:34}},4:{start:{line:38,column:6},end:{line:38,column:48}},5:{start:{line:41,column:6},end:{line:41,column:46}},6:{start:{line:42,column:6},end:{line:42,column:28}},7:{start:{line:45,column:6},end:{line:45,column:28}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:18,column:2},end:{line:18,column:3}},loc:{start:{line:18,column:9},end:{line:22,column:3}},line:18},1:{name:"(anonymous_1)",decl:{start:{line:23,column:11},end:{line:23,column:12}},loc:{start:{line:23,column:23},end:{line:25,column:3}},line:23},2:{name:"(anonymous_2)",decl:{start:{line:28,column:6},end:{line:28,column:7}},loc:{start:{line:28,column:12},end:{line:30,column:7}},line:28},3:{name:"(anonymous_3)",decl:{start:{line:31,column:6},end:{line:31,column:7}},loc:{start:{line:31,column:17},end:{line:33,column:7}},line:31},4:{name:"(anonymous_4)",decl:{start:{line:37,column:21},end:{line:37,column:22}},loc:{start:{line:37,column:33},end:{line:39,column:5}},line:37},5:{name:"(anonymous_5)",decl:{start:{line:40,column:23},end:{line:40,column:24}},loc:{start:{line:40,column:35},end:{line:43,column:5}},line:40},6:{name:"(anonymous_6)",decl:{start:{line:44,column:12},end:{line:44,column:13}},loc:{start:{line:44,column:24},end:{line:46,column:5}},line:44}},branchMap:{},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,4:0,5:0,6:0},b:{},inputSourceMap:{version:3,sources:["ScriptEnvironmentDialog.vue"],names:[],mappings:";AA4DA;;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",file:"ScriptEnvironmentDialog.vue",sourceRoot:"src/tools/ScriptRunner/Dialogs",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#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <v-dialog v-model="show" width="600">\n <v-card>\n <v-system-bar>\n <v-spacer />\n <span>Script Environment Variables</span>\n <v-spacer />\n </v-system-bar>\n <div class="pa-2">\n <v-card-text>\n <environment-chooser v-model="selected" />\n </v-card-text>\n </div>\n <v-card-actions>\n <v-spacer />\n <v-btn\n @click="cancel"\n class="mx-2"\n outlined\n data-test="environment-dialog-cancel"\n >\n Cancel\n </v-btn>\n <v-btn\n @click="updateEnvironment"\n class="mx-2"\n color="primary"\n data-test="environment-dialog-save"\n :disabled="!!inputError"\n >\n Save\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport EnvironmentChooser from \'@openc3/tool-common/src/components/EnvironmentChooser\'\n\nexport default {\n components: {\n EnvironmentChooser,\n },\n props: {\n value: {\n type: Boolean,\n required: true,\n },\n inputEnvironment: {\n type: Array,\n required: true,\n },\n },\n data() {\n return {\n selected: [],\n }\n },\n mounted: function () {\n this.loadEnvironment()\n },\n computed: {\n show: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n loadEnvironment: function () {\n this.selected = [...this.inputEnvironment]\n },\n updateEnvironment: function () {\n this.$emit(\'environment\', this.selected)\n this.show = !this.show\n },\n cancel: function () {\n this.show = !this.show\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"65e119e98de479afb4b1ef5c4afa2ff2f029eeb0"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Ln=function(){return o},o}Ln();const Fn={components:{EnvironmentChooser:be},props:{value:{type:Boolean,required:!0},inputEnvironment:{type:Array,required:!0}},data(){return Ln().f[0]++,Ln().s[0]++,{selected:[]}},mounted:function(){Ln().f[1]++,Ln().s[1]++,this.loadEnvironment()},computed:{show:{get(){return Ln().f[2]++,Ln().s[2]++,this.value},set(e){Ln().f[3]++,Ln().s[3]++,this.$emit("input",e)}}},methods:{loadEnvironment:function(){Ln().f[4]++,Ln().s[4]++,this.selected=[...this.inputEnvironment]},updateEnvironment:function(){Ln().f[5]++,Ln().s[5]++,this.$emit("environment",this.selected),Ln().s[6]++,this.show=!this.show},cancel:function(){Ln().f[6]++,Ln().s[7]++,this.show=!this.show}}},Pn=Fn;var Un=(0,f.A)(Pn,On,Nn,!1,null,null,null);const Hn=Un.exports;function Bn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/SuiteRunner.vue",n="35f9b9acfae6c5fa2dc30e0d32d26cce7bc45a95",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/SuiteRunner.vue",statementMap:{0:{start:{line:1,column:13},end:{line:8,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:7,column:146}},4:{start:{line:1,column:369},end:{line:1,column:618}},5:{start:{line:1,column:573},end:{line:1,column:588}},6:{start:{line:1,column:940},end:{line:1,column:1167}},7:{start:{line:1,column:1122},end:{line:1,column:1137}},8:{start:{line:1,column:1672},end:{line:1,column:1685}},9:{start:{line:1,column:1928},end:{line:1,column:2015}},10:{start:{line:1,column:2273},end:{line:1,column:2360}},11:{start:{line:1,column:2605},end:{line:1,column:2695}},12:{start:{line:1,column:3014},end:{line:1,column:3281}},13:{start:{line:1,column:3236},end:{line:1,column:3251}},14:{start:{line:1,column:3630},end:{line:1,column:3851}},15:{start:{line:1,column:3806},end:{line:1,column:3821}},16:{start:{line:1,column:4411},end:{line:1,column:4424}},17:{start:{line:1,column:4667},end:{line:1,column:4772}},18:{start:{line:1,column:5030},end:{line:1,column:5135}},19:{start:{line:1,column:5380},end:{line:1,column:5488}},20:{start:{line:1,column:5807},end:{line:1,column:6065}},21:{start:{line:1,column:6020},end:{line:1,column:6035}},22:{start:{line:1,column:6423},end:{line:1,column:6727}},23:{start:{line:1,column:6682},end:{line:1,column:6697}},24:{start:{line:1,column:7397},end:{line:1,column:7411}},25:{start:{line:1,column:7637},end:{line:7,column:18}},26:{start:{line:9,column:22},end:{line:9,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:8,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:352},end:{line:1,column:353}},loc:{start:{line:1,column:368},end:{line:1,column:619}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:557},end:{line:1,column:558}},loc:{start:{line:1,column:572},end:{line:1,column:589}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:923},end:{line:1,column:924}},loc:{start:{line:1,column:939},end:{line:1,column:1168}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:1106},end:{line:1,column:1107}},loc:{start:{line:1,column:1121},end:{line:1,column:1138}},line:1},5:{name:"(anonymous_5)",decl:{start:{line:1,column:1656},end:{line:1,column:1657}},loc:{start:{line:1,column:1671},end:{line:1,column:1686}},line:1},6:{name:"(anonymous_6)",decl:{start:{line:1,column:1911},end:{line:1,column:1912}},loc:{start:{line:1,column:1927},end:{line:1,column:2016}},line:1},7:{name:"(anonymous_7)",decl:{start:{line:1,column:2256},end:{line:1,column:2257}},loc:{start:{line:1,column:2272},end:{line:1,column:2361}},line:1},8:{name:"(anonymous_8)",decl:{start:{line:1,column:2588},end:{line:1,column:2589}},loc:{start:{line:1,column:2604},end:{line:1,column:2696}},line:1},9:{name:"(anonymous_9)",decl:{start:{line:1,column:2997},end:{line:1,column:2998}},loc:{start:{line:1,column:3013},end:{line:1,column:3282}},line:1},10:{name:"(anonymous_10)",decl:{start:{line:1,column:3220},end:{line:1,column:3221}},loc:{start:{line:1,column:3235},end:{line:1,column:3252}},line:1},11:{name:"(anonymous_11)",decl:{start:{line:1,column:3613},end:{line:1,column:3614}},loc:{start:{line:1,column:3629},end:{line:1,column:3852}},line:1},12:{name:"(anonymous_12)",decl:{start:{line:1,column:3790},end:{line:1,column:3791}},loc:{start:{line:1,column:3805},end:{line:1,column:3822}},line:1},13:{name:"(anonymous_13)",decl:{start:{line:1,column:4395},end:{line:1,column:4396}},loc:{start:{line:1,column:4410},end:{line:1,column:4425}},line:1},14:{name:"(anonymous_14)",decl:{start:{line:1,column:4650},end:{line:1,column:4651}},loc:{start:{line:1,column:4666},end:{line:1,column:4773}},line:1},15:{name:"(anonymous_15)",decl:{start:{line:1,column:5013},end:{line:1,column:5014}},loc:{start:{line:1,column:5029},end:{line:1,column:5136}},line:1},16:{name:"(anonymous_16)",decl:{start:{line:1,column:5363},end:{line:1,column:5364}},loc:{start:{line:1,column:5379},end:{line:1,column:5489}},line:1},17:{name:"(anonymous_17)",decl:{start:{line:1,column:5790},end:{line:1,column:5791}},loc:{start:{line:1,column:5806},end:{line:1,column:6066}},line:1},18:{name:"(anonymous_18)",decl:{start:{line:1,column:6004},end:{line:1,column:6005}},loc:{start:{line:1,column:6019},end:{line:1,column:6036}},line:1},19:{name:"(anonymous_19)",decl:{start:{line:1,column:6406},end:{line:1,column:6407}},loc:{start:{line:1,column:6422},end:{line:1,column:6728}},line:1},20:{name:"(anonymous_20)",decl:{start:{line:1,column:6666},end:{line:1,column:6667}},loc:{start:{line:1,column:6681},end:{line:1,column:6698}},line:1},21:{name:"(anonymous_21)",decl:{start:{line:1,column:7381},end:{line:1,column:7382}},loc:{start:{line:1,column:7396},end:{line:1,column:7412}},line:1},22:{name:"(anonymous_22)",decl:{start:{line:1,column:7620},end:{line:1,column:7621}},loc:{start:{line:1,column:7636},end:{line:7,column:19}},line:1}},branchMap:{0:{loc:{start:{line:1,column:1828},end:{line:1,column:1871}},type:"binary-expr",locations:[{start:{line:1,column:1828},end:{line:1,column:1846}},{start:{line:1,column:1850},end:{line:1,column:1871}}],line:1},1:{loc:{start:{line:1,column:2173},end:{line:1,column:2242}},type:"binary-expr",locations:[{start:{line:1,column:2173},end:{line:1,column:2191}},{start:{line:1,column:2195},end:{line:1,column:2217}},{start:{line:1,column:2221},end:{line:1,column:2242}}],line:1},2:{loc:{start:{line:1,column:2502},end:{line:1,column:2574}},type:"binary-expr",locations:[{start:{line:1,column:2502},end:{line:1,column:2520}},{start:{line:1,column:2524},end:{line:1,column:2549}},{start:{line:1,column:2553},end:{line:1,column:2574}}],line:1},3:{loc:{start:{line:1,column:4567},end:{line:1,column:4610}},type:"binary-expr",locations:[{start:{line:1,column:4567},end:{line:1,column:4585}},{start:{line:1,column:4589},end:{line:1,column:4610}}],line:1},4:{loc:{start:{line:1,column:4930},end:{line:1,column:4999}},type:"binary-expr",locations:[{start:{line:1,column:4930},end:{line:1,column:4948}},{start:{line:1,column:4952},end:{line:1,column:4974}},{start:{line:1,column:4978},end:{line:1,column:4999}}],line:1},5:{loc:{start:{line:1,column:5277},end:{line:1,column:5349}},type:"binary-expr",locations:[{start:{line:1,column:5277},end:{line:1,column:5295}},{start:{line:1,column:5299},end:{line:1,column:5324}},{start:{line:1,column:5328},end:{line:1,column:5349}}],line:1},6:{loc:{start:{line:1,column:7536},end:{line:1,column:7579}},type:"binary-expr",locations:[{start:{line:1,column:7536},end:{line:1,column:7554}},{start:{line:1,column:7558},end:{line:1,column:7579}}],line:1}},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},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},b:{0:[0,0],1:[0,0,0],2:[0,0,0],3:[0,0],4:[0,0,0],5:[0,0,0],6:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"35f9b9acfae6c5fa2dc30e0d32d26cce7bc45a95"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Bn=function(){return o},o}Bn(),Bn().s[0]++;var Vn=function(){Bn().f[0]++;var e=(Bn().s[1]++,this),n=(Bn().s[2]++,e._self._c);return Bn().s[3]++,n("div",[n("div",{attrs:{id:"tr-container"}},[n("v-row",{attrs:{"no-gutters":"",align:"center"}},[n("v-col",{attrs:{cols:"4"}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[1]++,Bn().s[4]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{label:"Pause on Error",value:"pauseOnError","hide-details":"","data-test":"pause-on-error"},model:{value:e.options,callback:function(n){Bn().f[2]++,Bn().s[5]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v("Checked pauses the script when an error is encountered"),n("br"),e._v("Unchecked\n continues without user interaction")])])],1),e._v(" "),n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[3]++,Bn().s[6]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{label:"Manual",value:"manual","hide-details":"","data-test":"manual"},model:{value:e.options,callback:function(n){Bn().f[4]++,Bn().s[7]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v(e._s(e.checkedManualTooltip)),n("br"),e._v(e._s(e.uncheckedManualTooltip))])])],1)],1)],1),e._v(" "),n("v-col",{attrs:{cols:"8"}},[n("v-row",{attrs:{"no-gutters":"",justify:"end"}},[n("v-col",{attrs:{cols:"5"}},[n("v-select",{staticClass:"mb-2 mr-2",attrs:{label:"Suite:","hide-details":"",dense:"",outlined:"",items:e.suites,"data-test":"select-suite"},on:{change:e.suiteChanged},model:{value:e.suite,callback:function(n){Bn().f[5]++,Bn().s[8]++,e.suite=n},expression:"suite"}})],1),e._v(" "),n("v-col",{attrs:{cols:"auto"}},[n("v-btn",{staticClass:"mr-2",attrs:{color:"primary",disabled:(Bn().b[0][0]++,e.disableButtons||(Bn().b[0][1]++,!e.userInfo.execute)),"data-test":"start-suite"},on:{click:function(n){return Bn().f[6]++,Bn().s[9]++,e.$emit("button",{method:"start",suite:e.suite,options:e.options})}}},[e._v("\n Start\n ")]),e._v(" "),n("v-btn",{staticClass:"mr-2",attrs:{color:"primary","data-test":"setup-suite",disabled:(Bn().b[1][0]++,e.disableButtons||(Bn().b[1][1]++,!e.setupSuiteEnabled)||(Bn().b[1][2]++,!e.userInfo.execute))},on:{click:function(n){return Bn().f[7]++,Bn().s[10]++,e.$emit("button",{method:"setup",suite:e.suite,options:e.options})}}},[e._v("\n Setup\n ")]),e._v(" "),n("v-btn",{attrs:{color:"primary","data-test":"teardown-suite",disabled:(Bn().b[2][0]++,e.disableButtons||(Bn().b[2][1]++,!e.teardownSuiteEnabled)||(Bn().b[2][2]++,!e.userInfo.execute))},on:{click:function(n){return Bn().f[8]++,Bn().s[11]++,e.$emit("button",{method:"teardown",suite:e.suite,options:e.options})}}},[e._v("\n Teardown\n ")])],1)],1)],1)],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{cols:"4"}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[9]++,Bn().s[12]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{label:"Continue after Error",value:"continueAfterError","hide-details":"","data-test":"continue-after-error"},model:{value:e.options,callback:function(n){Bn().f[10]++,Bn().s[13]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v("Checked allows the script to continue when an error is\n encountered"),n("br"),e._v("Unchecked forces the current script to\n end")])])],1),e._v(" "),n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[11]++,Bn().s[14]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{label:"Loop",value:"loop","hide-details":"","data-test":"loop"},model:{value:e.options,callback:function(n){Bn().f[12]++,Bn().s[15]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v("Checked continuously executes until explicitly stopped"),n("br"),e._v("\n Unchecked executes only the started script(s)")])])],1)],1)],1),e._v(" "),n("v-col",{attrs:{cols:"8"}},[n("v-row",{attrs:{"no-gutters":"",justify:"end"}},[n("v-col",{attrs:{cols:"5"}},[n("v-select",{staticClass:"mb-2 mr-2",attrs:{label:"Group:","hide-details":"",dense:"",outlined:"",items:e.groups,"data-test":"select-group"},on:{change:e.groupChanged},model:{value:e.group,callback:function(n){Bn().f[13]++,Bn().s[16]++,e.group=n},expression:"group"}})],1),e._v(" "),n("v-col",{attrs:{cols:"auto"}},[n("v-btn",{staticClass:"mr-2",attrs:{color:"primary",disabled:(Bn().b[3][0]++,e.disableButtons||(Bn().b[3][1]++,!e.userInfo.execute)),"data-test":"start-group"},on:{click:function(n){return Bn().f[14]++,Bn().s[17]++,e.$emit("button",{method:"start",suite:e.suite,group:e.group,options:e.options})}}},[e._v("\n Start\n ")]),e._v(" "),n("v-btn",{staticClass:"mr-2",attrs:{color:"primary","data-test":"setup-group",disabled:(Bn().b[4][0]++,e.disableButtons||(Bn().b[4][1]++,!e.setupGroupEnabled)||(Bn().b[4][2]++,!e.userInfo.execute))},on:{click:function(n){return Bn().f[15]++,Bn().s[18]++,e.$emit("button",{method:"setup",suite:e.suite,group:e.group,options:e.options})}}},[e._v("\n Setup\n ")]),e._v(" "),n("v-btn",{attrs:{color:"primary","data-test":"teardown-group",disabled:(Bn().b[5][0]++,e.disableButtons||(Bn().b[5][1]++,!e.teardownGroupEnabled)||(Bn().b[5][2]++,!e.userInfo.execute))},on:{click:function(n){return Bn().f[16]++,Bn().s[19]++,e.$emit("button",{method:"teardown",suite:e.suite,group:e.group,options:e.options})}}},[e._v("\n Teardown\n ")])],1)],1)],1)],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{cols:"4"}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[17]++,Bn().s[20]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{label:"Abort after Error",value:"abortAfterError","hide-details":"","data-test":"abort-after-error"},model:{value:e.options,callback:function(n){Bn().f[18]++,Bn().s[21]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v("Checked stops additional script execution when an error is\n encountered"),n("br"),e._v("\n Unchecked allows additional scripts to execute")])])],1),e._v(" "),n("v-col",{attrs:{cols:"6"}},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return Bn().f[19]++,Bn().s[22]++,[n("div",e._g({},t),[n("v-checkbox",{attrs:{disabled:!e.options.includes("loop"),label:"Break Loop on Error",value:"breakLoopOnError","hide-details":"","data-test":"break-loop-on-error"},model:{value:e.options,callback:function(n){Bn().f[20]++,Bn().s[23]++,e.options=n},expression:"options"}})],1)]}}])},[e._v(" "),n("span",[e._v("Checked breaks the loop option when an error is\n encountered"),n("br"),e._v("\n Unchecked allows the loop to run continuously"),n("br"),e._v("\n Note: Abort after Error still breaks the loop")])])],1)],1)],1),e._v(" "),n("v-col",{attrs:{cols:"8"}},[n("v-row",{attrs:{"no-gutters":"",justify:"end"}},[n("v-col",{attrs:{cols:"5"}},[n("v-select",{staticClass:"mb-2 mr-2",attrs:{label:"Script:","hide-details":"",dense:"",outlined:"",items:e.scripts,"data-test":"select-script"},on:{change:e.scriptChanged},model:{value:e.script,callback:function(n){Bn().f[21]++,Bn().s[24]++,e.script=n},expression:"script"}})],1),e._v(" "),n("v-col",{attrs:{cols:"auto"}},[n("v-btn",{attrs:{color:"primary",disabled:(Bn().b[6][0]++,e.disableButtons||(Bn().b[6][1]++,!e.userInfo.execute)),"data-test":"start-script"},on:{click:function(n){return Bn().f[22]++,Bn().s[25]++,e.$emit("button",{method:"start",suite:e.suite,group:e.group,script:e.script,options:e.options})}}},[e._v("\n Start\n ")]),e._v(" "),n("div",{staticStyle:{width:"296px"}})],1)],1)],1)],1)],1)])},Wn=(Bn().s[26]++,[]);function Gn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/SuiteRunner.vue",n="268160fc01d756a2f787fbd62b8b10d3439b6bc6",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/SuiteRunner.vue",statementMap:{0:{start:{line:18,column:4},end:{line:27,column:5}},1:{start:{line:31,column:6},end:{line:35,column:7}},2:{start:{line:32,column:8},end:{line:32,column:71}},3:{start:{line:34,column:8},end:{line:34,column:58}},4:{start:{line:38,column:6},end:{line:42,column:7}},5:{start:{line:39,column:8},end:{line:39,column:74}},6:{start:{line:41,column:8},end:{line:41,column:61}},7:{start:{line:45,column:6},end:{line:49,column:7}},8:{start:{line:46,column:8},end:{line:46,column:19}},9:{start:{line:48,column:8},end:{line:48,column:20}},10:{start:{line:52,column:6},end:{line:56,column:7}},11:{start:{line:53,column:8},end:{line:53,column:19}},12:{start:{line:55,column:8},end:{line:55,column:20}},13:{start:{line:59,column:6},end:{line:67,column:7}},14:{start:{line:64,column:8},end:{line:64,column:19}},15:{start:{line:66,column:8},end:{line:66,column:20}},16:{start:{line:70,column:6},end:{line:78,column:7}},17:{start:{line:75,column:8},end:{line:75,column:19}},18:{start:{line:77,column:8},end:{line:77,column:20}},19:{start:{line:82,column:4},end:{line:82,column:71}},20:{start:{line:83,column:4},end:{line:83,column:21}},21:{start:{line:84,column:4},end:{line:84,column:24}},22:{start:{line:90,column:8},end:{line:90,column:29}},23:{start:{line:97,column:6},end:{line:97,column:46}},24:{start:{line:98,column:6},end:{line:106,column:7}},25:{start:{line:102,column:8},end:{line:102,column:25}},26:{start:{line:104,column:8},end:{line:104,column:67}},27:{start:{line:105,column:8},end:{line:105,column:75}},28:{start:{line:109,column:6},end:{line:109,column:46}},29:{start:{line:110,column:6},end:{line:110,column:39}},30:{start:{line:113,column:6},end:{line:113,column:24}},31:{start:{line:114,column:6},end:{line:114,column:21}},32:{start:{line:115,column:6},end:{line:115,column:22}},33:{start:{line:116,column:6},end:{line:116,column:60}},34:{start:{line:118,column:6},end:{line:118,column:39}},35:{start:{line:121,column:6},end:{line:121,column:24}},36:{start:{line:122,column:6},end:{line:122,column:22}},37:{start:{line:123,column:6},end:{line:123,column:68}},38:{start:{line:125,column:6},end:{line:125,column:41}},39:{start:{line:128,column:6},end:{line:128,column:25}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:17,column:2},end:{line:17,column:3}},loc:{start:{line:17,column:9},end:{line:28,column:3}},line:17},1:{name:"(anonymous_1)",decl:{start:{line:30,column:4},end:{line:30,column:5}},loc:{start:{line:30,column:27},end:{line:36,column:5}},line:30},2:{name:"(anonymous_2)",decl:{start:{line:37,column:4},end:{line:37,column:5}},loc:{start:{line:37,column:29},end:{line:43,column:5}},line:37},3:{name:"(anonymous_3)",decl:{start:{line:44,column:4},end:{line:44,column:5}},loc:{start:{line:44,column:24},end:{line:50,column:5}},line:44},4:{name:"(anonymous_4)",decl:{start:{line:51,column:4},end:{line:51,column:5}},loc:{start:{line:51,column:27},end:{line:57,column:5}},line:51},5:{name:"(anonymous_5)",decl:{start:{line:58,column:4},end:{line:58,column:5}},loc:{start:{line:58,column:24},end:{line:68,column:5}},line:58},6:{name:"(anonymous_6)",decl:{start:{line:69,column:4},end:{line:69,column:5}},loc:{start:{line:69,column:27},end:{line:79,column:5}},line:69},7:{name:"(anonymous_7)",decl:{start:{line:81,column:2},end:{line:81,column:3}},loc:{start:{line:81,column:12},end:{line:85,column:3}},line:81},8:{name:"(anonymous_8)",decl:{start:{line:89,column:15},end:{line:89,column:16}},loc:{start:{line:89,column:41},end:{line:91,column:7}},line:89},9:{name:"(anonymous_9)",decl:{start:{line:96,column:4},end:{line:96,column:5}},loc:{start:{line:96,column:21},end:{line:107,column:5}},line:96},10:{name:"(anonymous_10)",decl:{start:{line:108,column:4},end:{line:108,column:5}},loc:{start:{line:108,column:17},end:{line:111,column:5}},line:108},11:{name:"(anonymous_11)",decl:{start:{line:112,column:4},end:{line:112,column:5}},loc:{start:{line:112,column:24},end:{line:119,column:5}},line:112},12:{name:"(anonymous_12)",decl:{start:{line:120,column:4},end:{line:120,column:5}},loc:{start:{line:120,column:24},end:{line:126,column:5}},line:120},13:{name:"(anonymous_13)",decl:{start:{line:127,column:4},end:{line:127,column:5}},loc:{start:{line:127,column:25},end:{line:129,column:5}},line:127}},branchMap:{0:{loc:{start:{line:31,column:6},end:{line:35,column:7}},type:"if",locations:[{start:{line:31,column:6},end:{line:35,column:7}},{start:{line:33,column:13},end:{line:35,column:7}}],line:31},1:{loc:{start:{line:38,column:6},end:{line:42,column:7}},type:"if",locations:[{start:{line:38,column:6},end:{line:42,column:7}},{start:{line:40,column:13},end:{line:42,column:7}}],line:38},2:{loc:{start:{line:45,column:6},end:{line:49,column:7}},type:"if",locations:[{start:{line:45,column:6},end:{line:49,column:7}},{start:{line:47,column:13},end:{line:49,column:7}}],line:45},3:{loc:{start:{line:45,column:10},end:{line:45,column:55}},type:"binary-expr",locations:[{start:{line:45,column:10},end:{line:45,column:20}},{start:{line:45,column:24},end:{line:45,column:55}}],line:45},4:{loc:{start:{line:52,column:6},end:{line:56,column:7}},type:"if",locations:[{start:{line:52,column:6},end:{line:56,column:7}},{start:{line:54,column:13},end:{line:56,column:7}}],line:52},5:{loc:{start:{line:52,column:10},end:{line:52,column:58}},type:"binary-expr",locations:[{start:{line:52,column:10},end:{line:52,column:20}},{start:{line:52,column:24},end:{line:52,column:58}}],line:52},6:{loc:{start:{line:59,column:6},end:{line:67,column:7}},type:"if",locations:[{start:{line:59,column:6},end:{line:67,column:7}},{start:{line:65,column:13},end:{line:67,column:7}}],line:59},7:{loc:{start:{line:60,column:8},end:{line:62,column:58}},type:"binary-expr",locations:[{start:{line:60,column:8},end:{line:60,column:18}},{start:{line:61,column:8},end:{line:61,column:18}},{start:{line:62,column:8},end:{line:62,column:58}}],line:60},8:{loc:{start:{line:70,column:6},end:{line:78,column:7}},type:"if",locations:[{start:{line:70,column:6},end:{line:78,column:7}},{start:{line:76,column:13},end:{line:78,column:7}}],line:70},9:{loc:{start:{line:71,column:8},end:{line:73,column:61}},type:"binary-expr",locations:[{start:{line:71,column:8},end:{line:71,column:18}},{start:{line:72,column:8},end:{line:72,column:18}},{start:{line:73,column:8},end:{line:73,column:61}}],line:71},10:{loc:{start:{line:98,column:6},end:{line:106,column:7}},type:"if",locations:[{start:{line:98,column:6},end:{line:106,column:7}},{start:{line:103,column:13},end:{line:106,column:7}}],line:98},11:{loc:{start:{line:99,column:8},end:{line:100,column:65}},type:"binary-expr",locations:[{start:{line:99,column:8},end:{line:99,column:46}},{start:{line:100,column:8},end:{line:100,column:65}}],line:99}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0,0],8:[0,0],9:[0,0,0],10:[0,0],11:[0,0]},inputSourceMap:{version:3,sources:["SuiteRunner.vue"],names:[],mappings:";AAsTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"SuiteRunner.vue",sourceRoot:"src/tools/ScriptRunner",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 2023, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <div id="tr-container">\n <v-row no-gutters align="center">\n <v-col cols="4">\n <v-row no-gutters>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n v-model="options"\n label="Pause on Error"\n value="pauseOnError"\n hide-details\n data-test="pause-on-error"\n />\n </div>\n </template>\n <span\n >Checked pauses the script when an error is encountered<br />Unchecked\n continues without user interaction</span\n >\n </v-tooltip>\n </v-col>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n v-model="options"\n label="Manual"\n value="manual"\n hide-details\n data-test="manual"\n />\n </div>\n </template>\n <span\n >{{ checkedManualTooltip }}<br />{{\n uncheckedManualTooltip\n }}</span\n >\n </v-tooltip>\n </v-col>\n </v-row>\n </v-col>\n <v-col cols="8">\n <v-row no-gutters justify="end">\n <v-col cols="5">\n <v-select\n label="Suite:"\n class="mb-2 mr-2"\n hide-details\n dense\n outlined\n @change="suiteChanged"\n :items="suites"\n v-model="suite"\n data-test="select-suite"\n />\n </v-col>\n <v-col cols="auto">\n <v-btn\n color="primary"\n class="mr-2"\n :disabled="disableButtons || !userInfo.execute"\n @click="$emit(\'button\', { method: \'start\', suite, options })"\n data-test="start-suite"\n >\n Start\n </v-btn>\n <v-btn\n color="primary"\n class="mr-2"\n @click="$emit(\'button\', { method: \'setup\', suite, options })"\n data-test="setup-suite"\n :disabled="\n disableButtons || !setupSuiteEnabled || !userInfo.execute\n "\n >\n Setup\n </v-btn>\n <v-btn\n color="primary"\n @click="$emit(\'button\', { method: \'teardown\', suite, options })"\n data-test="teardown-suite"\n :disabled="\n disableButtons || !teardownSuiteEnabled || !userInfo.execute\n "\n >\n Teardown\n </v-btn>\n </v-col>\n </v-row>\n </v-col>\n </v-row>\n <v-row no-gutters>\n <v-col cols="4">\n <v-row no-gutters>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n v-model="options"\n label="Continue after Error"\n value="continueAfterError"\n hide-details\n data-test="continue-after-error"\n />\n </div>\n </template>\n <span\n >Checked allows the script to continue when an error is\n encountered<br />Unchecked forces the current script to\n end</span\n >\n </v-tooltip>\n </v-col>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n v-model="options"\n label="Loop"\n value="loop"\n hide-details\n data-test="loop"\n />\n </div>\n </template>\n <span\n >Checked continuously executes until explicitly stopped<br />\n Unchecked executes only the started script(s)</span\n >\n </v-tooltip>\n </v-col>\n </v-row>\n </v-col>\n <v-col cols="8">\n <v-row no-gutters justify="end">\n <v-col cols="5">\n <v-select\n label="Group:"\n class="mb-2 mr-2"\n hide-details\n dense\n outlined\n @change="groupChanged"\n :items="groups"\n v-model="group"\n data-test="select-group"\n />\n </v-col>\n <v-col cols="auto">\n <v-btn\n color="primary"\n class="mr-2"\n :disabled="disableButtons || !userInfo.execute"\n @click="\n $emit(\'button\', { method: \'start\', suite, group, options })\n "\n data-test="start-group"\n >\n Start\n </v-btn>\n <v-btn\n color="primary"\n class="mr-2"\n @click="\n $emit(\'button\', { method: \'setup\', suite, group, options })\n "\n data-test="setup-group"\n :disabled="\n disableButtons || !setupGroupEnabled || !userInfo.execute\n "\n >\n Setup\n </v-btn>\n <v-btn\n color="primary"\n @click="\n $emit(\'button\', { method: \'teardown\', suite, group, options })\n "\n data-test="teardown-group"\n :disabled="\n disableButtons || !teardownGroupEnabled || !userInfo.execute\n "\n >\n Teardown\n </v-btn>\n </v-col>\n </v-row>\n </v-col>\n </v-row>\n <v-row no-gutters>\n <v-col cols="4">\n <v-row no-gutters>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n v-model="options"\n label="Abort after Error"\n value="abortAfterError"\n hide-details\n data-test="abort-after-error"\n />\n </div>\n </template>\n <span\n >Checked stops additional script execution when an error is\n encountered<br />\n Unchecked allows additional scripts to execute</span\n >\n </v-tooltip>\n </v-col>\n <v-col cols="6">\n <v-tooltip bottom>\n <template v-slot:activator="{ on }">\n <div v-on="on">\n <v-checkbox\n :disabled="!options.includes(\'loop\')"\n v-model="options"\n label="Break Loop on Error"\n value="breakLoopOnError"\n hide-details\n data-test="break-loop-on-error"\n />\n </div>\n </template>\n <span\n >Checked breaks the loop option when an error is\n encountered<br />\n Unchecked allows the loop to run continuously<br />\n Note: Abort after Error still breaks the loop</span\n >\n </v-tooltip>\n </v-col>\n </v-row>\n </v-col>\n <v-col cols="8">\n <v-row no-gutters justify="end">\n <v-col cols="5">\n <v-select\n label="Script:"\n class="mb-2 mr-2"\n hide-details\n dense\n outlined\n @change="scriptChanged"\n :items="scripts"\n v-model="script"\n data-test="select-script"\n />\n </v-col>\n <v-col cols="auto">\n <v-btn\n color="primary"\n :disabled="disableButtons || !userInfo.execute"\n @click="\n $emit(\'button\', {\n method: \'start\',\n suite,\n group,\n script,\n options,\n })\n "\n data-test="start-script"\n >\n Start\n </v-btn>\n \x3c!-- TODO: Don\'t like this hard coded spacer but not sure how else\n to push the Start button over to line up with the other Starts --\x3e\n <div style="width: 296px" />\n </v-col>\n </v-row>\n </v-col>\n </v-row>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n props: {\n suiteMap: {\n type: Object,\n required: true,\n },\n disableButtons: {\n type: Boolean,\n required: true,\n },\n filename: {\n type: String,\n required: true,\n },\n },\n data() {\n return {\n suites: [],\n groups: [],\n scripts: [],\n suite: \'\',\n group: \'\',\n script: \'\',\n options: [\'pauseOnError\', \'manual\', \'continueAfterError\'],\n userInfo: {},\n }\n },\n computed: {\n checkedManualTooltip() {\n if (this.filename.endsWith(\'.py\')) {\n return \'Checked sets the RunningScript.manual variable to True\'\n } else {\n return \'Checked sets the $manual variable to true\'\n }\n },\n uncheckedManualTooltip() {\n if (this.filename.endsWith(\'.py\')) {\n return \'Unchecked sets the RunningScript.manual variable to False\'\n } else {\n return \'Unchecked sets the $manual variable to false\'\n }\n },\n setupSuiteEnabled() {\n if (this.suite && this.suiteMap[this.suite].setup) {\n return true\n } else {\n return false\n }\n },\n teardownSuiteEnabled() {\n if (this.suite && this.suiteMap[this.suite].teardown) {\n return true\n } else {\n return false\n }\n },\n setupGroupEnabled() {\n if (\n this.suite &&\n this.group &&\n this.suiteMap[this.suite].groups[this.group].setup\n ) {\n return true\n } else {\n return false\n }\n },\n teardownGroupEnabled() {\n if (\n this.suite &&\n this.group &&\n this.suiteMap[this.suite].groups[this.group].teardown\n ) {\n return true\n } else {\n return false\n }\n },\n },\n created() {\n this.userInfo = JSON.parse(localStorage[\'script_runner__userinfo\'])\n this.initSuites()\n this.$emit(\'loaded\')\n },\n // Watch the suiteMap so we can recreate the suites and set the initial value\n watch: {\n suiteMap: {\n handler: function (newVal, oldVal) {\n this.updateSuiteMap()\n },\n deep: true, // Deep watcher because suiteMap is a nested Object\n },\n },\n methods: {\n updateSuiteMap() {\n this.suites = Object.keys(this.suiteMap)\n if (\n this.suiteMap[this.suite] == undefined ||\n this.suiteMap[this.suite].groups[this.group] == undefined\n ) {\n this.initSuites()\n } else {\n this.groups = Object.keys(this.suiteMap[this.suite].groups)\n this.scripts = this.suiteMap[this.suite].groups[this.group].scripts\n }\n },\n initSuites() {\n this.suites = Object.keys(this.suiteMap)\n this.suiteChanged(this.suites[0])\n },\n suiteChanged(event) {\n this.suite = event\n this.group = \'\'\n this.script = \'\'\n this.groups = Object.keys(this.suiteMap[event].groups)\n // Make the group default be the first group\n this.groupChanged(this.groups[0])\n },\n groupChanged(event) {\n this.group = event\n this.script = \'\'\n this.scripts = this.suiteMap[this.suite].groups[event].scripts\n // Make the script default be the first\n this.scriptChanged(this.scripts[0])\n },\n scriptChanged(event) {\n this.script = event\n },\n },\n}\n<\/script>\n\n<style lang="scss" scoped>\n#tr-container {\n padding-top: 0px;\n padding-bottom: 15px;\n padding-left: 0px;\n padding-right: 0px;\n}\n</style>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"268160fc01d756a2f787fbd62b8b10d3439b6bc6"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Gn=function(){return o},o}Gn();const zn={props:{suiteMap:{type:Object,required:!0},disableButtons:{type:Boolean,required:!0},filename:{type:String,required:!0}},data(){return Gn().f[0]++,Gn().s[0]++,{suites:[],groups:[],scripts:[],suite:"",group:"",script:"",options:["pauseOnError","manual","continueAfterError"],userInfo:{}}},computed:{checkedManualTooltip(){return Gn().f[1]++,Gn().s[1]++,this.filename.endsWith(".py")?(Gn().b[0][0]++,Gn().s[2]++,"Checked sets the RunningScript.manual variable to True"):(Gn().b[0][1]++,Gn().s[3]++,"Checked sets the $manual variable to true")},uncheckedManualTooltip(){return Gn().f[2]++,Gn().s[4]++,this.filename.endsWith(".py")?(Gn().b[1][0]++,Gn().s[5]++,"Unchecked sets the RunningScript.manual variable to False"):(Gn().b[1][1]++,Gn().s[6]++,"Unchecked sets the $manual variable to false")},setupSuiteEnabled(){return Gn().f[3]++,Gn().s[7]++,Gn().b[3][0]++,this.suite&&(Gn().b[3][1]++,this.suiteMap[this.suite].setup)?(Gn().b[2][0]++,Gn().s[8]++,!0):(Gn().b[2][1]++,Gn().s[9]++,!1)},teardownSuiteEnabled(){return Gn().f[4]++,Gn().s[10]++,Gn().b[5][0]++,this.suite&&(Gn().b[5][1]++,this.suiteMap[this.suite].teardown)?(Gn().b[4][0]++,Gn().s[11]++,!0):(Gn().b[4][1]++,Gn().s[12]++,!1)},setupGroupEnabled(){return Gn().f[5]++,Gn().s[13]++,Gn().b[7][0]++,this.suite&&(Gn().b[7][1]++,this.group)&&(Gn().b[7][2]++,this.suiteMap[this.suite].groups[this.group].setup)?(Gn().b[6][0]++,Gn().s[14]++,!0):(Gn().b[6][1]++,Gn().s[15]++,!1)},teardownGroupEnabled(){return Gn().f[6]++,Gn().s[16]++,Gn().b[9][0]++,this.suite&&(Gn().b[9][1]++,this.group)&&(Gn().b[9][2]++,this.suiteMap[this.suite].groups[this.group].teardown)?(Gn().b[8][0]++,Gn().s[17]++,!0):(Gn().b[8][1]++,Gn().s[18]++,!1)}},created(){Gn().f[7]++,Gn().s[19]++,this.userInfo=JSON.parse(localStorage["script_runner__userinfo"]),Gn().s[20]++,this.initSuites(),Gn().s[21]++,this.$emit("loaded")},watch:{suiteMap:{handler:function(e,n){Gn().f[8]++,Gn().s[22]++,this.updateSuiteMap()},deep:!0}},methods:{updateSuiteMap(){Gn().f[9]++,Gn().s[23]++,this.suites=Object.keys(this.suiteMap),Gn().s[24]++,Gn().b[11][0]++,void 0==this.suiteMap[this.suite]||(Gn().b[11][1]++,void 0==this.suiteMap[this.suite].groups[this.group])?(Gn().b[10][0]++,Gn().s[25]++,this.initSuites()):(Gn().b[10][1]++,Gn().s[26]++,this.groups=Object.keys(this.suiteMap[this.suite].groups),Gn().s[27]++,this.scripts=this.suiteMap[this.suite].groups[this.group].scripts)},initSuites(){Gn().f[10]++,Gn().s[28]++,this.suites=Object.keys(this.suiteMap),Gn().s[29]++,this.suiteChanged(this.suites[0])},suiteChanged(e){Gn().f[11]++,Gn().s[30]++,this.suite=e,Gn().s[31]++,this.group="",Gn().s[32]++,this.script="",Gn().s[33]++,this.groups=Object.keys(this.suiteMap[e].groups),Gn().s[34]++,this.groupChanged(this.groups[0])},groupChanged(e){Gn().f[12]++,Gn().s[35]++,this.group=e,Gn().s[36]++,this.script="",Gn().s[37]++,this.scripts=this.suiteMap[this.suite].groups[e].scripts,Gn().s[38]++,this.scriptChanged(this.scripts[0])},scriptChanged(e){Gn().f[13]++,Gn().s[39]++,this.script=e}}},qn=zn;t(2447);var jn=(0,f.A)(qn,Vn,Wn,!1,null,"2f0ccf94",null);const Yn=jn.exports;function Kn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptLogMessages.vue",n="a83506ff5734cb215d67cc52876e50a08832f205",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptLogMessages.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:1824}},4:{start:{line:1,column:206},end:{line:1,column:419}},5:{start:{line:1,column:783},end:{line:1,column:803}},6:{start:{line:1,column:1129},end:{line:1,column:1143}},7:{start:{line:1,column:1277},end:{line:1,column:1482}},8:{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:182},end:{line:1,column:183}},loc:{start:{line:1,column:205},end:{line:1,column:420}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:1,column:767},end:{line:1,column:768}},loc:{start:{line:1,column:782},end:{line:1,column:804}},line:1},3:{name:"(anonymous_3)",decl:{start:{line:1,column:1113},end:{line:1,column:1114}},loc:{start:{line:1,column:1128},end:{line:1,column:1144}},line:1},4:{name:"(anonymous_4)",decl:{start:{line:1,column:1253},end:{line:1,column:1254}},loc:{start:{line:1,column:1276},end:{line:1,column:1483}},line:1}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0},f:{0:0,1:0,2:0,3:0,4:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"a83506ff5734cb215d67cc52876e50a08832f205"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Kn=function(){return o},o}Kn(),Kn().s[0]++;var Zn=function(){Kn().f[0]++;var e=(Kn().s[1]++,this),n=(Kn().s[2]++,e._self._c);return Kn().s[3]++,n("div",[n("v-card",[n("v-card-title",[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return Kn().f[1]++,Kn().s[4]++,[n("div",e._g(e._b({},"div",l,!1),t),[n("v-btn",{staticClass:"mx-2",attrs:{icon:"","data-test":"download-log"},on:{click:e.downloadLog}},[n("v-icon",[e._v(" mdi-download ")])],1)],1)]}}])},[e._v(" "),n("span",[e._v(" Download Log ")])]),e._v("\n Script Messages\n "),n("v-spacer"),e._v(" "),n("v-select",{staticClass:"mr-2",staticStyle:{"max-width":"170px"},attrs:{dense:"","hide-details":"",outlined:"",items:e.messageOrderOptions,"data-test":"message-order"},model:{value:e.messageOrder,callback:function(n){Kn().f[2]++,Kn().s[5]++,e.messageOrder=n},expression:"messageOrder"}}),e._v(" "),n("v-spacer"),e._v(" "),n("v-text-field",{staticClass:"search",attrs:{label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","single-line":"","hide-details":"","data-test":"search-messages"},model:{value:e.search,callback:function(n){Kn().f[3]++,Kn().s[6]++,e.search=n},expression:"search"}}),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return Kn().f[4]++,Kn().s[7]++,[n("div",e._g(e._b({},"div",l,!1),t),[n("v-btn",{staticClass:"mx-2",attrs:{icon:"","data-test":"clear-log"},on:{click:e.clearLog}},[n("v-icon",[e._v(" mdi-delete ")])],1)],1)]}}])},[e._v(" "),n("span",[e._v(" Clear Log ")])])],1),e._v(" "),n("v-data-table",{staticStyle:{overflow:"auto"},attrs:{id:"script-log-messages",headers:e.headers,items:e.messages,search:e.search,"calculate-widths":"","disable-pagination":"","hide-default-footer":"",dense:"","data-test":"output-messages"}})],1)],1)},Xn=(Kn().s[8]++,[]);function Jn(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptLogMessages.vue",n="c058709ee21c11ae436f3c1bdf04aee1f1966899",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptLogMessages.vue",statementMap:{0:{start:{line:12,column:4},end:{line:17,column:5}},1:{start:{line:21,column:6},end:{line:21,column:34}},2:{start:{line:27,column:8},end:{line:27,column:25}},3:{start:{line:30,column:8},end:{line:30,column:34}},4:{start:{line:36,column:21},end:{line:36,column:79}},5:{start:{line:36,column:52},end:{line:36,column:67}},6:{start:{line:37,column:19},end:{line:39,column:8}},7:{start:{line:41,column:19},end:{line:41,column:46}},8:{start:{line:42,column:6},end:{line:42,column:43}},9:{start:{line:43,column:6},end:{line:46,column:7}},10:{start:{line:47,column:6},end:{line:47,column:18}},11:{start:{line:50,column:6},end:{line:60,column:10}},12:{start:{line:56,column:10},end:{line:56,column:28}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:11,column:2},end:{line:11,column:3}},loc:{start:{line:11,column:9},end:{line:18,column:3}},line:11},1:{name:"(anonymous_1)",decl:{start:{line:20,column:18},end:{line:20,column:19}},loc:{start:{line:20,column:48},end:{line:22,column:5}},line:20},2:{name:"(anonymous_2)",decl:{start:{line:26,column:6},end:{line:26,column:7}},loc:{start:{line:26,column:12},end:{line:28,column:7}},line:26},3:{name:"(anonymous_3)",decl:{start:{line:29,column:6},end:{line:29,column:7}},loc:{start:{line:29,column:17},end:{line:31,column:7}},line:29},4:{name:"(anonymous_4)",decl:{start:{line:35,column:4},end:{line:35,column:5}},loc:{start:{line:35,column:18},end:{line:48,column:5}},line:35},5:{name:"(anonymous_5)",decl:{start:{line:36,column:39},end:{line:36,column:40}},loc:{start:{line:36,column:52},end:{line:36,column:67}},line:36},6:{name:"(anonymous_6)",decl:{start:{line:49,column:14},end:{line:49,column:15}},loc:{start:{line:49,column:26},end:{line:61,column:5}},line:49},7:{name:"(anonymous_7)",decl:{start:{line:55,column:14},end:{line:55,column:15}},loc:{start:{line:55,column:26},end:{line:57,column:9}},line:55},8:{name:"(anonymous_8)",decl:{start:{line:58,column:15},end:{line:58,column:16}},loc:{start:{line:58,column:30},end:{line:60,column:9}},line:58}},branchMap:{},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0},b:{},inputSourceMap:{version:3,sources:["ScriptLogMessages.vue"],names:[],mappings:";AA+FA;;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",file:"ScriptLogMessages.vue",sourceRoot:"src/tools/ScriptRunner",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 2023, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <v-card>\n <v-card-title>\n <v-tooltip top>\n <template v-slot:activator="{ on, attrs }">\n <div v-on="on" v-bind="attrs">\n <v-btn\n icon\n class="mx-2"\n data-test="download-log"\n @click="downloadLog"\n >\n <v-icon> mdi-download </v-icon>\n </v-btn>\n </div>\n </template>\n <span> Download Log </span>\n </v-tooltip>\n Script Messages\n <v-spacer />\n <v-select\n dense\n hide-details\n outlined\n :items="messageOrderOptions"\n v-model="messageOrder"\n class="mr-2"\n style="max-width: 170px"\n data-test="message-order"\n />\n <v-spacer />\n <v-text-field\n v-model="search"\n label="Search"\n prepend-inner-icon="mdi-magnify"\n clearable\n outlined\n dense\n single-line\n hide-details\n class="search"\n data-test="search-messages"\n />\n\n <v-tooltip top>\n <template v-slot:activator="{ on, attrs }">\n <div v-on="on" v-bind="attrs">\n <v-btn icon class="mx-2" data-test="clear-log" @click="clearLog">\n <v-icon> mdi-delete </v-icon>\n </v-btn>\n </div>\n </template>\n <span> Clear Log </span>\n </v-tooltip>\n </v-card-title>\n <v-data-table\n id="script-log-messages"\n style="overflow: auto"\n :headers="headers"\n :items="messages"\n :search="search"\n calculate-widths\n disable-pagination\n hide-default-footer\n dense\n data-test="output-messages"\n />\n </v-card>\n </div>\n</template>\n\n<script>\nimport { format } from \'date-fns\'\n\nexport default {\n props: {\n value: {\n type: Array,\n required: true,\n },\n },\n data() {\n return {\n search: \'\',\n headers: [{ text: \'Message\', value: \'message\', sortable: false }],\n messageOrderOptions: [\'Newest on Top\', \'Newest on Bottom\'],\n messageOrder: \'Newest on Top\',\n }\n },\n watch: {\n messageOrder: function (newValue, oldValue) {\n this.$emit(\'sort\', newValue)\n },\n },\n computed: {\n messages: {\n get() {\n return this.value\n },\n set(value) {\n this.$emit(\'input\', value) // input is the default event when using v-model\n },\n },\n },\n methods: {\n downloadLog() {\n const output = this.messages.map((message) => message.message).join(\'\\n\')\n const blob = new Blob([output], {\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(\n \'download\',\n format(Date.now(), \'yyyy_MM_dd_HH_mm_ss\') + \'_sr_message_log.txt\',\n )\n link.click()\n },\n clearLog: function () {\n this.$dialog\n .confirm(\'Are you sure you want to clear the log?\', {\n okText: \'Clear\',\n cancelText: \'Cancel\',\n })\n .then((dialog) => {\n this.messages = []\n })\n .catch(function (err) {\n // Canceling the dialog forces catch and sets err to true\n })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"c058709ee21c11ae436f3c1bdf04aee1f1966899"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Jn=function(){return o},o}Jn();const Qn={props:{value:{type:Array,required:!0}},data(){return Jn().f[0]++,Jn().s[0]++,{search:"",headers:[{text:"Message",value:"message",sortable:!1}],messageOrderOptions:["Newest on Top","Newest on Bottom"],messageOrder:"Newest on Top"}},watch:{messageOrder:function(e,n){Jn().f[1]++,Jn().s[1]++,this.$emit("sort",e)}},computed:{messages:{get(){return Jn().f[2]++,Jn().s[2]++,this.value},set(e){Jn().f[3]++,Jn().s[3]++,this.$emit("input",e)}}},methods:{downloadLog(){Jn().f[4]++;const e=(Jn().s[4]++,this.messages.map((e=>(Jn().f[5]++,Jn().s[5]++,e.message))).join("\n")),n=(Jn().s[6]++,new Blob([e],{type:"text/plain"})),t=(Jn().s[7]++,document.createElement("a"));Jn().s[8]++,t.href=URL.createObjectURL(n),Jn().s[9]++,t.setAttribute("download",(0,u.GP)(Date.now(),"yyyy_MM_dd_HH_mm_ss")+"_sr_message_log.txt"),Jn().s[10]++,t.click()},clearLog:function(){Jn().f[6]++,Jn().s[11]++,this.$dialog.confirm("Are you sure you want to clear the log?",{okText:"Clear",cancelText:"Cancel"}).then((e=>{Jn().f[7]++,Jn().s[12]++,this.messages=[]})).catch((function(e){Jn().f[8]++}))}}},et=Qn;var nt=(0,f.A)(et,Zn,Xn,!1,null,null,null);const tt=nt.exports;var lt=function(){var e=this,n=e._self._c;return n("div",{ref:"bar",style:e.computedStyle},[n("v-card",{attrs:{"min-height":e.height,"min-width":e.width}},[n("v-system-bar",[n("div",{directives:[{name:"show",rawName:"v-show",value:0!==e.errors.length,expression:"errors.length !== 0"}]},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"error-graph-icon"},on:{click:function(n){e.errorDialog=!0}}},[e._v("\n mdi-alert\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Errors ")])])],1),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"edit-screen-icon"},on:{click:e.openEdit}},[e._v("\n mdi-pencil\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Edit Screen ")])]),e._v(" "),e.fixFloated?e._e():n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"float-screen-icon"},on:{click:e.floatScreen}},[e._v("\n "+e._s(e.floated?"mdi-balloon":"mdi-view-grid-outline")+"\n ")])],1)]}}],null,!1,4011884781)},[e._v(" "),n("span",[e._v(" "+e._s(e.floated?"Unfloat Screen":"Float Screen")+" ")])]),e._v(" "),e.floated?n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"up-screen-icon"},on:{click:e.upScreen}},[e._v("\n mdi-arrow-up\n ")])],1)]}}],null,!1,3296657168)},[e._v(" "),n("span",[e._v(" Move Screen Up ")])]):e._e(),e._v(" "),e.floated&&e.zIndex>e.minZ?n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"down-screen-icon"},on:{click:e.downScreen}},[e._v("\n mdi-arrow-down\n ")])],1)]}}],null,!1,1167902535)},[e._v(" "),n("span",[e._v(" Move Screen Down ")])]):e._e(),e._v(" "),n("v-spacer"),e._v(" "),n("span",[e._v(e._s(e.target)+" "+e._s(e.screen))]),e._v(" "),n("v-spacer"),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}],attrs:{"data-test":"minimize-screen-icon"},on:{click:e.minMaxTransition}},[e._v("\n mdi-window-minimize\n ")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.expand,expression:"!expand"}],attrs:{"data-test":"maximize-screen-icon"},on:{click:e.minMaxTransition}},[e._v("\n mdi-window-maximize\n ")])],1)]}}])},[e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}]},[e._v(" Minimize Screen ")]),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:!e.expand,expression:"!expand"}]},[e._v(" Maximize Screen ")])]),e._v(" "),e.showClose?n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-screen-icon"},on:{click:function(n){return e.$emit("close-screen")}}},[e._v("\n mdi-close-box\n ")])],1)]}}],null,!1,1921143701)},[e._v(" "),n("span",[e._v(" Close Screen ")])]):e._e()],1),e._v(" "),e.editDialog?e._e():n("v-expand-transition",[n("div",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}],ref:"screen",staticClass:"pa-1",staticStyle:{position:"relative"}},[n("v-overlay",{staticStyle:{"pointer-events":"none"},attrs:{value:0!==e.errors.length,opacity:"0.8",absolute:""}}),e._v(" "),n("vertical-widget",e._g({key:e.screenKey,attrs:{widgets:e.layoutStack[0].widgets}},e.$listeners))],1)])],1),e._v(" "),e.editDialog?n("edit-screen-dialog",{attrs:{target:e.target,screen:e.screen,definition:e.currentDefinition,keywords:e.keywords,errors:e.errors},on:{save:function(n){return e.saveEdit(n)},cancel:function(n){return e.cancelEdit()},delete:function(n){return e.deleteScreen()}},model:{value:e.editDialog,callback:function(n){e.editDialog=n},expression:"editDialog"}}):e._e(),e._v(" "),n("v-dialog",{attrs:{"max-width":"600"},model:{value:e.errorDialog,callback:function(n){e.errorDialog=n},expression:"errorDialog"}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" Screen: "+e._s(e.target)+" "+e._s(e.screen)+" Errors ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card",[n("v-textarea",{staticClass:"errors",attrs:{readonly:"",rows:"13",value:e.error}})],1)],1)],1)},it=[],st=t(3069),ot=t(1649),at=t(5485),rt=t.n(at),ct=t(9677),ut=t.n(ct),dt=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{persistent:"",width:"75vw"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("div",{staticClass:"mx-2"},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"delete-screen-icon"},on:{click:e.deleteScreen}},[e._v("\n mdi-delete\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Delete Screen ")])])],1),e._v(" "),n("v-spacer"),e._v(" "),n("span",[e._v(" Edit Screen: "+e._s(e.target)+" "+e._s(e.screen)+" ")]),e._v(" "),n("v-spacer"),e._v(" "),n("div",{staticClass:"mx-2"},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"download-screen-icon"},on:{click:e.downloadScreen}},[e._v("\n mdi-download\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Download Screen ")])])],1)],1),e._v(" "),n("v-card-text",[n("v-row",{staticClass:"mt-3"},[e._v(" Upload a screen file. ")]),e._v(" "),n("v-row",{attrs:{"no-gutters":"",align:"center"}},[n("v-btn",{staticClass:"mr-3",attrs:{disabled:!e.file,color:"primary","data-test":"edit-screen-load"},on:{click:e.loadFile}},[e._v("\n Load\n ")]),e._v(" "),n("v-file-input",{attrs:{"truncate-length":"15",accept:".txt",label:"Click to select .txt screen file."},model:{value:e.file,callback:function(n){e.file=n},expression:"file"}})],1),e._v(" "),n("v-row",{staticClass:"mb-2"},[e._v(" Edit the screen definition. ")]),e._v(" "),n("v-row",{staticClass:"mb-2"},[n("pre",{ref:"editor",staticClass:"editor",on:{contextmenu:function(n){return n.preventDefault(),e.showContextMenu.apply(null,arguments)}}}),e._v(" "),n("v-menu",{attrs:{"position-x":e.menuX,"position-y":e.menuY,absolute:"","offset-y":""},model:{value:e.contextMenu,callback:function(n){e.contextMenu=n},expression:"contextMenu"}},[n("v-list",[n("v-list-item",{attrs:{link:""}},[n("v-list-item-title",{on:{click:e.openDocumentation}},[e._v("\n "+e._s(e.docsKeyword)+" documentation\n ")])],1)],1)],1)],1),e._v(" "),e._l(e.editErrors,(function(t,l){return n("v-row",{key:l,staticClass:"my-3"},[n("span",{staticClass:"red--text",domProps:{textContent:e._s(t)}})])})),e._v(" "),n("v-row",[n("span",[e._v("Ctrl-space brings up autocomplete. Right click keywords for\n documentation.")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:"","data-test":"edit-screen-cancel"},on:{click:function(n){return e.$emit("cancel")}}},[e._v("\n Cancel\n ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary","data-test":"edit-screen-save"},on:{click:function(n){e.$emit("save",e.editor.getValue())}}},[e._v("\n Save\n ")])],1)],2)],1)],1)},mt=[],At=(t(1136),t(814));class pt{constructor(){(0,At.A)(this,"getCompletions",(async function(e,n,t,l,i){var s=n.getLine(t.row),o=s.slice(0,t.column),a=o.trimStart().split(/ (?![^<]*>)/),r=this.autocompleteData;a.length>1&&(r=r.find((e=>e.caption===a[0])));var c={},u=!0;if(r&&r["params"]){r["params"].length==a.length-1&&(u=!1);var d=r["params"][a.length-2];if(d["Target name"]){var m=await this.api.get_target_names();r=m.reduce(((e,n)=>(e[n]=1,e)),{})}else if(d["Packet name"]){var A=a[a.length-2],p=await this.api.get_all_tlm(A);r=p.reduce(((e,n)=>(e[n.packet_name]=n.description,e)),{})}else if(d["Item name"]){A=a[a.length-3];var h=a[a.length-2];h=await this.api.get_tlm(A,h);r=h.items.reduce(((e,n)=>(e[n.name]=n.description,e)),{})}else r=d;c=Object.keys(r||{}).map((e=>{var n={value:e+(u?" ":""),command:u&&"startAutocomplete"};return"string"===typeof r[e]&&(n["meta"]=r[e]),n}))}else c=r;i(null,c)})),r.A.get("/openc3-api/autocomplete/data/screen").then((e=>{this.autocompleteData=e.data})),this.api=new P.x}}const ht={props:{value:Boolean,target:{type:String,default:""},screen:{type:String,default:""},definition:{type:String,default:""},keywords:{type:Array,default:()=>[]},errors:{type:Array,default:()=>[]}},data(){return{file:null,docsKeyword:"",contextMenu:!1,menuX:0,menuY:0}},computed:{editErrors:function(){if(""===this.definition&&!this.file)return["Input can not be blank."];if(0!==this.errors.length){let e=new Set,n=[];for(const t of this.errors){if(e.has(t.message))continue;let l=`At ${t.lineNumber}: (${t.line}) ${t.message}.`;t.usage&&(l+=` Usage: ${t.usage}`),n.push(l),e.add(t.message)}return n}return[]},show:{get(){return this.value},set(e){this.$emit("input",e)}}},mounted:function(){this.editor=c.edit(this.$refs.editor),this.editor.setTheme("ace/theme/twilight");const e=this.buildScreenMode();this.editor.session.setMode(new e),this.editor.session.setTabSize(2),this.editor.session.setUseWrapMode(!0),this.editor.$blockScrolling=1/0,this.editor.setOption("enableBasicAutocompletion",!0),this.editor.setOption("enableLiveAutocompletion",!0),this.editor.completers=[new pt],this.editor.setHighlightActiveLine(!1),this.editor.setValue(this.definition),this.editor.clearSelection(),this.editor.focus()},beforeDestroy(){this.editor.destroy(),this.editor.container.remove()},methods:{showContextMenu:function(e){this.menuX=e.pageX,this.menuY=e.pageY;var n=this.editor.getCursorPosition(),t=this.editor.session.getTokenAt(n.row,n.column);if(t){var l=t.value.trim();l.includes(" ")?this.docsKeyword=l.split(" ")[0]:this.docsKeyword=l,this.contextMenu=!0}},openDocumentation(){window.open(`${window.location.origin}/tools/staticdocs/docs/configuration/telemetry-screens#${this.docsKeyword.toLowerCase()}`,"_blank")},buildScreenMode(){var e=c.require("ace/lib/oop"),n=c.require("ace/mode/text_highlight_rules").TextHighlightRules;let t=this.keywords.join("|");var l=function(){this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"\\b\\d+(?:\\.\\d+)?\\b"},{token:"keyword",regex:new RegExp(`^\\s*(${t})\\b`)}]},this.normalizeRules()};e.inherits(l,n);var i=function(){this.HighlightRules=l},s=c.require("ace/mode/text").Mode;return e.inherits(i,s),function(){this.$id="ace/mode/openc3"}.call(i.prototype),i},downloadScreen:function(){const e=new Blob([this.editor.getValue()],{type:"text/plain"}),n=document.createElement("a");n.href=URL.createObjectURL(e),n.setAttribute("download",`${this.screen.toLowerCase()}.txt`),n.click()},loadFile:function(){const e=new FileReader;e.readAsText(this.file);const n=this;e.onload=function(){n.editor.setValue(e.result),n.file=null}},deleteScreen:function(){this.$dialog.confirm("Are you sure you want to delete this screen?!",{okText:"Delete",cancelText:"Cancel"}).then((e=>{this.$emit("delete")}))}}},vt=ht;t(2605),t(7613);var ft=(0,f.A)(vt,dt,mt,!1,null,"2f59da98",null);const gt=ft.exports,Ct=20,bt=t(7448);bt.keys().forEach((e=>{const n=bt(e),t=rt()(ut()(e.split("/").pop().replace(/\.\w+$/,"")));ot["default"].component(t,n.default||n)}));const _t={components:{EditScreenDialog:gt},props:{target:{type:String,default:""},screen:{type:String,default:""},definition:{type:String,default:""},keywords:{type:Array,default:()=>[]},initialFloated:{type:Boolean,default:!1},initialTop:{type:Number,default:0},initialLeft:{type:Number,default:0},initialZ:{type:Number,default:0},minZ:{type:Number,default:0},fixFloated:{type:Boolean,default:!1},count:{type:Number,default:0},showClose:{type:Boolean,default:!0},timeZone:{type:String,default:"local"}},data(){return{api:null,backup:"",currentDefinition:this.definition,editDialog:!1,expand:!0,configParser:null,configError:!1,currentLayout:null,layoutStack:[],namedWidgets:{},dynamicWidgets:[],width:null,height:null,staleTime:30,cacheTimeout:.1,globalSettings:[],substitute:!1,original_target_name:null,force_substitute:!1,pollingPeriod:1,errors:[],errorDialog:!1,screenKey:null,dragX:0,dragY:0,floated:this.initialFloated,top:this.initialTop,left:this.initialLeft,zIndex:this.initialZ,changeCounter:0,screenItems:[],screenValues:{},updateCounter:0}},watch:{count:{handler(e,n){this.currentDefinition=this.definition,this.rerender()}}},computed:{error:function(){if(this.errorDialog&&this.errors.length>0){let e=new Set,n="";for(const t of this.errors){if(e.has(t.message))continue;let l=`${t.time}: (${t.type}) ${t.message}\n`;n+=l,e.add(t.message)}return n}return null},computedStyle(){let e={};return this.floated&&(e["position"]="absolute",e["top"]=this.top+"px",e["left"]=this.left+"px"),e}},errorCaptured(e,n,t){return this.errors.length<Ct&&(e.usage?this.errors.push({type:"usage",message:e.message,usage:e.usage,line:e.line,lineNumber:e.lineNumber,time:(new Date).getTime()}):this.errors.push({type:"error",message:e,time:(new Date).getTime()}),this.configError=!0),!1},created(){this.api=new P.x,this.configParser=new st.R,this.parseDefinition(),this.screenKey=Math.floor(1e6*Math.random())},mounted(){this.updateRefreshInterval(),this.floated&&(this.$refs.bar.onmousedown=this.dragMouseDown,this.$refs.bar.parentElement.parentElement.style="z-index: "+this.zIndex)},destroyed(){null!=this.updater&&(clearInterval(this.updater),this.updater=null)},methods:{open(e,n){this.$parent.showScreen(e,n)},close(e,n){this.$parent.closeScreenByName(e,n)},closeAll(){this.$parent.closeAll()},clearErrors:function(){this.errors=[],this.configError=!1},updateRefreshInterval:function(){let e=1e3*this.pollingPeriod;this.updater&&clearInterval(this.updater),this.updater=setInterval((()=>{this.update()}),e)},parseDefinition:function(){if(this.clearErrors(),this.namedWidgets={},this.layoutStack=[],this.dynamicWidgets=[],this.layoutStack.push({type:"VerticalWidget",parameters:[],widgets:[]}),this.currentLayout=this.layoutStack[this.layoutStack.length-1],this.configParser.parse_string(this.currentDefinition,"",!1,!0,((e,n,t,l)=>{if(e)switch(e){case"SCREEN":this.configParser.verify_num_parameters(3,4,`${e} <Width or AUTO> <Height or AUTO> <Polling Period>`),this.width=parseInt(n[0]),this.height=parseInt(n[1]),this.pollingPeriod=parseFloat(n[2]);break;case"END":this.configParser.verify_num_parameters(0,0,`${e}`),this.layoutStack.pop(),this.currentLayout=this.layoutStack[this.layoutStack.length-1];break;case"STALE_TIME":this.configParser.verify_num_parameters(1,1,`${e} <Time (s)>`),this.staleTime=parseInt(n[0]);break;case"SETTING":case"SUBSETTING":const i=this.currentLayout.widgets[this.currentLayout.widgets.length-1]??this.currentLayout;i.settings.push(n);break;case"GLOBAL_SETTING":case"GLOBAL_SUBSETTING":this.globalSettings.push(n);break;default:this.processWidget(e,n,t,l);break}})),"undefined"===typeof this.layoutStack[0]){let e=[],n=[];for(const t of this.dynamicWidgets)e.push(t.name),n.push(t.lineNumber);this.errors.length<Ct&&(this.errors.push({type:"usage",message:`Unknown widget! Are these widgets: ${e.join(",")}?`,lineNumber:n.join(","),time:(new Date).getTime()}),this.configError=!0),this.layoutStack[0]={type:"VerticalWidget",parameters:[],widgets:[]}}else this.applyGlobalSettings(this.layoutStack[0].widgets)},getNamedWidget:function(e){return this.namedWidgets[e]},get_named_widget:function(e){return this.namedWidgets[e]},setNamedWidget:function(e,n){this.namedWidgets[e]=n},openEdit:function(){this.backup=this.currentDefinition.repeat(1),this.editDialog=!0},upScreen:function(){this.zIndex+=1,this.$refs.bar.parentElement.parentElement.style="z-index: "+this.zIndex,this.$emit("drag-screen",[this.floated,this.top,this.left,this.zIndex])},downScreen:function(){this.zIndex>this.minZ&&(this.zIndex-=1,this.$refs.bar.parentElement.parentElement.style="z-index: "+this.zIndex,this.$emit("drag-screen",[this.floated,this.top,this.left,this.zIndex]))},floatScreen:function(){if(this.floated)this.$refs.bar.onmousedown=null,this.$refs.bar.parentElement.parentElement.style="z-index: 0",this.floated=!1,this.$emit("unfloat-screen",[this.floated,this.top,this.left,this.zIndex]);else{let e=this.$refs.bar.parentElement.parentElement.parentElement.getBoundingClientRect(),n=this.$refs.bar.getBoundingClientRect();this.top=n.top-e.top-5,this.left=n.left-e.left-5,this.$refs.bar.onmousedown=this.dragMouseDown,this.$refs.bar.parentElement.parentElement.style="z-index: "+this.zIndex,this.floated=!0,this.$emit("float-screen",[this.floated,this.top,this.left,this.zIndex])}},dragMouseDown:function(e){e=e||window.event,e.preventDefault(),this.dragX=e.clientX,this.dragY=e.clientY,document.onmouseup=this.closeDragElement,document.onmousemove=this.elementDrag},elementDrag:function(e){e=e||window.event,e.preventDefault();let n=this.dragX-e.clientX,t=this.dragY-e.clientY;this.dragX=e.clientX,this.dragY=e.clientY,this.top=this.$refs.bar.offsetTop-t,this.left=this.$refs.bar.offsetLeft-n,this.$emit("drag-screen",[this.floated,this.top,this.left,this.zIndex])},closeDragElement:function(){document.onmouseup=null,document.onmousemove=null},rerender:function(){this.parseDefinition(),this.updateRefreshInterval(),this.screenKey=Math.floor(1e6*Math.random()),this.$nextTick((function(){this.clearErrors(),this.$emit("edit-screen")}))},cancelEdit:function(){this.file=null,this.editDialog=!1,this.currentDefinition=this.backup,this.rerender()},saveEdit:function(e){this.editDialog=!1,this.currentDefinition=e,this.rerender(),this.$nextTick((function(){r.A.post("/openc3-api/screen/",{data:{scope:window.openc3Scope,target:this.target,screen:this.screen,text:this.currentDefinition}},0)}))},deleteScreen:function(){this.editDialog=!1,r.A.delete(`/openc3-api/screen/${this.target}/${this.screen}`).then((e=>{this.$emit("delete-screen")}))},minMaxTransition:function(){this.expand=!this.expand,this.$emit("min-max-screen")},processWidget:function(e,n,t,l){var i=null;"NAMED_WIDGET"===e&&(this.configParser.verify_num_parameters(2,null,`${e} <Widget Name> <Widget Type> <Widget Settings... (optional)>`),i=n[0].toUpperCase(),e=n[1].toUpperCase(),n=n.slice(2,n.length));const s=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()+"Widget";let o=[];if(null!==i&&o.push(["NAMED_WIDGET",i,this]),"VERTICAL"===e||"VERTICALBOX"===e||"HORIZONTAL"===e||"HORIZONTALBOX"===e||"MATRIXBYCOLUMNS"===e||"TABBOOK"===e||"TABITEM"===e||"CANVAS"===e||"RADIOGROUP"===e||"SCROLLWINDOW"===e){const e={type:s,parameters:n,settings:o,widgets:[]};this.layoutStack.push(e),this.currentLayout.widgets.push(e),this.currentLayout=e}else if(o.push(["__SCREEN__",this]),ot["default"].options.components[s])this.currentLayout.widgets.push({type:s,target:this.target,parameters:n,settings:o,line:t,lineNumber:l});else{let e={type:"DynamicWidget",target:this.target,parameters:n,settings:o,name:s,line:t,lineNumber:l};this.currentLayout.widgets.push(e),this.dynamicWidgets.push(e)}},applyGlobalSettings:function(e){e.forEach((e=>{this.globalSettings.forEach((n=>{e.type.toLowerCase()===n[0].toLowerCase()+"widget"&&e.settings.push(n.slice(1))})),e.widgets&&this.applyGlobalSettings(e.widgets)}))},update:function(){0!==this.screenItems.length&&!1===this.configError&&this.api.get_tlm_values(this.screenItems,this.staleTime,this.cacheTimeout).then((e=>{this.clearErrors(),this.updateValues(e)})).catch((e=>{let n=JSON.stringify(e,null,2);n.includes("no response received")||(this.configError=!0),this.errors.find((e=>e.message===n))||this.errors.length<Ct&&this.errors.push({type:"error",message:n,time:(new Date).getTime()})}))},updateValues:function(e){this.updateCounter+=1;for(let n=0;n<e.length;n++)e[n].push(this.updateCounter),ot["default"].set(this.screenValues,this.screenItems[n],e[n])},addItem:function(e){this.screenItems.push(e),ot["default"].set(this.screenValues,e,[null,null,0])},deleteItem:function(e){let n=this.screenItems.indexOf(e);this.screenItems.splice(n,1)}}},yt=_t;t(1958);var wt=(0,f.A)(yt,lt,it,!1,null,"043a06b8",null);const xt=wt.exports;function kt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/utilities.js",n="bc429c989ff6c563268021b0e1f9fc50ed29bd64",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/utilities.js",statementMap:{0:{start:{line:25,column:20},end:{line:27,column:1}},1:{start:{line:26,column:2},end:{line:26,column:61}},2:{start:{line:29,column:28},end:{line:31,column:1}},3:{start:{line:30,column:2},end:{line:30,column:57}},4:{start:{line:34,column:16},end:{line:44,column:1}},5:{start:{line:35,column:2},end:{line:43,column:8}},6:{start:{line:36,column:16},end:{line:36,column:28}},7:{start:{line:37,column:4},end:{line:41,column:5}},8:{start:{line:38,column:6},end:{line:38,column:28}},9:{start:{line:40,column:6},end:{line:40,column:26}},10:{start:{line:42,column:4},end:{line:42,column:17}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:25,column:20},end:{line:25,column:21}},loc:{start:{line:25,column:30},end:{line:27,column:1}},line:25},1:{name:"(anonymous_1)",decl:{start:{line:29,column:28},end:{line:29,column:29}},loc:{start:{line:29,column:38},end:{line:31,column:1}},line:29},2:{name:"(anonymous_2)",decl:{start:{line:34,column:16},end:{line:34,column:17}},loc:{start:{line:34,column:35},end:{line:44,column:1}},line:34},3:{name:"(anonymous_3)",decl:{start:{line:35,column:22},end:{line:35,column:23}},loc:{start:{line:35,column:40},end:{line:43,column:3}},line:35}},branchMap:{0:{loc:{start:{line:37,column:4},end:{line:41,column:5}},type:"if",locations:[{start:{line:37,column:4},end:{line:41,column:5}},{start:{line:39,column:11},end:{line:41,column:5}}],line:37}},s:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0},f:{0:0,1:0,2:0,3:0},b:{0:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"bc429c989ff6c563268021b0e1f9fc50ed29bd64"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return kt=function(){return o},o}kt(),kt().s[0]++;const St=e=>(kt().f[0]++,kt().s[1]++,r.A.get(`/openc3-api/autocomplete/keywords/${e}`));kt().s[2]++;const Tt=e=>(kt().f[1]++,kt().s[3]++,r.A.get(`/openc3-api/autocomplete/data/${e}`));kt().s[4]++;const Et=(e,n)=>(kt().f[2]++,kt().s[5]++,e.reduce(((e,t)=>{kt().f[3]++;const l=(kt().s[6]++,n(t));return kt().s[7]++,e[l]?(kt().b[0][0]++,kt().s[8]++,e[l].push(t)):(kt().b[0][1]++,kt().s[9]++,e[l]=[t]),kt().s[10]++,e}),{}));function Mt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js",n="ecc6375a663de1a5d960f407841d9f24b4160839",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/packetCompleter.js",statementMap:{0:{start:{line:25,column:32},end:{line:31,column:1}},1:{start:{line:27,column:17},end:{line:27,column:32}},2:{start:{line:28,column:18},end:{line:28,column:35}},3:{start:{line:29,column:17},end:{line:29,column:34}},4:{start:{line:30,column:2},end:{line:30,column:59}},5:{start:{line:39,column:4},end:{line:39,column:32}},6:{start:{line:40,column:4},end:{line:40,column:30}},7:{start:{line:42,column:4},end:{line:45,column:6}},8:{start:{line:43,column:6},end:{line:43,column:74}},9:{start:{line:44,column:6},end:{line:44,column:32}},10:{start:{line:46,column:4},end:{line:49,column:6}},11:{start:{line:47,column:6},end:{line:47,column:43}},12:{start:{line:48,column:6},end:{line:48,column:25}},13:{start:{line:52,column:19},end:{line:74,column:3}},14:{start:{line:53,column:18},end:{line:53,column:20}},15:{start:{line:54,column:29},end:{line:57,column:5}},16:{start:{line:58,column:4},end:{line:62,column:5}},17:{start:{line:59,column:46},end:{line:59,column:75}},18:{start:{line:61,column:6},end:{line:61,column:37}},19:{start:{line:64,column:4},end:{line:73,column:6}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:25,column:32},end:{line:25,column:33}},loc:{start:{line:25,column:42},end:{line:31,column:1}},line:25},1:{name:"(anonymous_1)",decl:{start:{line:34,column:2},end:{line:34,column:3}},loc:{start:{line:38,column:4},end:{line:50,column:3}},line:38},2:{name:"(anonymous_2)",decl:{start:{line:36,column:24},end:{line:36,column:25}},loc:{start:{line:36,column:30},end:{line:36,column:32}},line:36},3:{name:"(anonymous_3)",decl:{start:{line:37,column:31},end:{line:37,column:32}},loc:{start:{line:37,column:37},end:{line:37,column:39}},line:37},4:{name:"(anonymous_4)",decl:{start:{line:42,column:27},end:{line:42,column:28}},loc:{start:{line:42,column:41},end:{line:45,column:5}},line:42},5:{name:"(anonymous_5)",decl:{start:{line:46,column:35},end:{line:46,column:36}},loc:{start:{line:46,column:49},end:{line:49,column:5}},line:46},6:{name:"(anonymous_6)",decl:{start:{line:52,column:19},end:{line:52,column:20}},loc:{start:{line:52,column:74},end:{line:74,column:3}},line:52},7:{name:"(anonymous_7)",decl:{start:{line:59,column:35},end:{line:59,column:36}},loc:{start:{line:59,column:46},end:{line:59,column:75}},line:59}},branchMap:{0:{loc:{start:{line:36,column:4},end:{line:36,column:32}},type:"default-arg",locations:[{start:{line:36,column:24},end:{line:36,column:32}}],line:36},1:{loc:{start:{line:37,column:4},end:{line:37,column:39}},type:"default-arg",locations:[{start:{line:37,column:31},end:{line:37,column:39}}],line:37},2:{loc:{start:{line:58,column:4},end:{line:62,column:5}},type:"if",locations:[{start:{line:58,column:4},end:{line:62,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:58}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0},b:{0:[0],1:[0],2:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"ecc6375a663de1a5d960f407841d9f24b4160839"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Mt=function(){return o},o}Mt(),Mt().s[0]++;const It=e=>{Mt().f[0]++;const n=(Mt().s[1]++,"(^|[{\\(\\s])"),t=(Mt().s[2]++,"[\\s\\(]f?['\"]"),l=(Mt().s[3]++,"(\\S+\\s?){0,3}");return Mt().s[4]++,new RegExp(`${n}${e}${t}${l}$`)};class Dt{constructor(e,n=(Mt().b[0][0]++,()=>{Mt().f[2]++}),t=(Mt().b[1][0]++,()=>{Mt().f[3]++})){(0,At.A)(this,"getCompletions",(Mt().s[13]++,function(e,n,t,l,i){Mt().f[6]++;let s=(Mt().s[14]++,[]);const o=(Mt().s[15]++,n.doc.$lines[t.row].slice(0,t.column));Mt().s[16]++,this.keywordExpressions.some((e=>(Mt().f[7]++,Mt().s[17]++,o.match(e))))?(Mt().b[2][0]++,Mt().s[18]++,s=this.autocompleteData):Mt().b[2][1]++,Mt().s[19]++,i(null,[...s])})),Mt().f[1]++,Mt().s[5]++,this.keywordExpressions=[],Mt().s[6]++,this.autocompleteData=[],Mt().s[7]++,St(e).then((e=>{Mt().f[4]++,Mt().s[8]++,this.keywordExpressions=e.data.map(It),Mt().s[9]++,t()})),Mt().s[10]++,Tt(e).then((e=>{Mt().f[5]++,Mt().s[11]++,this.autocompleteData=e.data,Mt().s[12]++,n()}))}}function Rt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/cmdCompleter.js",n="131d227344c79c3d036a025c6ea368aeadc2b775",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/cmdCompleter.js",statementMap:{0:{start:{line:27,column:4},end:{line:27,column:16}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:26,column:2},end:{line:26,column:3}},loc:{start:{line:26,column:16},end:{line:28,column:3}},line:26}},branchMap:{},s:{0:0},f:{0:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"131d227344c79c3d036a025c6ea368aeadc2b775"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Rt=function(){return o},o}Rt();class $t extends Dt{constructor(){Rt().f[0]++,Rt().s[0]++,super("cmd")}}function Ot(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js",n="25619d346e32a533485beb72a7572c19417db8fc",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/tlmCompleter.js",statementMap:{0:{start:{line:27,column:4},end:{line:53,column:6}},1:{start:{line:30,column:6},end:{line:45,column:12}},2:{start:{line:31,column:27},end:{line:31,column:60}},3:{start:{line:32,column:25},end:{line:32,column:67}},4:{start:{line:33,column:28},end:{line:37,column:9}},5:{start:{line:39,column:8},end:{line:43,column:9}},6:{start:{line:40,column:10},end:{line:40,column:46}},7:{start:{line:42,column:10},end:{line:42,column:44}},8:{start:{line:44,column:8},end:{line:44,column:21}},9:{start:{line:46,column:6},end:{line:52,column:8}},10:{start:{line:47,column:8},end:{line:51,column:9}},11:{start:{line:57,column:19},end:{line:77,column:3}},12:{start:{line:58,column:18},end:{line:58,column:20}},13:{start:{line:59,column:29},end:{line:62,column:5}},14:{start:{line:63,column:4},end:{line:74,column:5}},15:{start:{line:64,column:46},end:{line:64,column:75}},16:{start:{line:66,column:26},end:{line:68,column:7}},17:{start:{line:67,column:24},end:{line:67,column:61}},18:{start:{line:69,column:6},end:{line:73,column:7}},19:{start:{line:70,column:8},end:{line:70,column:53}},20:{start:{line:72,column:8},end:{line:72,column:30}},21:{start:{line:76,column:4},end:{line:76,column:27}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:26,column:2},end:{line:26,column:3}},loc:{start:{line:26,column:16},end:{line:54,column:3}},line:26},1:{name:"(anonymous_1)",decl:{start:{line:27,column:17},end:{line:27,column:18}},loc:{start:{line:27,column:23},end:{line:53,column:5}},line:27},2:{name:"(anonymous_2)",decl:{start:{line:30,column:60},end:{line:30,column:61}},loc:{start:{line:30,column:78},end:{line:45,column:7}},line:30},3:{name:"(anonymous_3)",decl:{start:{line:46,column:61},end:{line:46,column:62}},loc:{start:{line:46,column:77},end:{line:52,column:7}},line:46},4:{name:"(anonymous_4)",decl:{start:{line:57,column:19},end:{line:57,column:20}},loc:{start:{line:57,column:74},end:{line:77,column:3}},line:57},5:{name:"(anonymous_5)",decl:{start:{line:64,column:35},end:{line:64,column:36}},loc:{start:{line:64,column:46},end:{line:64,column:75}},line:64},6:{name:"(anonymous_6)",decl:{start:{line:67,column:8},end:{line:67,column:9}},loc:{start:{line:67,column:24},end:{line:67,column:61}},line:67}},branchMap:{0:{loc:{start:{line:39,column:8},end:{line:43,column:9}},type:"if",locations:[{start:{line:39,column:8},end:{line:43,column:9}},{start:{line:41,column:15},end:{line:43,column:9}}],line:39},1:{loc:{start:{line:63,column:4},end:{line:74,column:5}},type:"if",locations:[{start:{line:63,column:4},end:{line:74,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:63},2:{loc:{start:{line:69,column:6},end:{line:73,column:7}},type:"if",locations:[{start:{line:69,column:6},end:{line:73,column:7}},{start:{line:71,column:13},end:{line:73,column:7}}],line:69}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0},b:{0:[0,0],1:[0,0],2:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"25619d346e32a533485beb72a7572c19417db8fc"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Ot=function(){return o},o}Ot();class Nt extends Dt{constructor(){Ot().f[0]++,Ot().s[0]++,super("tlm",(()=>{Ot().f[1]++,Ot().s[1]++,this.groupedPacketData=this.autocompleteData.reduce(((e,n)=>{Ot().f[2]++;const t=(Ot().s[2]++,n.caption.match(/\S+\s\S+/)[0]),l=(Ot().s[3]++,n.snippet.replace(`${t} `,"")),i=(Ot().s[4]++,{caption:l,snippet:l,meta:"item"});return Ot().s[5]++,e[t]?(Ot().b[0][0]++,Ot().s[6]++,e[t].push(i)):(Ot().b[0][1]++,Ot().s[7]++,e[t]=[i]),Ot().s[8]++,e}),{}),Ot().s[9]++,this.packets=Object.keys(this.groupedPacketData).map((e=>(Ot().f[3]++,Ot().s[10]++,{caption:e,snippet:e,meta:"packet"})))})),(0,At.A)(this,"getCompletions",(Ot().s[11]++,function(e,n,t,l,i){Ot().f[4]++;let s=(Ot().s[12]++,[]);const o=(Ot().s[13]++,n.doc.$lines[t.row].slice(0,t.column));if(Ot().s[14]++,this.keywordExpressions.some((e=>(Ot().f[5]++,Ot().s[15]++,o.match(e))))){Ot().b[1][0]++;const e=(Ot().s[16]++,Object.keys(this.groupedPacketData).find((e=>(Ot().f[6]++,Ot().s[17]++,o.includes(e)))));Ot().s[18]++,e?(Ot().b[2][0]++,Ot().s[19]++,s=this.groupedPacketData[e]):(Ot().b[2][1]++,Ot().s[20]++,s=this.packets)}else Ot().b[1][1]++;Ot().s[21]++,i(null,s)}))}}function Lt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js",n="77d46705b64cd15a99411a7a6de17a4c17f164ba",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/mnemonicChecker.js",statementMap:{0:{start:{line:26,column:23},end:{line:31,column:1}},1:{start:{line:28,column:17},end:{line:28,column:32}},2:{start:{line:29,column:15},end:{line:29,column:37}},3:{start:{line:30,column:2},end:{line:30,column:46}},4:{start:{line:32,column:32},end:{line:32,column:36}},5:{start:{line:33,column:29},end:{line:33,column:43}},6:{start:{line:37,column:4},end:{line:37,column:30}},7:{start:{line:39,column:4},end:{line:39,column:21}},8:{start:{line:40,column:4},end:{line:47,column:6}},9:{start:{line:41,column:6},end:{line:46,column:8}},10:{start:{line:42,column:8},end:{line:45,column:9}},11:{start:{line:49,column:4},end:{line:49,column:35}},12:{start:{line:50,column:4},end:{line:52,column:6}},13:{start:{line:51,column:6},end:{line:51,column:68}},14:{start:{line:54,column:4},end:{line:54,column:35}},15:{start:{line:55,column:4},end:{line:57,column:6}},16:{start:{line:56,column:6},end:{line:56,column:68}},17:{start:{line:60,column:14},end:{line:141,column:3}},18:{start:{line:61,column:42},end:{line:134,column:5}},19:{start:{line:63,column:8},end:{line:63,column:26}},20:{start:{line:64,column:8},end:{line:66,column:9}},21:{start:{line:65,column:10},end:{line:65,column:23}},22:{start:{line:67,column:25},end:{line:69,column:16}},23:{start:{line:68,column:10},end:{line:68,column:43}},24:{start:{line:70,column:25},end:{line:72,column:16}},25:{start:{line:71,column:10},end:{line:71,column:43}},26:{start:{line:73,column:8},end:{line:75,column:9}},27:{start:{line:74,column:10},end:{line:74,column:23}},28:{start:{line:77,column:23},end:{line:77,column:43}},29:{start:{line:78,column:26},end:{line:78,column:41}},30:{start:{line:79,column:8},end:{line:79,column:44}},31:{start:{line:81,column:30},end:{line:83,column:32}},32:{start:{line:85,column:8},end:{line:88,column:9}},33:{start:{line:86,column:10},end:{line:86,column:44}},34:{start:{line:87,column:10},end:{line:87,column:23}},35:{start:{line:90,column:37},end:{line:90,column:80}},36:{start:{line:91,column:30},end:{line:93,column:9}},37:{start:{line:94,column:8},end:{line:96,column:9}},38:{start:{line:95,column:10},end:{line:95,column:23}},39:{start:{line:98,column:25},end:{line:101,column:9}},40:{start:{line:102,column:8},end:{line:113,column:9}},41:{start:{line:103,column:10},end:{line:103,column:42}},42:{start:{line:105,column:33},end:{line:105,column:55}},43:{start:{line:106,column:10},end:{line:112,column:11}},44:{start:{line:107,column:12},end:{line:109,column:13}},45:{start:{line:108,column:25},end:{line:108,column:45}},46:{start:{line:111,column:12},end:{line:111,column:80}},47:{start:{line:111,column:70},end:{line:111,column:79}},48:{start:{line:116,column:8},end:{line:124,column:9}},49:{start:{line:117,column:10},end:{line:123,column:11}},50:{start:{line:118,column:12},end:{line:118,column:79}},51:{start:{line:120,column:12},end:{line:122,column:13}},52:{start:{line:121,column:14},end:{line:121,column:46}},53:{start:{line:126,column:8},end:{line:130,column:10}},54:{start:{line:131,column:8},end:{line:131,column:21}},55:{start:{line:136,column:21},end:{line:136,column:57}},56:{start:{line:137,column:4},end:{line:140,column:5}},57:{start:{line:139,column:40},end:{line:139,column:67}},58:{start:{line:143,column:16},end:{line:215,column:3}},59:{start:{line:144,column:25},end:{line:144,column:27}},60:{start:{line:145,column:25},end:{line:148,column:5}},61:{start:{line:147,column:19},end:{line:147,column:42}},62:{start:{line:149,column:4},end:{line:213,column:5}},63:{start:{line:150,column:6},end:{line:158,column:7}},64:{start:{line:151,column:8},end:{line:156,column:9}},65:{start:{line:152,column:10},end:{line:155,column:12}},66:{start:{line:157,column:8},end:{line:157,column:16}},67:{start:{line:159,column:27},end:{line:162,column:7}},68:{start:{line:161,column:21},end:{line:161,column:44}},69:{start:{line:163,column:6},end:{line:212,column:7}},70:{start:{line:164,column:8},end:{line:211,column:9}},71:{start:{line:165,column:27},end:{line:165,column:64}},72:{start:{line:166,column:10},end:{line:180,column:11}},73:{start:{line:167,column:27},end:{line:169,column:30}},74:{start:{line:170,column:29},end:{line:170,column:59}},75:{start:{line:171,column:12},end:{line:179,column:13}},76:{start:{line:173,column:16},end:{line:175,column:17}},77:{start:{line:174,column:28},end:{line:174,column:37}},78:{start:{line:176,column:16},end:{line:176,column:29}},79:{start:{line:182,column:24},end:{line:182,column:62}},80:{start:{line:183,column:10},end:{line:191,column:11}},81:{start:{line:184,column:12},end:{line:189,column:14}},82:{start:{line:190,column:12},end:{line:190,column:20}},83:{start:{line:192,column:10},end:{line:210,column:11}},84:{start:{line:193,column:12},end:{line:199,column:13}},85:{start:{line:193,column:38},end:{line:193,column:68}},86:{start:{line:194,column:14},end:{line:197,column:16}},87:{start:{line:198,column:14},end:{line:198,column:22}},88:{start:{line:201,column:12},end:{line:209,column:13}},89:{start:{line:202,column:14},end:{line:208,column:15}},90:{start:{line:202,column:40},end:{line:202,column:54}},91:{start:{line:203,column:16},end:{line:206,column:18}},92:{start:{line:207,column:16},end:{line:207,column:24}},93:{start:{line:214,column:4},end:{line:214,column:23}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:26,column:23},end:{line:26,column:24}},loc:{start:{line:26,column:33},end:{line:31,column:1}},line:26},1:{name:"(anonymous_1)",decl:{start:{line:36,column:2},end:{line:36,column:3}},loc:{start:{line:36,column:16},end:{line:58,column:3}},line:36},2:{name:"(anonymous_2)",decl:{start:{line:40,column:37},end:{line:40,column:38}},loc:{start:{line:40,column:51},end:{line:47,column:5}},line:40},3:{name:"(anonymous_3)",decl:{start:{line:41,column:23},end:{line:41,column:24}},loc:{start:{line:41,column:35},end:{line:46,column:7}},line:41},4:{name:"(anonymous_4)",decl:{start:{line:50,column:28},end:{line:50,column:29}},loc:{start:{line:50,column:42},end:{line:52,column:5}},line:50},5:{name:"(anonymous_5)",decl:{start:{line:55,column:28},end:{line:55,column:29}},loc:{start:{line:55,column:42},end:{line:57,column:5}},line:55},6:{name:"(anonymous_6)",decl:{start:{line:60,column:14},end:{line:60,column:15}},loc:{start:{line:60,column:36},end:{line:141,column:3}},line:60},7:{name:"(anonymous_7)",decl:{start:{line:62,column:6},end:{line:62,column:7}},loc:{start:{line:62,column:31},end:{line:132,column:7}},line:62},8:{name:"(anonymous_8)",decl:{start:{line:67,column:59},end:{line:67,column:60}},loc:{start:{line:67,column:77},end:{line:69,column:9}},line:67},9:{name:"(anonymous_9)",decl:{start:{line:70,column:59},end:{line:70,column:60}},loc:{start:{line:70,column:77},end:{line:72,column:9}},line:70},10:{name:"(anonymous_10)",decl:{start:{line:108,column:14},end:{line:108,column:15}},loc:{start:{line:108,column:25},end:{line:108,column:45}},line:108},11:{name:"(anonymous_11)",decl:{start:{line:111,column:52},end:{line:111,column:53}},loc:{start:{line:111,column:70},end:{line:111,column:79}},line:111},12:{name:"(anonymous_12)",decl:{start:{line:120,column:56},end:{line:120,column:57}},loc:{start:{line:121,column:14},end:{line:121,column:46}},line:121},13:{name:"(anonymous_13)",decl:{start:{line:139,column:30},end:{line:139,column:31}},loc:{start:{line:139,column:40},end:{line:139,column:67}},line:139},14:{name:"(anonymous_14)",decl:{start:{line:143,column:16},end:{line:143,column:17}},loc:{start:{line:143,column:40},end:{line:215,column:3}},line:143},15:{name:"(anonymous_15)",decl:{start:{line:147,column:6},end:{line:147,column:7}},loc:{start:{line:147,column:19},end:{line:147,column:42}},line:147},16:{name:"(anonymous_16)",decl:{start:{line:161,column:8},end:{line:161,column:9}},loc:{start:{line:161,column:21},end:{line:161,column:44}},line:161},17:{name:"(anonymous_17)",decl:{start:{line:172,column:14},end:{line:172,column:15}},loc:{start:{line:172,column:38},end:{line:177,column:15}},line:172},18:{name:"(anonymous_18)",decl:{start:{line:174,column:18},end:{line:174,column:19}},loc:{start:{line:174,column:28},end:{line:174,column:37}},line:174},19:{name:"(anonymous_19)",decl:{start:{line:193,column:28},end:{line:193,column:29}},loc:{start:{line:193,column:38},end:{line:193,column:68}},line:193},20:{name:"(anonymous_20)",decl:{start:{line:202,column:30},end:{line:202,column:31}},loc:{start:{line:202,column:40},end:{line:202,column:54}},line:202}},branchMap:{0:{loc:{start:{line:64,column:8},end:{line:66,column:9}},type:"if",locations:[{start:{line:64,column:8},end:{line:66,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:64},1:{loc:{start:{line:68,column:17},end:{line:68,column:43}},type:"binary-expr",locations:[{start:{line:68,column:17},end:{line:68,column:22}},{start:{line:68,column:26},end:{line:68,column:43}}],line:68},2:{loc:{start:{line:71,column:17},end:{line:71,column:43}},type:"binary-expr",locations:[{start:{line:71,column:17},end:{line:71,column:22}},{start:{line:71,column:26},end:{line:71,column:43}}],line:71},3:{loc:{start:{line:73,column:8},end:{line:75,column:9}},type:"if",locations:[{start:{line:73,column:8},end:{line:75,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:73},4:{loc:{start:{line:73,column:12},end:{line:73,column:34}},type:"binary-expr",locations:[{start:{line:73,column:12},end:{line:73,column:21}},{start:{line:73,column:25},end:{line:73,column:34}}],line:73},5:{loc:{start:{line:77,column:23},end:{line:77,column:43}},type:"binary-expr",locations:[{start:{line:77,column:23},end:{line:77,column:31}},{start:{line:77,column:35},end:{line:77,column:43}}],line:77},6:{loc:{start:{line:85,column:8},end:{line:88,column:9}},type:"if",locations:[{start:{line:85,column:8},end:{line:88,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:85},7:{loc:{start:{line:92,column:10},end:{line:92,column:42}},type:"cond-expr",locations:[{start:{line:92,column:33},end:{line:92,column:36}},{start:{line:92,column:39},end:{line:92,column:42}}],line:92},8:{loc:{start:{line:94,column:8},end:{line:96,column:9}},type:"if",locations:[{start:{line:94,column:8},end:{line:96,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:94},9:{loc:{start:{line:102,column:8},end:{line:113,column:9}},type:"if",locations:[{start:{line:102,column:8},end:{line:113,column:9}},{start:{line:104,column:15},end:{line:113,column:9}}],line:102},10:{loc:{start:{line:106,column:10},end:{line:112,column:11}},type:"if",locations:[{start:{line:106,column:10},end:{line:112,column:11}},{start:{line:110,column:17},end:{line:112,column:11}}],line:106},11:{loc:{start:{line:117,column:10},end:{line:123,column:11}},type:"if",locations:[{start:{line:117,column:10},end:{line:123,column:11}},{start:{line:119,column:17},end:{line:123,column:11}}],line:117},12:{loc:{start:{line:150,column:6},end:{line:158,column:7}},type:"if",locations:[{start:{line:150,column:6},end:{line:158,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:150},13:{loc:{start:{line:165,column:27},end:{line:165,column:64}},type:"cond-expr",locations:[{start:{line:165,column:51},end:{line:165,column:56}},{start:{line:165,column:59},end:{line:165,column:64}}],line:165},14:{loc:{start:{line:166,column:10},end:{line:180,column:11}},type:"if",locations:[{start:{line:166,column:10},end:{line:180,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:166},15:{loc:{start:{line:167,column:27},end:{line:169,column:30}},type:"cond-expr",locations:[{start:{line:168,column:16},end:{line:168,column:29}},{start:{line:169,column:16},end:{line:169,column:30}}],line:167},16:{loc:{start:{line:183,column:10},end:{line:191,column:11}},type:"if",locations:[{start:{line:183,column:10},end:{line:191,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:183},17:{loc:{start:{line:187,column:16},end:{line:187,column:57}},type:"cond-expr",locations:[{start:{line:187,column:37},end:{line:187,column:45}},{start:{line:187,column:48},end:{line:187,column:57}}],line:187},18:{loc:{start:{line:192,column:10},end:{line:210,column:11}},type:"if",locations:[{start:{line:192,column:10},end:{line:210,column:11}},{start:{line:200,column:17},end:{line:210,column:11}}],line:192},19:{loc:{start:{line:193,column:12},end:{line:199,column:13}},type:"if",locations:[{start:{line:193,column:12},end:{line:199,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:193},20:{loc:{start:{line:202,column:14},end:{line:208,column:15}},type:"if",locations:[{start:{line:202,column:14},end:{line:208,column:15}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:202}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0],8:[0,0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0],14:[0,0],15:[0,0],16:[0,0],17:[0,0],18:[0,0],19:[0,0],20:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"77d46705b64cd15a99411a7a6de17a4c17f164ba"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Lt=function(){return o},o}Lt(),Lt().s[0]++;const Ft=e=>{Lt().f[0]++;const n=(Lt().s[1]++,"(^|[{\\(\\s])"),t=(Lt().s[2]++,"((\\s.+)|(\\(.+\\)))");return Lt().s[3]++,new RegExp(`${n}${e}${t}`)},Pt=(Lt().s[4]++,/\{/),Ut=(Lt().s[5]++,/['"],\s?['"]/);class Ht{constructor(){(0,At.A)(this,"checkText",(Lt().s[17]++,async function(e){Lt().f[6]++;const{linesToCheck:n,linesToSkip:t}=(Lt().s[18]++,e.split("\n").reduce(((e,n,t)=>{if(Lt().f[7]++,Lt().s[19]++,n=n.trim(),Lt().s[20]++,n.match(/^#/))return Lt().b[0][0]++,Lt().s[21]++,e;Lt().b[0][1]++;const l=(Lt().s[22]++,this.cmdKeywordExpressions.reduce(((e,t)=>(Lt().f[8]++,Lt().s[23]++,Lt().b[1][0]++,e||(Lt().b[1][1]++,n.match(t)))),null)),i=(Lt().s[24]++,this.tlmKeywordExpressions.reduce(((e,t)=>(Lt().f[9]++,Lt().s[25]++,Lt().b[2][0]++,e||(Lt().b[2][1]++,n.match(t)))),null));if(Lt().s[26]++,Lt().b[4][0]++,!l&&(Lt().b[4][1]++,!i))return Lt().b[3][0]++,Lt().s[27]++,e;Lt().b[3][1]++;let s=(Lt().s[28]++,Lt().b[5][0]++,l||(Lt().b[5][1]++,i)),o=(Lt().s[29]++,s.length);Lt().s[30]++,s=s[o-1];const a=(Lt().s[31]++,s.substring(s.match(/[\(\s)]/).index+1).replace(/\)+.*$/,""));if(Lt().s[32]++,a.match(Pt))return Lt().b[6][0]++,Lt().s[33]++,e.linesToSkip.push(t+1),Lt().s[34]++,e;Lt().b[6][1]++;const r=(Lt().s[35]++,!!a.match(Ut)),c=(Lt().s[36]++,a.split(r?(Lt().b[7][0]++,","):(Lt().b[7][1]++," ")));if(Lt().s[37]++,c.length<2)return Lt().b[8][0]++,Lt().s[38]++,e;Lt().b[8][1]++;const u=(Lt().s[39]++,{target:c[0],packet:c[1]});if(Lt().s[40]++,i)Lt().b[9][0]++,Lt().s[41]++,u.item=c[2];else{Lt().b[9][1]++;const e=(Lt().s[42]++,c.slice(2));Lt().s[43]++,r?(Lt().b[10][0]++,Lt().s[44]++,u.params=e.map((e=>(Lt().f[10]++,Lt().s[45]++,e.split("=>")[0])))):(Lt().b[10][1]++,Lt().s[46]++,u.params=e.filter(((e,n)=>(Lt().f[11]++,Lt().s[47]++,n%2))))}Lt().s[48]++;for(const d in u)Lt().s[49]++,"string"===typeof u[d]?(Lt().b[11][0]++,Lt().s[50]++,u[d]=u[d].replace(/['"]/g,"").trim()):(Lt().b[11][1]++,Lt().s[51]++,u[d]=u[d].map((e=>(Lt().f[12]++,Lt().s[52]++,e.replace(/['"]/g,"").trim()))));return Lt().s[53]++,e.linesToCheck.push({line:n,mnemonic:u,lineNumber:t+1}),Lt().s[54]++,e}),{linesToCheck:[],linesToSkip:[]})),l=(Lt().s[55]++,await this._checkLines(n));return Lt().s[56]++,{skipped:t.sort(),problems:l.sort(((e,n)=>(Lt().f[13]++,Lt().s[57]++,e.lineNumber-n.lineNumber)))}})),(0,At.A)(this,"_checkLines",(Lt().s[58]++,async e=>{Lt().f[14]++;const n=(Lt().s[59]++,[]),t=(Lt().s[60]++,Et(e,(e=>(Lt().f[15]++,Lt().s[61]++,e.mnemonic.target))));Lt().s[62]++;for(const l in t){if(Lt().s[63]++,!this.targets[l]){Lt().b[12][0]++,Lt().s[64]++;for(const e of t[l])Lt().s[65]++,n.push({...e,error:`Target "${l}" does not exist.`});Lt().s[66]++;continue}Lt().b[12][1]++;const e=(Lt().s[67]++,Et(t[l],(e=>(Lt().f[16]++,Lt().s[68]++,e.mnemonic.packet))));Lt().s[69]++;for(const t in e){Lt().s[70]++;for(const i of e[t]){const e=(Lt().s[71]++,i.mnemonic.item?(Lt().b[13][0]++,"tlm"):(Lt().b[13][1]++,"cmd"));if(Lt().s[72]++,this.targets[l][e])Lt().b[14][1]++;else{Lt().b[14][0]++;const n=(Lt().s[73]++,i.mnemonic.item?(Lt().b[15][0]++,"get_all_tlm"):(Lt().b[15][1]++,"get_all_cmds")),t=(Lt().s[74]++,await this.api[n](l));Lt().s[75]++,this.targets[l][e]=t.reduce(((e,n)=>(Lt().f[17]++,Lt().s[76]++,e[n.packet_name]=n.items.map((e=>(Lt().f[18]++,Lt().s[77]++,e.name))),Lt().s[78]++,e)),{})}const s=(Lt().s[79]++,this.targets[l][e][t]);if(Lt().s[80]++,s)if(Lt().b[16][1]++,Lt().s[83]++,i.mnemonic.item){if(Lt().b[18][0]++,Lt().s[84]++,!s.some((e=>(Lt().f[19]++,Lt().s[85]++,e===i.mnemonic.item)))){Lt().b[19][0]++,Lt().s[86]++,n.push({...i,error:`Item "${l} ${t} ${i.mnemonic.item}" does not exist.`}),Lt().s[87]++;continue}Lt().b[19][1]++}else{Lt().b[18][1]++,Lt().s[88]++;for(const e of i.mnemonic.params)Lt().s[89]++,s.some((n=>(Lt().f[20]++,Lt().s[90]++,n===e)))?Lt().b[20][1]++:(Lt().b[20][0]++,Lt().s[91]++,n.push({...i,error:`Command "${l} ${t}" param "${e}" does not exist.`}),Lt().s[92]++)}else Lt().b[16][0]++,Lt().s[81]++,n.push({...i,error:`${"tlm"===e?(Lt().b[17][0]++,"Packet"):(Lt().b[17][1]++,"Command")} "${l} ${t}" does not exist.`}),Lt().s[82]++}}}return Lt().s[93]++,n})),Lt().f[1]++,Lt().s[6]++,this.api=new P.x,Lt().s[7]++,this.targets={},Lt().s[8]++,this.api.get_target_names().then((e=>{Lt().f[2]++,Lt().s[9]++,e.forEach((e=>{Lt().f[3]++,Lt().s[10]++,this.targets[e]={cmd:null,tlm:null}}))})),Lt().s[11]++,this.cmdKeywordExpressions=[],Lt().s[12]++,St("cmd").then((e=>{Lt().f[4]++,Lt().s[13]++,this.cmdKeywordExpressions=e.data.map(Ft)})),Lt().s[14]++,this.tlmKeywordExpressions=[],Lt().s[15]++,St("tlm").then((e=>{Lt().f[5]++,Lt().s[16]++,this.tlmKeywordExpressions=e.data.map(Ft)}))}}function Bt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/index.js",n="239637faebd5a12da0d2967088a12522b53174c2",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/autocomplete/index.js",statementMap:{},fnMap:{},branchMap:{},s:{},f:{},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"239637faebd5a12da0d2967088a12522b53174c2"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Bt=function(){return o},o}Bt();var Vt=t(6860),Wt=t(3453),Gt=t(8713);function zt(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js",n="ebd29b6b4771be71b0b3e8465d6a5e919396ec6e",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/regexAnnotator.js",statementMap:{0:{start:{line:31,column:4},end:{line:31,column:71}},1:{start:{line:32,column:4},end:{line:32,column:25}},2:{start:{line:33,column:4},end:{line:33,column:27}},3:{start:{line:34,column:4},end:{line:34,column:21}},4:{start:{line:35,column:4},end:{line:35,column:21}},5:{start:{line:39,column:12},end:{line:49,column:3}},6:{start:{line:40,column:20},end:{line:40,column:40}},7:{start:{line:41,column:4},end:{line:41,column:39}},8:{start:{line:42,column:18},end:{line:47,column:5}},9:{start:{line:48,column:4},end:{line:48,column:33}},10:{start:{line:52,column:13},end:{line:87,column:3}},11:{start:{line:53,column:4},end:{line:71,column:5}},12:{start:{line:55,column:6},end:{line:70,column:7}},13:{start:{line:57,column:10},end:{line:61,column:11}},14:{start:{line:62,column:10},end:{line:62,column:15}},15:{start:{line:64,column:10},end:{line:68,column:11}},16:{start:{line:69,column:10},end:{line:69,column:15}},17:{start:{line:72,column:4},end:{line:86,column:5}},18:{start:{line:72,column:19},end:{line:72,column:35}},19:{start:{line:73,column:19},end:{line:73,column:71}},20:{start:{line:74,column:6},end:{line:85,column:7}},21:{start:{line:75,column:8},end:{line:75,column:37}},22:{start:{line:76,column:8},end:{line:82,column:10}},23:{start:{line:83,column:13},end:{line:85,column:7}},24:{start:{line:84,column:8},end:{line:84,column:51}},25:{start:{line:89,column:19},end:{line:92,column:3}},26:{start:{line:90,column:4},end:{line:90,column:61}},27:{start:{line:91,column:4},end:{line:91,column:72}},28:{start:{line:94,column:29},end:{line:103,column:3}},29:{start:{line:95,column:4},end:{line:102,column:5}},30:{start:{line:100,column:12},end:{line:100,column:70}},31:{start:{line:105,column:22},end:{line:114,column:3}},32:{start:{line:106,column:4},end:{line:113,column:5}},33:{start:{line:108,column:8},end:{line:110,column:9}},34:{start:{line:109,column:10},end:{line:109,column:33}},35:{start:{line:111,column:8},end:{line:111,column:25}},36:{start:{line:116,column:26},end:{line:122,column:3}},37:{start:{line:117,column:4},end:{line:121,column:5}},38:{start:{line:120,column:32},end:{line:120,column:64}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:30,column:2},end:{line:30,column:3}},loc:{start:{line:30,column:47},end:{line:36,column:3}},line:30},1:{name:"(anonymous_1)",decl:{start:{line:39,column:12},end:{line:39,column:13}},loc:{start:{line:39,column:18},end:{line:49,column:3}},line:39},2:{name:"(anonymous_2)",decl:{start:{line:52,column:13},end:{line:52,column:14}},loc:{start:{line:52,column:34},end:{line:87,column:3}},line:52},3:{name:"(anonymous_3)",decl:{start:{line:89,column:19},end:{line:89,column:20}},loc:{start:{line:89,column:47},end:{line:92,column:3}},line:89},4:{name:"(anonymous_4)",decl:{start:{line:94,column:29},end:{line:94,column:30}},loc:{start:{line:94,column:47},end:{line:103,column:3}},line:94},5:{name:"(anonymous_5)",decl:{start:{line:99,column:10},end:{line:99,column:11}},loc:{start:{line:100,column:12},end:{line:100,column:70}},line:100},6:{name:"(anonymous_6)",decl:{start:{line:105,column:22},end:{line:105,column:23}},loc:{start:{line:105,column:47},end:{line:114,column:3}},line:105},7:{name:"(anonymous_7)",decl:{start:{line:107,column:35},end:{line:107,column:36}},loc:{start:{line:107,column:51},end:{line:112,column:7}},line:107},8:{name:"(anonymous_8)",decl:{start:{line:116,column:26},end:{line:116,column:27}},loc:{start:{line:116,column:39},end:{line:122,column:3}},line:116},9:{name:"(anonymous_9)",decl:{start:{line:120,column:16},end:{line:120,column:17}},loc:{start:{line:120,column:32},end:{line:120,column:64}},line:120}},branchMap:{0:{loc:{start:{line:53,column:4},end:{line:71,column:5}},type:"if",locations:[{start:{line:53,column:4},end:{line:71,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:53},1:{loc:{start:{line:55,column:6},end:{line:70,column:7}},type:"switch",locations:[{start:{line:56,column:8},end:{line:62,column:15}},{start:{line:63,column:8},end:{line:69,column:15}}],line:55},2:{loc:{start:{line:74,column:6},end:{line:85,column:7}},type:"if",locations:[{start:{line:74,column:6},end:{line:85,column:7}},{start:{line:83,column:13},end:{line:85,column:7}}],line:74},3:{loc:{start:{line:75,column:8},end:{line:75,column:37}},type:"binary-expr",locations:[{start:{line:75,column:8},end:{line:75,column:20}},{start:{line:75,column:25},end:{line:75,column:36}}],line:75},4:{loc:{start:{line:83,column:13},end:{line:85,column:7}},type:"if",locations:[{start:{line:83,column:13},end:{line:85,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:83},5:{loc:{start:{line:100,column:12},end:{line:100,column:70}},type:"binary-expr",locations:[{start:{line:100,column:12},end:{line:100,column:44}},{start:{line:100,column:48},end:{line:100,column:70}}],line:100},6:{loc:{start:{line:108,column:8},end:{line:110,column:9}},type:"if",locations:[{start:{line:108,column:8},end:{line:110,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:108}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"ebd29b6b4771be71b0b3e8465d6a5e919396ec6e"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return zt=function(){return o},o}zt();var qt=new WeakMap,jt=new WeakMap,Yt=new WeakMap,Kt=new WeakMap,Zt=new WeakMap,Xt=new WeakMap,Jt=new WeakMap,Qt=new WeakMap,el=new WeakMap;class nl{constructor(e,{pattern:n,text:t,type:l}){(0,Vt.A)(this,qt,void 0),(0,Vt.A)(this,jt,void 0),(0,Vt.A)(this,Yt,void 0),(0,Vt.A)(this,Kt,void 0),(0,Vt.A)(this,Zt,void 0),(0,At.A)(this,"refresh",(zt().s[5]++,()=>{zt().f[1]++;const e=(zt().s[6]++,(0,Wt.A)(jt,this).session);zt().s[7]++,(0,Wt.A)(el,this).call(this,e);const n=(zt().s[8]++,{lines:e.doc.$lines,action:"insert",start:{row:0},end:{row:e.doc.$lines.length}});zt().s[9]++,this.annotate(n,e)})),(0,At.A)(this,"annotate",(zt().s[10]++,(e,n)=>{if(zt().f[2]++,zt().s[11]++,e.lines.length>1)switch(zt().b[0][0]++,zt().s[12]++,e.action){case"insert":zt().b[1][0]++,zt().s[13]++,(0,Wt.A)(Qt,this).call(this,n,e.start.row,e.lines.length-1),zt().s[14]++;break;case"remove":zt().b[1][1]++,zt().s[15]++,(0,Wt.A)(Qt,this).call(this,n,e.start.row+1,1-e.lines.length),zt().s[16]++;break}else zt().b[0][1]++;zt().s[17]++;for(let t=(zt().s[18]++,e.start.row);t<=e.end.row;t++){let l=(zt().s[19]++,n.doc.$lines[t]?.match((0,Wt.A)(Yt,this))?.index);zt().s[20]++,void 0!==l?(zt().b[2][0]++,zt().s[21]++,zt().b[3][0]++,0!==l&&(zt().b[3][1]++,l+=1),zt().s[22]++,(0,Wt.A)(Xt,this).call(this,n,{row:t,column:l,text:(0,Wt.A)(Kt,this),type:(0,Wt.A)(Zt,this),openc3Id:(0,Wt.A)(qt,this)})):(zt().b[2][1]++,zt().s[23]++,"remove"===e.action?(zt().b[4][0]++,zt().s[24]++,(0,Wt.A)(Jt,this).call(this,n,t)):zt().b[4][1]++)}})),(0,Vt.A)(this,Xt,(zt().s[25]++,(e,n)=>{zt().f[3]++,zt().s[26]++,(0,Wt.A)(Jt,this).call(this,e,n.row),zt().s[27]++,e.setAnnotations([...e.getAnnotations(),n])})),(0,Vt.A)(this,Jt,(zt().s[28]++,(e,n)=>{zt().f[4]++,zt().s[29]++,e.setAnnotations(e.getAnnotations().filter((e=>(zt().f[5]++,zt().s[30]++,zt().b[5][0]++,e.openc3Id!==(0,Wt.A)(qt,this)||(zt().b[5][1]++,e.row!==n)))))})),(0,Vt.A)(this,Qt,(zt().s[31]++,(e,n,t)=>{zt().f[6]++,zt().s[32]++,e.setAnnotations(e.getAnnotations().map((e=>(zt().f[7]++,zt().s[33]++,e.row>n?(zt().b[6][0]++,zt().s[34]++,e.row+=t):zt().b[6][1]++,zt().s[35]++,e))))})),(0,Vt.A)(this,el,(zt().s[36]++,e=>{zt().f[8]++,zt().s[37]++,e.setAnnotations(e.getAnnotations().filter((e=>(zt().f[9]++,zt().s[38]++,e.openc3Id!==(0,Wt.A)(qt,this)))))})),zt().f[0]++,zt().s[0]++,(0,Gt.A)(qt,this,`regexAnnotator-${Math.floor(1e7*Math.random())}`),zt().s[1]++,(0,Gt.A)(jt,this,e),zt().s[2]++,(0,Gt.A)(Yt,this,n),zt().s[3]++,(0,Gt.A)(Kt,this,t),zt().s[4]++,(0,Gt.A)(Zt,this,l)}}function tl(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/sleepAnnotator.js",n="744a728c29aa11b26e0fea7ead3a653b74f7c776",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/sleepAnnotator.js",statementMap:{0:{start:{line:27,column:19},end:{line:27,column:31}},1:{start:{line:28,column:20},end:{line:28,column:27}},2:{start:{line:29,column:19},end:{line:29,column:29}},3:{start:{line:30,column:4},end:{line:34,column:6}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:26,column:2},end:{line:26,column:3}},loc:{start:{line:26,column:22},end:{line:35,column:3}},line:26}},branchMap:{},s:{0:0,1:0,2:0,3:0},f:{0:0},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"744a728c29aa11b26e0fea7ead3a653b74f7c776"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return tl=function(){return o},o}tl();class ll extends nl{constructor(e){tl().f[0]++;const n=(tl().s[0]++,"(^|[{\\s])"),t=(tl().s[1]++,"sleep"),l=(tl().s[2]++,"[\\(\\s]");tl().s[3]++,super(e,{pattern:new RegExp(`${n}${t}${l}`),text:"Use `wait` instead of `sleep` in OpenC3 scripts",type:"warning"})}}function il(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/index.js",n="5703e005e4cf95b0f782738f96d4e334260835ac",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/annotations/index.js",statementMap:{},fnMap:{},branchMap:{},s:{},f:{},b:{},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"5703e005e4cf95b0f782738f96d4e334260835ac"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return il=function(){return o},o}function sl(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/RunningScripts.vue",n="b6445ab465afdcda298ef44df91d2d40d40c7eb0",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/RunningScripts.vue",statementMap:{0:{start:{line:1,column:13},end:{line:8,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:7,column:630}},4:{start:{line:1,column:681},end:{line:1,column:702}},5:{start:{line:4,column:90},end:{line:4,column:412}},6:{start:{line:4,column:165},end:{line:4,column:195}},7:{start:{line:4,column:454},end:{line:4,column:678}},8:{start:{line:4,column:529},end:{line:4,column:556}},9:{start:{line:4,column:722},end:{line:4,column:951}},10:{start:{line:4,column:797},end:{line:4,column:826}},11:{start:{line:4,column:1536},end:{line:4,column:1559}},12:{start:{line:7,column:72},end:{line:7,column:616}},13:{start:{line:7,column:247},end:{line:7,column:281}},14:{start:{line:7,column:332},end:{line:7,column:374}},15:{start:{line:9,column:22},end:{line:9,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:8,column:1}},line:1},1:{name:"(anonymous_1)",decl:{start:{line:1,column:665},end:{line:1,column:666}},loc:{start:{line:1,column:680},end:{line:1,column:703}},line:1},2:{name:"(anonymous_2)",decl:{start:{line:4,column:71},end:{line:4,column:72}},loc:{start:{line:4,column:89},end:{line:4,column:413}},line:4},3:{name:"(anonymous_3)",decl:{start:{line:4,column:148},end:{line:4,column:149}},loc:{start:{line:4,column:164},end:{line:4,column:196}},line:4},4:{name:"(anonymous_4)",decl:{start:{line:4,column:435},end:{line:4,column:436}},loc:{start:{line:4,column:453},end:{line:4,column:679}},line:4},5:{name:"(anonymous_5)",decl:{start:{line:4,column:512},end:{line:4,column:513}},loc:{start:{line:4,column:528},end:{line:4,column:557}},line:4},6:{name:"(anonymous_6)",decl:{start:{line:4,column:703},end:{line:4,column:704}},loc:{start:{line:4,column:721},end:{line:4,column:952}},line:4},7:{name:"(anonymous_7)",decl:{start:{line:4,column:780},end:{line:4,column:781}},loc:{start:{line:4,column:796},end:{line:4,column:827}},line:4},8:{name:"(anonymous_8)",decl:{start:{line:4,column:1520},end:{line:4,column:1521}},loc:{start:{line:4,column:1535},end:{line:4,column:1560}},line:4},9:{name:"(anonymous_9)",decl:{start:{line:7,column:53},end:{line:7,column:54}},loc:{start:{line:7,column:71},end:{line:7,column:617}},line:7},10:{name:"(anonymous_10)",decl:{start:{line:7,column:230},end:{line:7,column:231}},loc:{start:{line:7,column:246},end:{line:7,column:282}},line:7},11:{name:"(anonymous_11)",decl:{start:{line:7,column:321},end:{line:7,column:322}},loc:{start:{line:7,column:331},end:{line:7,column:375}},line:7}},branchMap:{0:{loc:{start:{line:7,column:157},end:{line:7,column:216}},type:"binary-expr",locations:[{start:{line:7,column:157},end:{line:7,column:175}},{start:{line:7,column:179},end:{line:7,column:216}}],line:7},1:{loc:{start:{line:7,column:402},end:{line:7,column:525}},type:"cond-expr",locations:[{start:{line:7,column:455},end:{line:7,column:491}},{start:{line:7,column:492},end:{line:7,column:525}}],line:7},2:{loc:{start:{line:7,column:403},end:{line:7,column:453}},type:"binary-expr",locations:[{start:{line:7,column:403},end:{line:7,column:426}},{start:{line:7,column:430},end:{line:7,column:453}}],line:7}},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},f:{0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:0,11:0},b:{0:[0,0],1:[0,0],2:[0,0]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"b6445ab465afdcda298ef44df91d2d40d40c7eb0"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return sl=function(){return o},o}il(),sl(),sl().s[0]++;var ol=function(){sl().f[0]++;var e=(sl().s[1]++,this),n=(sl().s[2]++,e._self._c);return sl().s[3]++,n("div",[n("v-card",{attrs:{flat:""}},[n("v-card-title",[n("v-row",{attrs:{dense:""}},[n("span",{staticClass:"mr-2"},[e._v("Running Scripts")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mr-2",attrs:{color:"primary"},on:{click:e.getRunningScripts}},[e._v("Refresh")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-text-field",{staticClass:"pt-0 search",attrs:{label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","single-line":"","hide-details":"","data-test":"running-search"},model:{value:e.runningSearch,callback:function(n){sl().f[1]++,sl().s[4]++,e.runningSearch=n},expression:"runningSearch"}})],1)],1),e._v(" "),n("v-data-table",{attrs:{headers:e.runningHeaders,items:e.runningScripts,search:e.runningSearch,dense:"","calculate-widths":"","multi-sort":"","sort-by":"start_time","sort-desc":"","data-test":"running-scripts","footer-props":{itemsPerPageOptions:[3],showFirstLastPage:!0},"max-height":"400"},scopedSlots:e._u([{key:"item.connect",fn:function({item:t}){return sl().f[2]++,sl().s[5]++,[n("v-btn",{attrs:{color:"primary"},on:{click:function(n){return sl().f[3]++,sl().s[6]++,e.connectScript(t)}}},[n("span",[e._v("Connect")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.connectInNewTab,expression:"connectInNewTab"}],attrs:{right:""}},[e._v(" mdi-open-in-new ")])],1)]}},{key:"item.stop",fn:function({item:t}){return sl().f[4]++,sl().s[7]++,[n("v-btn",{attrs:{color:"primary"},on:{click:function(n){return sl().f[5]++,sl().s[8]++,e.stopScript(t)}}},[n("span",[e._v("Stop")]),e._v(" "),n("v-icon",{attrs:{right:""}},[e._v(" mdi-close-circle-outline ")])],1)]}},{key:"item.delete",fn:function({item:t}){return sl().f[6]++,sl().s[9]++,[n("v-btn",{attrs:{color:"primary"},on:{click:function(n){return sl().f[7]++,sl().s[10]++,e.deleteScript(t)}}},[n("span",[e._v("Delete")]),e._v(" "),n("v-icon",{attrs:{right:""}},[e._v(" mdi-alert-octagon-outline ")])],1)]}}])})],1),e._v(" "),n("v-card",{attrs:{flat:""}},[n("v-card-title",[n("v-row",{attrs:{dense:""}},[n("span",{staticClass:"mr-2"},[e._v("Completed Scripts")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-btn",{attrs:{color:"primary"},on:{click:e.getCompletedScripts}},[e._v("Refresh")]),e._v(" "),n("v-spacer"),e._v(" "),n("v-text-field",{staticClass:"pt-0 search",attrs:{label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",outlined:"",dense:"","single-line":"","hide-details":""},model:{value:e.completedSearch,callback:function(n){sl().f[8]++,sl().s[11]++,e.completedSearch=n},expression:"completedSearch"}})],1)],1),e._v(" "),n("v-data-table",{attrs:{headers:e.completedHeaders,items:e.completedScripts,search:e.completedSearch,dense:"","calculate-widths":"","multi-sort":"","sort-by":"start","sort-desc":"","data-test":"completed-scripts","footer-props":{itemsPerPageOptions:[5],showFirstLastPage:!0}},scopedSlots:e._u([{key:"item.download",fn:function({item:t}){return sl().f[9]++,sl().s[12]++,[n("v-btn",{attrs:{color:"primary",disabled:e.downloadScript,loading:(sl().b[0][0]++,e.downloadScript&&(sl().b[0][1]++,e.downloadScript.name===t.name))},on:{click:function(n){return sl().f[10]++,sl().s[13]++,e.downloadScriptLog(t)}},scopedSlots:e._u([{key:"loader",fn:function(){return sl().f[11]++,sl().s[14]++,[n("span",[e._v("Loading...")])]},proxy:!0}],null,!0)},[(sl().b[2][0]++,t.name.includes("(")&&(sl().b[2][1]++,t.name.includes(")"))?(sl().b[1][0]++,n("span",[e._v("Script Report")])):(sl().b[1][1]++,n("span",[e._v("Script Log")]))),e._v(" "),n("v-icon",{attrs:{right:""}},[e._v(" mdi-file-download-outline ")])],1)]}}])})],1)],1)},al=(sl().s[15]++,[]);function rl(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/RunningScripts.vue",n="b186664b38ea8673e8c2827afa44cff1b012f965",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/RunningScripts.vue",statementMap:{0:{start:{line:11,column:4},end:{line:52,column:5}},1:{start:{line:55,column:4},end:{line:55,column:28}},2:{start:{line:56,column:4},end:{line:56,column:30}},3:{start:{line:60,column:6},end:{line:62,column:8}},4:{start:{line:61,column:8},end:{line:61,column:43}},5:{start:{line:66,column:6},end:{line:68,column:8}},6:{start:{line:67,column:8},end:{line:67,column:45}},7:{start:{line:72,column:6},end:{line:72,column:30}},8:{start:{line:73,column:26},end:{line:76,column:7}},9:{start:{line:77,column:6},end:{line:83,column:7}},10:{start:{line:78,column:23},end:{line:78,column:56}},11:{start:{line:79,column:8},end:{line:79,column:35}},12:{start:{line:81,column:8},end:{line:81,column:38}},13:{start:{line:82,column:8},end:{line:82,column:27}},14:{start:{line:86,column:6},end:{line:109,column:10}},15:{start:{line:95,column:10},end:{line:95,column:73}},16:{start:{line:98,column:10},end:{line:100,column:12}},17:{start:{line:101,column:10},end:{line:101,column:34}},18:{start:{line:104,column:10},end:{line:108,column:11}},19:{start:{line:105,column:12},end:{line:107,column:14}},20:{start:{line:112,column:6},end:{line:136,column:10}},21:{start:{line:122,column:10},end:{line:122,column:75}},22:{start:{line:125,column:10},end:{line:127,column:12}},23:{start:{line:128,column:10},end:{line:128,column:34}},24:{start:{line:131,column:10},end:{line:135,column:11}},25:{start:{line:132,column:12},end:{line:134,column:14}},26:{start:{line:139,column:6},end:{line:139,column:34}},27:{start:{line:140,column:6},end:{line:160,column:10}},28:{start:{line:146,column:32},end:{line:146,column:53}},29:{start:{line:147,column:27},end:{line:147,column:66}},30:{start:{line:149,column:23},end:{line:149,column:50}},31:{start:{line:150,column:10},end:{line:150,column:39}},32:{start:{line:151,column:10},end:{line:151,column:49}},33:{start:{line:152,column:10},end:{line:152,column:22}},34:{start:{line:153,column:10},end:{line:153,column:36}},35:{start:{line:156,column:10},end:{line:159,column:12}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:10,column:2},end:{line:10,column:3}},loc:{start:{line:10,column:9},end:{line:53,column:3}},line:10},1:{name:"(anonymous_1)",decl:{start:{line:54,column:2},end:{line:54,column:3}},loc:{start:{line:54,column:12},end:{line:57,column:3}},line:54},2:{name:"(anonymous_2)",decl:{start:{line:59,column:23},end:{line:59,column:24}},loc:{start:{line:59,column:35},end:{line:63,column:5}},line:59},3:{name:"(anonymous_3)",decl:{start:{line:60,column:49},end:{line:60,column:50}},loc:{start:{line:60,column:63},end:{line:62,column:7}},line:60},4:{name:"(anonymous_4)",decl:{start:{line:64,column:25},end:{line:64,column:26}},loc:{start:{line:64,column:37},end:{line:69,column:5}},line:64},5:{name:"(anonymous_5)",decl:{start:{line:66,column:52},end:{line:66,column:53}},loc:{start:{line:66,column:66},end:{line:68,column:7}},line:66},6:{name:"(anonymous_6)",decl:{start:{line:70,column:19},end:{line:70,column:20}},loc:{start:{line:70,column:37},end:{line:84,column:5}},line:70},7:{name:"(anonymous_7)",decl:{start:{line:85,column:16},end:{line:85,column:17}},loc:{start:{line:85,column:34},end:{line:110,column:5}},line:85},8:{name:"(anonymous_8)",decl:{start:{line:94,column:14},end:{line:94,column:15}},loc:{start:{line:94,column:26},end:{line:96,column:9}},line:94},9:{name:"(anonymous_9)",decl:{start:{line:97,column:14},end:{line:97,column:15}},loc:{start:{line:97,column:28},end:{line:102,column:9}},line:97},10:{name:"(anonymous_10)",decl:{start:{line:103,column:15},end:{line:103,column:16}},loc:{start:{line:103,column:26},end:{line:109,column:9}},line:103},11:{name:"(anonymous_11)",decl:{start:{line:111,column:18},end:{line:111,column:19}},loc:{start:{line:111,column:36},end:{line:137,column:5}},line:111},12:{name:"(anonymous_12)",decl:{start:{line:121,column:14},end:{line:121,column:15}},loc:{start:{line:121,column:26},end:{line:123,column:9}},line:121},13:{name:"(anonymous_13)",decl:{start:{line:124,column:14},end:{line:124,column:15}},loc:{start:{line:124,column:28},end:{line:129,column:9}},line:124},14:{name:"(anonymous_14)",decl:{start:{line:130,column:15},end:{line:130,column:16}},loc:{start:{line:130,column:26},end:{line:136,column:9}},line:130},15:{name:"(anonymous_15)",decl:{start:{line:138,column:23},end:{line:138,column:24}},loc:{start:{line:138,column:41},end:{line:161,column:5}},line:138},16:{name:"(anonymous_16)",decl:{start:{line:145,column:14},end:{line:145,column:15}},loc:{start:{line:145,column:28},end:{line:154,column:9}},line:145},17:{name:"(anonymous_17)",decl:{start:{line:155,column:15},end:{line:155,column:16}},loc:{start:{line:155,column:21},end:{line:160,column:9}},line:155}},branchMap:{0:{loc:{start:{line:77,column:6},end:{line:83,column:7}},type:"if",locations:[{start:{line:77,column:6},end:{line:83,column:7}},{start:{line:80,column:13},end:{line:83,column:7}}],line:77},1:{loc:{start:{line:104,column:10},end:{line:108,column:11}},type:"if",locations:[{start:{line:104,column:10},end:{line:108,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:104},2:{loc:{start:{line:131,column:10},end:{line:135,column:11}},type:"if",locations:[{start:{line:131,column:10},end:{line:135,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:131}},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},b:{0:[0,0],1:[0,0],2:[0,0]},inputSourceMap:{version:3,sources:["RunningScripts.vue"],names:[],mappings:";AA4IA;;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",file:"RunningScripts.vue",sourceRoot:"src/tools/ScriptRunner",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 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <v-card flat>\n <v-card-title>\n <v-row dense>\n <span class="mr-2">Running Scripts</span>\n <v-spacer />\n <v-btn class="mr-2" color="primary" @click="getRunningScripts"\n >Refresh</v-btn\n >\n <v-spacer />\n <v-text-field\n v-model="runningSearch"\n class="pt-0 search"\n label="Search"\n prepend-inner-icon="mdi-magnify"\n clearable\n outlined\n dense\n single-line\n hide-details\n data-test="running-search" /></v-row\n ></v-card-title>\n <v-data-table\n :headers="runningHeaders"\n :items="runningScripts"\n :search="runningSearch"\n dense\n calculate-widths\n multi-sort\n sort-by="start_time"\n sort-desc\n data-test="running-scripts"\n :footer-props="{\n itemsPerPageOptions: [3],\n showFirstLastPage: true,\n }"\n max-height="400"\n >\n <template v-slot:item.connect="{ item }">\n <v-btn color="primary" @click="connectScript(item)">\n <span>Connect</span>\n <v-icon right v-show="connectInNewTab"> mdi-open-in-new </v-icon>\n </v-btn>\n </template>\n <template v-slot:item.stop="{ item }">\n <v-btn color="primary" @click="stopScript(item)">\n <span>Stop</span>\n <v-icon right> mdi-close-circle-outline </v-icon>\n </v-btn>\n </template>\n <template v-slot:item.delete="{ item }">\n <v-btn color="primary" @click="deleteScript(item)">\n <span>Delete</span>\n <v-icon right> mdi-alert-octagon-outline </v-icon>\n </v-btn>\n </template>\n </v-data-table>\n </v-card>\n <v-card flat>\n <v-card-title>\n <v-row dense>\n <span class="mr-2">Completed Scripts</span>\n <v-spacer />\n <v-btn color="primary" @click="getCompletedScripts">Refresh</v-btn>\n <v-spacer />\n <v-text-field\n v-model="completedSearch"\n class="pt-0 search"\n label="Search"\n prepend-inner-icon="mdi-magnify"\n clearable\n outlined\n dense\n single-line\n hide-details\n />\n </v-row>\n </v-card-title>\n \x3c!-- TODO: This probably needs to be paginated --\x3e\n <v-data-table\n :headers="completedHeaders"\n :items="completedScripts"\n :search="completedSearch"\n dense\n calculate-widths\n multi-sort\n sort-by="start"\n sort-desc\n data-test="completed-scripts"\n :footer-props="{\n itemsPerPageOptions: [5],\n showFirstLastPage: true,\n }"\n >\n <template v-slot:item.download="{ item }">\n <v-btn\n color="primary"\n :disabled="downloadScript"\n :loading="downloadScript && downloadScript.name === item.name"\n @click="downloadScriptLog(item)"\n >\n <span v-if="item.name.includes(\'(\') && item.name.includes(\')\')"\n >Script Report</span\n >\n <span v-else>Script Log</span>\n <v-icon right> mdi-file-download-outline </v-icon>\n <template v-slot:loader>\n <span>Loading...</span>\n </template>\n </v-btn>\n </template>\n </v-data-table>\n </v-card>\n </div>\n</template>\n\n<script>\nimport Api from \'@openc3/tool-common/src/services/api\'\n\nexport default {\n props: {\n tabId: Number,\n curTab: Number,\n connectInNewTab: Boolean,\n },\n data() {\n return {\n downloadScript: null,\n runningSearch: \'\',\n runningScripts: [],\n runningHeaders: [\n {\n text: \'Connect\',\n value: \'connect\',\n sortable: false,\n filterable: false,\n },\n { text: \'Id\', value: \'id\' },\n { text: \'User\', value: \'user\' },\n { text: \'Name\', value: \'name\' },\n { text: \'Start Time\', value: \'start_time\' },\n {\n text: \'Stop\',\n value: \'stop\',\n sortable: false,\n filterable: false,\n },\n {\n text: \'Force Quit\',\n value: \'delete\',\n sortable: false,\n filterable: false,\n },\n ],\n completedSearch: \'\',\n completedScripts: [],\n completedHeaders: [\n { text: \'User\', value: \'user\' },\n { text: \'Name\', value: \'name\' },\n { text: \'Start Time\', value: \'start\' },\n {\n text: \'Download\',\n value: \'download\',\n sortable: false,\n filterable: false,\n },\n ],\n }\n },\n created() {\n this.getRunningScripts()\n this.getCompletedScripts()\n },\n methods: {\n getRunningScripts: function () {\n Api.get(\'/script-api/running-script\').then((response) => {\n this.runningScripts = response.data\n })\n },\n getCompletedScripts: function () {\n // TODO: Support pagination because you could have a lot of completed scripts\n Api.get(\'/script-api/completed-scripts\').then((response) => {\n this.completedScripts = response.data\n })\n },\n connectScript: function (script) {\n // Must disconnect before connecting\n this.$emit(\'disconnect\')\n const destination = {\n name: \'ScriptRunner\',\n params: { id: script.id },\n }\n if (this.connectInNewTab) {\n let { href } = this.$router.resolve(destination)\n window.open(href, \'_blank\')\n } else {\n this.$router.push(destination)\n this.$emit(\'close\')\n }\n },\n stopScript: function (script) {\n this.$dialog\n .confirm(\n `Are you sure you want to stop script: ${script.id} ${script.name}?`,\n {\n okText: \'Stop\',\n cancelText: \'Cancel\',\n },\n )\n .then((dialog) => {\n return Api.post(`/script-api/running-script/${script.id}/stop`)\n })\n .then((response) => {\n this.$notify.normal({\n body: `Stopped script: ${script.id} ${script.name}`,\n })\n this.getRunningScripts()\n })\n .catch((error) => {\n if (error !== true) {\n this.$notify.caution({\n body: `Failed to stop script: ${script.id} ${script.name}`,\n })\n }\n })\n },\n deleteScript: function (script) {\n this.$dialog\n .confirm(\n `Are you sure you want to force quit script: ${script.id} ${script.name}?\\n` +\n \'Did you try to stop the script first to allow the script to stop gracefully?\',\n {\n okText: \'Force Quit\',\n cancelText: \'Cancel\',\n },\n )\n .then((dialog) => {\n return Api.post(`/script-api/running-script/${script.id}/delete`)\n })\n .then((response) => {\n this.$notify.normal({\n body: `Stopped script: ${script.id} ${script.name}`,\n })\n this.getRunningScripts()\n })\n .catch((error) => {\n if (error !== true) {\n this.$notify.caution({\n body: `Failed to stop script: ${script.id} ${script.name}`,\n })\n }\n })\n },\n downloadScriptLog: function (script) {\n this.downloadScript = script\n Api.get(\n `/openc3-api/storage/download/${encodeURIComponent(\n script.log,\n )}?bucket=OPENC3_LOGS_BUCKET`,\n )\n .then((response) => {\n const filenameParts = script.log.split(\'/\')\n const basename = filenameParts[filenameParts.length - 1]\n // Make a link and then \'click\' on it to start the download\n const link = document.createElement(\'a\')\n link.href = response.data.url\n link.setAttribute(\'download\', basename)\n link.click()\n this.downloadScript = null\n })\n .catch(() => {\n this.$notify.caution({\n title: `Unable to download log for ${script.name}`,\n body: `You may be able to download this log manually from the \'logs\' bucket at ${script.log}`,\n })\n })\n },\n },\n}\n<\/script>\n']},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"b186664b38ea8673e8c2827afa44cff1b012f965"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return rl=function(){return o},o}rl();const cl={props:{tabId:Number,curTab:Number,connectInNewTab:Boolean},data(){return rl().f[0]++,rl().s[0]++,{downloadScript:null,runningSearch:"",runningScripts:[],runningHeaders:[{text:"Connect",value:"connect",sortable:!1,filterable:!1},{text:"Id",value:"id"},{text:"User",value:"user"},{text:"Name",value:"name"},{text:"Start Time",value:"start_time"},{text:"Stop",value:"stop",sortable:!1,filterable:!1},{text:"Force Quit",value:"delete",sortable:!1,filterable:!1}],completedSearch:"",completedScripts:[],completedHeaders:[{text:"User",value:"user"},{text:"Name",value:"name"},{text:"Start Time",value:"start"},{text:"Download",value:"download",sortable:!1,filterable:!1}]}},created(){rl().f[1]++,rl().s[1]++,this.getRunningScripts(),rl().s[2]++,this.getCompletedScripts()},methods:{getRunningScripts:function(){rl().f[2]++,rl().s[3]++,r.A.get("/script-api/running-script").then((e=>{rl().f[3]++,rl().s[4]++,this.runningScripts=e.data}))},getCompletedScripts:function(){rl().f[4]++,rl().s[5]++,r.A.get("/script-api/completed-scripts").then((e=>{rl().f[5]++,rl().s[6]++,this.completedScripts=e.data}))},connectScript:function(e){rl().f[6]++,rl().s[7]++,this.$emit("disconnect");const n=(rl().s[8]++,{name:"ScriptRunner",params:{id:e.id}});if(rl().s[9]++,this.connectInNewTab){rl().b[0][0]++;let{href:e}=(rl().s[10]++,this.$router.resolve(n));rl().s[11]++,window.open(e,"_blank")}else rl().b[0][1]++,rl().s[12]++,this.$router.push(n),rl().s[13]++,this.$emit("close")},stopScript:function(e){rl().f[7]++,rl().s[14]++,this.$dialog.confirm(`Are you sure you want to stop script: ${e.id} ${e.name}?`,{okText:"Stop",cancelText:"Cancel"}).then((n=>(rl().f[8]++,rl().s[15]++,r.A.post(`/script-api/running-script/${e.id}/stop`)))).then((n=>{rl().f[9]++,rl().s[16]++,this.$notify.normal({body:`Stopped script: ${e.id} ${e.name}`}),rl().s[17]++,this.getRunningScripts()})).catch((n=>{rl().f[10]++,rl().s[18]++,!0!==n?(rl().b[1][0]++,rl().s[19]++,this.$notify.caution({body:`Failed to stop script: ${e.id} ${e.name}`})):rl().b[1][1]++}))},deleteScript:function(e){rl().f[11]++,rl().s[20]++,this.$dialog.confirm(`Are you sure you want to force quit script: ${e.id} ${e.name}?\nDid you try to stop the script first to allow the script to stop gracefully?`,{okText:"Force Quit",cancelText:"Cancel"}).then((n=>(rl().f[12]++,rl().s[21]++,r.A.post(`/script-api/running-script/${e.id}/delete`)))).then((n=>{rl().f[13]++,rl().s[22]++,this.$notify.normal({body:`Stopped script: ${e.id} ${e.name}`}),rl().s[23]++,this.getRunningScripts()})).catch((n=>{rl().f[14]++,rl().s[24]++,!0!==n?(rl().b[2][0]++,rl().s[25]++,this.$notify.caution({body:`Failed to stop script: ${e.id} ${e.name}`})):rl().b[2][1]++}))},downloadScriptLog:function(e){rl().f[15]++,rl().s[26]++,this.downloadScript=e,rl().s[27]++,r.A.get(`/openc3-api/storage/download/${encodeURIComponent(e.log)}?bucket=OPENC3_LOGS_BUCKET`).then((n=>{rl().f[16]++;const t=(rl().s[28]++,e.log.split("/")),l=(rl().s[29]++,t[t.length-1]),i=(rl().s[30]++,document.createElement("a"));rl().s[31]++,i.href=n.data.url,rl().s[32]++,i.setAttribute("download",l),rl().s[33]++,i.click(),rl().s[34]++,this.downloadScript=null})).catch((()=>{rl().f[17]++,rl().s[35]++,this.$notify.caution({title:`Unable to download log for ${e.name}`,body:`You may be able to download this log manually from the 'logs' bucket at ${e.log}`})}))}}},ul=cl;var dl=(0,f.A)(ul,ol,al,!1,null,null,null);const ml=dl.exports;function Al(){var e="/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue",n="d7e42db43330b1853f33cb69f891394878fe8106",t=new Function("return this")(),l="__coverage__",i={path:"/openc3/plugins/packages/openc3-cosmos-tool-scriptrunner/src/tools/ScriptRunner/ScriptRunner.vue",statementMap:{0:{start:{line:40,column:20},end:{line:40,column:30}},1:{start:{line:41,column:21},end:{line:41,column:33}},2:{start:{line:42,column:14},end:{line:42,column:21}},3:{start:{line:43,column:11},end:{line:43,column:15}},4:{start:{line:44,column:14},end:{line:44,column:21}},5:{start:{line:45,column:14},end:{line:45,column:21}},6:{start:{line:69,column:4},end:{line:191,column:5}},7:{start:{line:197,column:24},end:{line:197,column:47}},8:{start:{line:198,column:6},end:{line:198,column:39}},9:{start:{line:199,column:6},end:{line:199,column:36}},10:{start:{line:202,column:6},end:{line:204,column:32}},11:{start:{line:207,column:6},end:{line:207,column:67}},12:{start:{line:210,column:6},end:{line:210,column:28}},13:{start:{line:214,column:6},end:{line:214,column:59}},14:{start:{line:214,column:32},end:{line:214,column:59}},15:{start:{line:216,column:6},end:{line:216,column:61}},16:{start:{line:216,column:42},end:{line:216,column:61}},17:{start:{line:217,column:6},end:{line:217,column:59}},18:{start:{line:223,column:6},end:{line:223,column:64}},19:{start:{line:226,column:6},end:{line:469,column:7}},20:{start:{line:235,column:16},end:{line:235,column:30}},21:{start:{line:247,column:20},end:{line:247,column:43}},22:{start:{line:254,column:20},end:{line:254,column:45}},23:{start:{line:264,column:16},end:{line:264,column:31}},24:{start:{line:281,column:16},end:{line:281,column:31}},25:{start:{line:289,column:16},end:{line:289,column:29}},26:{start:{line:300,column:16},end:{line:300,column:31}},27:{start:{line:311,column:16},end:{line:311,column:29}},28:{start:{line:323,column:16},end:{line:323,column:47}},29:{start:{line:331,column:16},end:{line:331,column:50}},30:{start:{line:339,column:16},end:{line:352,column:18}},31:{start:{line:364,column:16},end:{line:364,column:39}},32:{start:{line:375,column:16},end:{line:375,column:60}},33:{start:{line:383,column:16},end:{line:383,column:54}},34:{start:{line:384,column:16},end:{line:384,column:35}},35:{start:{line:391,column:16},end:{line:391,column:41}},36:{start:{line:402,column:16},end:{line:402,column:34}},37:{start:{line:410,column:16},end:{line:410,column:37}},38:{start:{line:418,column:16},end:{line:418,column:39}},39:{start:{line:426,column:16},end:{line:426,column:36}},40:{start:{line:436,column:16},end:{line:436,column:34}},41:{start:{line:444,column:16},end:{line:444,column:39}},42:{start:{line:453,column:16},end:{line:453,column:53}},43:{start:{line:464,column:16},end:{line:464,column:43}},44:{start:{line:472,column:6},end:{line:485,column:7}},45:{start:{line:490,column:6},end:{line:490,column:33}},46:{start:{line:491,column:6},end:{line:493,column:7}},47:{start:{line:492,column:8},end:{line:492,column:36}},48:{start:{line:494,column:6},end:{line:498,column:7}},49:{start:{line:495,column:8},end:{line:495,column:36}},50:{start:{line:497,column:8},end:{line:497,column:37}},51:{start:{line:501,column:6},end:{line:501,column:36}},52:{start:{line:502,column:6},end:{line:506,column:7}},53:{start:{line:503,column:8},end:{line:503,column:58}},54:{start:{line:505,column:8},end:{line:505,column:58}},55:{start:{line:511,column:4},end:{line:511,column:30}},56:{start:{line:512,column:4},end:{line:512,column:36}},57:{start:{line:513,column:4},end:{line:522,column:8}},58:{start:{line:516,column:8},end:{line:518,column:9}},59:{start:{line:517,column:10},end:{line:517,column:34}},60:{start:{line:525,column:4},end:{line:525,column:36}},61:{start:{line:526,column:4},end:{line:526,column:43}},62:{start:{line:528,column:15},end:{line:528,column:32}},63:{start:{line:529,column:16},end:{line:529,column:38}},64:{start:{line:530,column:4},end:{line:530,column:28}},65:{start:{line:531,column:4},end:{line:531,column:28}},66:{start:{line:532,column:4},end:{line:561,column:5}},67:{start:{line:533,column:6},end:{line:535,column:7}},68:{start:{line:534,column:8},end:{line:534,column:16}},69:{start:{line:536,column:6},end:{line:560,column:7}},70:{start:{line:537,column:8},end:{line:537,column:33}},71:{start:{line:538,column:8},end:{line:538,column:31}},72:{start:{line:539,column:13},end:{line:560,column:7}},73:{start:{line:540,column:8},end:{line:540,column:31}},74:{start:{line:542,column:8},end:{line:559,column:10}},75:{start:{line:543,column:10},end:{line:558,column:11}},76:{start:{line:544,column:12},end:{line:550,column:13}},77:{start:{line:546,column:23},end:{line:546,column:52}},78:{start:{line:549,column:14},end:{line:549,column:39}},79:{start:{line:551,column:12},end:{line:557,column:13}},80:{start:{line:553,column:23},end:{line:553,column:51}},81:{start:{line:556,column:14},end:{line:556,column:37}},82:{start:{line:563,column:4},end:{line:567,column:6}},83:{start:{line:568,column:4},end:{line:576,column:5}},84:{start:{line:569,column:6},end:{line:569,column:29}},85:{start:{line:570,column:17},end:{line:570,column:66}},86:{start:{line:571,column:6},end:{line:573,column:7}},87:{start:{line:572,column:8},end:{line:572,column:42}},88:{start:{line:574,column:6},end:{line:574,column:27}},89:{start:{line:575,column:6},end:{line:575,column:27}},90:{start:{line:578,column:4},end:{line:580,column:6}},91:{start:{line:579,column:6},end:{line:579,column:41}},92:{start:{line:583,column:4},end:{line:583,column:45}},93:{start:{line:584,column:4},end:{line:584,column:46}},94:{start:{line:586,column:23},end:{line:607,column:5}},95:{start:{line:608,column:27},end:{line:608,column:63}},96:{start:{line:609,column:29},end:{line:609,column:67}},97:{start:{line:610,column:4},end:{line:610,column:46}},98:{start:{line:611,column:4},end:{line:611,column:50}},99:{start:{line:612,column:4},end:{line:612,column:52}},100:{start:{line:613,column:4},end:{line:613,column:37}},101:{start:{line:614,column:4},end:{line:614,column:44}},102:{start:{line:615,column:4},end:{line:615,column:42}},103:{start:{line:616,column:4},end:{line:616,column:60}},104:{start:{line:617,column:4},end:{line:617,column:59}},105:{start:{line:618,column:4},end:{line:618,column:69}},106:{start:{line:619,column:4},end:{line:619,column:45}},107:{start:{line:620,column:4},end:{line:620,column:23}},108:{start:{line:621,column:4},end:{line:621,column:60}},109:{start:{line:625,column:4},end:{line:625,column:60}},110:{start:{line:626,column:4},end:{line:629,column:5}},111:{start:{line:627,column:6},end:{line:627,column:35}},112:{start:{line:628,column:6},end:{line:628,column:70}},113:{start:{line:631,column:27},end:{line:631,column:58}},114:{start:{line:632,column:4},end:{line:635,column:6}},115:{start:{line:633,column:6},end:{line:633,column:46}},116:{start:{line:634,column:6},end:{line:634,column:45}},117:{start:{line:637,column:4},end:{line:637,column:67}},118:{start:{line:638,column:4},end:{line:638,column:67}},119:{start:{line:640,column:4},end:{line:640,column:19}},120:{start:{line:641,column:4},end:{line:641,column:47}},121:{start:{line:643,column:4},end:{line:653,column:5}},122:{start:{line:644,column:6},end:{line:644,column:69}},123:{start:{line:646,column:6},end:{line:652,column:9}},124:{start:{line:646,column:47},end:{line:652,column:7}},125:{start:{line:649,column:10},end:{line:649,column:37}},126:{start:{line:650,column:10},end:{line:650,column:33}},127:{start:{line:654,column:4},end:{line:664,column:5}},128:{start:{line:655,column:6},end:{line:655,column:44}},129:{start:{line:656,column:6},end:{line:656,column:29}},130:{start:{line:657,column:11},end:{line:664,column:5}},131:{start:{line:658,column:6},end:{line:658,column:60}},132:{start:{line:660,column:6},end:{line:663,column:7}},133:{start:{line:661,column:8},end:{line:661,column:63}},134:{start:{line:662,column:8},end:{line:662,column:36}},135:{start:{line:678,column:4},end:{line:680,column:11}},136:{start:{line:679,column:6},end:{line:679,column:28}},137:{start:{line:683,column:4},end:{line:683,column:25}},138:{start:{line:684,column:4},end:{line:684,column:34}},139:{start:{line:687,column:4},end:{line:687,column:21}},140:{start:{line:688,column:4},end:{line:690,column:5}},141:{start:{line:689,column:6},end:{line:689,column:40}},142:{start:{line:691,column:4},end:{line:694,column:5}},143:{start:{line:692,column:6},end:{line:692,column:37}},144:{start:{line:693,column:6},end:{line:693,column:30}},145:{start:{line:695,column:4},end:{line:695,column:27}},146:{start:{line:698,column:4},end:{line:702,column:5}},147:{start:{line:699,column:6},end:{line:699,column:56}},148:{start:{line:701,column:6},end:{line:701,column:12}},149:{start:{line:706,column:6},end:{line:706,column:26}},150:{start:{line:709,column:6},end:{line:711,column:8}},151:{start:{line:710,column:8},end:{line:710,column:25}},152:{start:{line:714,column:19},end:{line:714,column:66}},153:{start:{line:715,column:14},end:{line:718,column:7}},154:{start:{line:719,column:25},end:{line:719,column:26}},155:{start:{line:720,column:6},end:{line:722,column:7}},156:{start:{line:721,column:8},end:{line:721,column:42}},157:{start:{line:723,column:25},end:{line:723,column:26}},158:{start:{line:724,column:19},end:{line:724,column:69}},159:{start:{line:725,column:6},end:{line:727,column:7}},160:{start:{line:726,column:8},end:{line:726,column:42}},161:{start:{line:728,column:24},end:{line:728,column:70}},162:{start:{line:729,column:6},end:{line:732,column:7}},163:{start:{line:731,column:8},end:{line:731,column:79}},164:{start:{line:735,column:6},end:{line:738,column:7}},165:{start:{line:736,column:8},end:{line:736,column:39}},166:{start:{line:737,column:8},end:{line:737,column:32}},167:{start:{line:739,column:6},end:{line:739,column:36}},168:{start:{line:742,column:6},end:{line:756,column:8}},169:{start:{line:744,column:8},end:{line:754,column:10}},170:{start:{line:745,column:10},end:{line:753,column:11}},171:{start:{line:755,column:8},end:{line:755,column:38}},172:{start:{line:759,column:16},end:{line:759,column:42}},173:{start:{line:760,column:31},end:{line:762,column:26}},174:{start:{line:764,column:17},end:{line:767,column:27}},175:{start:{line:765,column:23},end:{line:765,column:42}},176:{start:{line:766,column:23},end:{line:766,column:35}},177:{start:{line:768,column:18},end:{line:768,column:63}},178:{start:{line:769,column:33},end:{line:778,column:7}},179:{start:{line:770,column:8},end:{line:770,column:37}},180:{start:{line:772,column:8},end:{line:777,column:9}},181:{start:{line:773,column:10},end:{line:776,column:12}},182:{start:{line:779,column:6},end:{line:779,column:60}},183:{start:{line:781,column:33},end:{line:783,column:28}},184:{start:{line:784,column:28},end:{line:786,column:23}},185:{start:{line:787,column:21},end:{line:787,column:66}},186:{start:{line:788,column:17},end:{line:794,column:7}},187:{start:{line:789,column:8},end:{line:789,column:50}},188:{start:{line:790,column:8},end:{line:790,column:50}},189:{start:{line:791,column:8},end:{line:791,column:47}},190:{start:{line:792,column:8},end:{line:792,column:42}},191:{start:{line:793,column:8},end:{line:793,column:62}},192:{start:{line:795,column:21},end:{line:795,column:54}},193:{start:{line:796,column:6},end:{line:797,column:7}},194:{start:{line:797,column:7},end:{line:799,column:29}},195:{start:{line:798,column:8},end:{line:798,column:36}},196:{start:{line:800,column:6},end:{line:800,column:17}},197:{start:{line:803,column:16},end:{line:803,column:42}},198:{start:{line:804,column:33},end:{line:806,column:28}},199:{start:{line:808,column:17},end:{line:811,column:27}},200:{start:{line:809,column:23},end:{line:809,column:42}},201:{start:{line:810,column:23},end:{line:810,column:35}},202:{start:{line:812,column:18},end:{line:812,column:63}},203:{start:{line:813,column:33},end:{line:822,column:7}},204:{start:{line:814,column:8},end:{line:814,column:39}},205:{start:{line:816,column:8},end:{line:821,column:9}},206:{start:{line:817,column:10},end:{line:820,column:12}},207:{start:{line:823,column:6},end:{line:823,column:62}},208:{start:{line:825,column:33},end:{line:827,column:28}},209:{start:{line:828,column:28},end:{line:830,column:23}},210:{start:{line:831,column:21},end:{line:831,column:70}},211:{start:{line:832,column:17},end:{line:838,column:7}},212:{start:{line:833,column:8},end:{line:833,column:50}},213:{start:{line:834,column:8},end:{line:834,column:50}},214:{start:{line:835,column:8},end:{line:835,column:47}},215:{start:{line:836,column:8},end:{line:836,column:42}},216:{start:{line:837,column:8},end:{line:837,column:62}},217:{start:{line:839,column:23},end:{line:839,column:58}},218:{start:{line:840,column:6},end:{line:841,column:7}},219:{start:{line:841,column:7},end:{line:843,column:29}},220:{start:{line:842,column:8},end:{line:842,column:36}},221:{start:{line:844,column:6},end:{line:844,column:17}},222:{start:{line:848,column:6},end:{line:857,column:7}},223:{start:{line:849,column:8},end:{line:849,column:39}},224:{start:{line:850,column:8},end:{line:850,column:31}},225:{start:{line:851,column:13},end:{line:857,column:7}},226:{start:{line:855,column:8},end:{line:855,column:40}},227:{start:{line:856,column:8},end:{line:856,column:31}},228:{start:{line:863,column:6},end:{line:863,column:39}},229:{start:{line:864,column:6},end:{line:864,column:56}},230:{start:{line:865,column:6},end:{line:865,column:39}},231:{start:{line:866,column:6},end:{line:866,column:34}},232:{start:{line:867,column:6},end:{line:867,column:29}},233:{start:{line:868,column:6},end:{line:877,column:7}},234:{start:{line:878,column:6},end:{line:878,column:55}},235:{start:{line:881,column:6},end:{line:897,column:8}},236:{start:{line:882,column:34},end:{line:884,column:9}},237:{start:{line:883,column:17},end:{line:883,column:38}},238:{start:{line:885,column:8},end:{line:896,column:9}},239:{start:{line:886,column:10},end:{line:886,column:48}},240:{start:{line:887,column:10},end:{line:887,column:30}},241:{start:{line:888,column:10},end:{line:888,column:32}},242:{start:{line:889,column:10},end:{line:889,column:48}},243:{start:{line:891,column:10},end:{line:894,column:12}},244:{start:{line:895,column:10},end:{line:895,column:33}},245:{start:{line:900,column:6},end:{line:913,column:8}},246:{start:{line:901,column:8},end:{line:905,column:9}},247:{start:{line:902,column:10},end:{line:902,column:39}},248:{start:{line:903,column:10},end:{line:903,column:33}},249:{start:{line:904,column:10},end:{line:904,column:58}},250:{start:{line:906,column:8},end:{line:909,column:9}},251:{start:{line:907,column:10},end:{line:907,column:47}},252:{start:{line:908,column:10},end:{line:908,column:36}},253:{start:{line:911,column:8},end:{line:911,column:65}},254:{start:{line:912,column:8},end:{line:912,column:23}},255:{start:{line:916,column:6},end:{line:916,column:31}},256:{start:{line:917,column:6},end:{line:917,column:31}},257:{start:{line:918,column:6},end:{line:918,column:38}},258:{start:{line:921,column:20},end:{line:921,column:55}},259:{start:{line:922,column:19},end:{line:924,column:19}},260:{start:{line:925,column:26},end:{line:927,column:34}},261:{start:{line:926,column:25},end:{line:926,column:37}},262:{start:{line:927,column:22},end:{line:927,column:33}},263:{start:{line:928,column:6},end:{line:928,column:41}},264:{start:{line:931,column:19},end:{line:931,column:48}},265:{start:{line:932,column:20},end:{line:932,column:51}},266:{start:{line:933,column:26},end:{line:935,column:44}},267:{start:{line:934,column:25},end:{line:934,column:71}},268:{start:{line:935,column:22},end:{line:935,column:43}},269:{start:{line:936,column:6},end:{line:936,column:41}},270:{start:{line:939,column:22},end:{line:939,column:56}},271:{start:{line:942,column:8},end:{line:945,column:28}},272:{start:{line:946,column:6},end:{line:968,column:10}},273:{start:{line:953,column:20},end:{line:953,column:46}},274:{start:{line:954,column:10},end:{line:959,column:11}},275:{start:{line:955,column:12},end:{line:958,column:14}},276:{start:{line:960,column:10},end:{line:964,column:12}},277:{start:{line:967,column:10},end:{line:967,column:61}},278:{start:{line:971,column:6},end:{line:971,column:44}},279:{start:{line:975,column:6},end:{line:982,column:7}},280:{start:{line:976,column:20},end:{line:976,column:52}},281:{start:{line:977,column:8},end:{line:981,column:9}},282:{start:{line:978,column:10},end:{line:978,column:52}},283:{start:{line:980,column:10},end:{line:980,column:50}},284:{start:{line:985,column:6},end:{line:987,column:7}},285:{start:{line:986,column:8},end:{line:986,column:14}},286:{start:{line:988,column:27},end:{line:992,column:7}},287:{start:{line:990,column:10},end:{line:991,column:32}},288:{start:{line:993,column:25},end:{line:993,column:27}},289:{start:{line:994,column:19},end:{line:994,column:20}},290:{start:{line:995,column:6},end:{line:1006,column:7}},291:{start:{line:997,column:10},end:{line:997,column:42}},292:{start:{line:998,column:10},end:{line:998,column:32}},293:{start:{line:999,column:10},end:{line:999,column:15}},294:{start:{line:1001,column:10},end:{line:1001,column:43}},295:{start:{line:1002,column:10},end:{line:1004,column:11}},296:{start:{line:1003,column:21},end:{line:1003,column:43}},297:{start:{line:1005,column:10},end:{line:1005,column:15}},298:{start:{line:1007,column:6},end:{line:1012,column:8}},299:{start:{line:1008,column:8},end:{line:1008,column:36}},300:{start:{line:1009,column:8},end:{line:1011,column:9}},301:{start:{line:1010,column:10},end:{line:1010,column:45}},302:{start:{line:1015,column:6},end:{line:1018,column:33}},303:{start:{line:1017,column:34},end:{line:1017,column:51}},304:{start:{line:1021,column:6},end:{line:1021,column:29}},305:{start:{line:1022,column:6},end:{line:1024,column:8}},306:{start:{line:1023,column:8},end:{line:1023,column:53}},307:{start:{line:1027,column:6},end:{line:1037,column:10}},308:{start:{line:1033,column:10},end:{line:1033,column:65}},309:{start:{line:1036,column:10},end:{line:1036,column:33}},310:{start:{line:1040,column:6},end:{line:1044,column:7}},311:{start:{line:1041,column:8},end:{line:1041,column:40}},312:{start:{line:1043,column:8},end:{line:1043,column:37}},313:{start:{line:1048,column:6},end:{line:1050,column:7}},314:{start:{line:1049,column:8},end:{line:1049,column:14}},315:{start:{line:1053,column:6},end:{line:1064,column:7}},316:{start:{line:1057,column:8},end:{line:1063,column:9}},317:{start:{line:1058,column:10},end:{line:1058,column:32}},318:{start:{line:1059,column:10},end:{line:1059,column:23}},319:{start:{line:1061,column:10},end:{line:1061,column:32}},320:{start:{line:1062,column:10},end:{line:1062,column:31}},321:{start:{line:1068,column:6},end:{line:1070,column:7}},322:{start:{line:1069,column:8},end:{line:1069,column:14}},323:{start:{line:1071,column:6},end:{line:1075,column:7}},324:{start:{line:1072,column:8},end:{line:1072,column:31}},325:{start:{line:1074,column:8},end:{line:1074,column:30}},326:{start:{line:1078,column:6},end:{line:1096,column:10}},327:{start:{line:1081,column:26},end:{line:1081,column:28}},328:{start:{line:1082,column:10},end:{line:1087,column:11}},329:{start:{line:1083,column:32},end:{line:1085,column:28}},330:{start:{line:1084,column:32},end:{line:1084,column:73}},331:{start:{line:1086,column:12},end:{line:1086,column:107}},332:{start:{line:1088,column:10},end:{line:1091,column:11}},333:{start:{line:1089,column:12},end:{line:1090,column:86}},334:{start:{line:1092,column:10},end:{line:1094,column:11}},335:{start:{line:1093,column:12},end:{line:1093,column:65}},336:{start:{line:1095,column:10},end:{line:1095,column:62}},337:{start:{line:1099,column:6},end:{line:1099,column:37}},338:{start:{line:1100,column:6},end:{line:1100,column:35}},339:{start:{line:1101,column:6},end:{line:1101,column:29}},340:{start:{line:1102,column:6},end:{line:1102,column:38}},341:{start:{line:1103,column:6},end:{line:1103,column:30}},342:{start:{line:1104,column:6},end:{line:1104,column:34}},343:{start:{line:1105,column:6},end:{line:1105,column:31}},344:{start:{line:1106,column:6},end:{line:1106,column:35}},345:{start:{line:1109,column:6},end:{line:1109,column:24}},346:{start:{line:1110,column:6},end:{line:1123,column:10}},347:{start:{line:1115,column:32},end:{line:1115,column:51}},348:{start:{line:1122,column:10},end:{line:1122,column:42}},349:{start:{line:1127,column:6},end:{line:1127,column:28}},350:{start:{line:1128,column:6},end:{line:1128,column:24}},351:{start:{line:1129,column:6},end:{line:1129,column:26}},352:{start:{line:1130,column:6},end:{line:1130,column:33}},353:{start:{line:1131,column:6},end:{line:1131,column:21}},354:{start:{line:1133,column:6},end:{line:1136,column:7}},355:{start:{line:1134,column:8},end:{line:1134,column:45}},356:{start:{line:1135,column:8},end:{line:1135,column:32}},357:{start:{line:1137,column:6},end:{line:1137,column:36}},358:{start:{line:1139,column:6},end:{line:1139,column:29}},359:{start:{line:1142,column:6},end:{line:1142,column:50}},360:{start:{line:1143,column:6},end:{line:1145,column:7}},361:{start:{line:1144,column:8},end:{line:1144,column:38}},362:{start:{line:1148,column:6},end:{line:1148,column:38}},363:{start:{line:1149,column:6},end:{line:1149,column:34}},364:{start:{line:1150,column:6},end:{line:1150,column:37}},365:{start:{line:1152,column:6},end:{line:1152,column:47}},366:{start:{line:1153,column:6},end:{line:1153,column:30}},367:{start:{line:1154,column:6},end:{line:1154,column:38}},368:{start:{line:1155,column:6},end:{line:1155,column:30}},369:{start:{line:1158,column:6},end:{line:1158,column:40}},370:{start:{line:1161,column:6},end:{line:1161,column:18}},371:{start:{line:1167,column:6},end:{line:1167,column:28}},372:{start:{line:1168,column:6},end:{line:1168,column:34}},373:{start:{line:1169,column:6},end:{line:1169,column:30}},374:{start:{line:1170,column:21},end:{line:1170,column:34}},375:{start:{line:1171,column:6},end:{line:1174,column:7}},376:{start:{line:1173,column:8},end:{line:1173,column:36}},377:{start:{line:1175,column:16},end:{line:1175,column:53}},378:{start:{line:1176,column:6},end:{line:1178,column:7}},379:{start:{line:1177,column:8},end:{line:1177,column:28}},380:{start:{line:1179,column:16},end:{line:1179,column:42}},381:{start:{line:1180,column:6},end:{line:1185,column:7}},382:{start:{line:1181,column:8},end:{line:1184,column:10}},383:{start:{line:1186,column:17},end:{line:1188,column:7}},384:{start:{line:1189,column:6},end:{line:1191,column:7}},385:{start:{line:1190,column:8},end:{line:1190,column:35}},386:{start:{line:1192,column:6},end:{line:1198,column:10}},387:{start:{line:1194,column:10},end:{line:1194,column:41}},388:{start:{line:1197,column:10},end:{line:1197,column:31}},389:{start:{line:1203,column:6},end:{line:1203,column:48}},390:{start:{line:1204,column:6},end:{line:1204,column:48}},391:{start:{line:1205,column:6},end:{line:1205,column:64}},392:{start:{line:1208,column:6},end:{line:1213,column:7}},393:{start:{line:1209,column:8},end:{line:1209,column:69}},394:{start:{line:1211,column:8},end:{line:1211,column:39}},395:{start:{line:1212,column:8},end:{line:1212,column:69}},396:{start:{line:1219,column:6},end:{line:1224,column:7}},397:{start:{line:1220,column:8},end:{line:1220,column:31}},398:{start:{line:1221,column:8},end:{line:1221,column:29}},399:{start:{line:1223,column:8},end:{line:1223,column:68}},400:{start:{line:1227,column:6},end:{line:1227,column:66}},401:{start:{line:1230,column:6},end:{line:1259,column:7}},402:{start:{line:1231,column:8},end:{line:1258,column:9}},403:{start:{line:1234,column:10},end:{line:1234,column:64}},404:{start:{line:1237,column:10},end:{line:1252,column:14}},405:{start:{line:1241,column:14},end:{line:1244,column:15}},406:{start:{line:1245,column:14},end:{line:1245,column:73}},407:{start:{line:1246,column:14},end:{line:1246,column:52}},408:{start:{line:1247,column:14},end:{line:1247,column:41}},409:{start:{line:1251,column:14},end:{line:1251,column:46}},410:{start:{line:1254,column:10},end:{line:1254,column:46}},411:{start:{line:1255,column:10},end:{line:1255,column:65}},412:{start:{line:1256,column:10},end:{line:1256,column:48}},413:{start:{line:1257,column:10},end:{line:1257,column:38}},414:{start:{line:1260,column:6},end:{line:1260,column:29}},415:{start:{line:1261,column:22},end:{line:1261,column:54}},416:{start:{line:1262,column:6},end:{line:1315,column:7}},417:{start:{line:1264,column:10},end:{line:1264,column:40}},418:{start:{line:1265,column:10},end:{line:1265,column:43}},419:{start:{line:1266,column:10},end:{line:1266,column:35}},420:{start:{line:1267,column:10},end:{line:1267,column:41}},421:{start:{line:1269,column:10},end:{line:1269,column:33}},422:{start:{line:1270,column:10},end:{line:1274,column:11}},423:{start:{line:1275,column:10},end:{line:1275,column:44}},424:{start:{line:1276,column:10},end:{line:1276,column:57}},425:{start:{line:1277,column:10},end:{line:1277,column:15}},426:{start:{line:1279,column:10},end:{line:1279,column:27}},427:{start:{line:1282,column:10},end:{line:1282,column:41}},428:{start:{line:1287,column:10},end:{line:1293,column:11}},429:{start:{line:1288,column:12},end:{line:1288,column:41}},430:{start:{line:1289,column:12},end:{line:1289,column:44}},431:{start:{line:1291,column:12},end:{line:1291,column:42}},432:{start:{line:1292,column:12},end:{line:1292,column:45}},433:{start:{line:1294,column:10},end:{line:1294,column:35}},434:{start:{line:1295,column:25},end:{line:1297,column:11}},435:{start:{line:1296,column:21},end:{line:1296,column:65}},436:{start:{line:1298,column:10},end:{line:1311,column:11}},437:{start:{line:1299,column:12},end:{line:1299,column:35}},438:{start:{line:1300,column:23},end:{line:1300,column:58}},439:{start:{line:1301,column:12},end:{line:1305,column:13}},440:{start:{line:1306,column:12},end:{line:1306,column:38}},441:{start:{line:1308,column:12},end:{line:1310,column:13}},442:{start:{line:1309,column:14},end:{line:1309,column:53}},443:{start:{line:1312,column:10},end:{line:1312,column:15}},444:{start:{line:1314,column:10},end:{line:1314,column:15}},445:{start:{line:1318,column:18},end:{line:1318,column:19}},446:{start:{line:1319,column:6},end:{line:1435,column:7}},447:{start:{line:1320,column:8},end:{line:1320,column:18}},448:{start:{line:1323,column:20},end:{line:1323,column:21}},449:{start:{line:1324,column:8},end:{line:1434,column:9}},450:{start:{line:1326,column:12},end:{line:1326,column:73}},451:{start:{line:1327,column:12},end:{line:1327,column:62}},452:{start:{line:1328,column:12},end:{line:1330,column:13}},453:{start:{line:1329,column:14},end:{line:1329,column:52}},454:{start:{line:1331,column:12},end:{line:1331,column:17}},455:{start:{line:1338,column:12},end:{line:1338,column:34}},456:{start:{line:1339,column:12},end:{line:1339,column:17}},457:{start:{line:1343,column:12},end:{line:1351,column:13}},458:{start:{line:1344,column:14},end:{line:1350,column:15}},459:{start:{line:1345,column:16},end:{line:1349,column:17}},460:{start:{line:1346,column:18},end:{line:1346,column:58}},461:{start:{line:1348,column:18},end:{line:1348,column:55}},462:{start:{line:1352,column:12},end:{line:1354,column:13}},463:{start:{line:1353,column:14},end:{line:1353,column:33}},464:{start:{line:1355,column:12},end:{line:1355,column:17}},465:{start:{line:1357,column:12},end:{line:1357,column:35}},466:{start:{line:1358,column:12},end:{line:1358,column:17}},467:{start:{line:1360,column:12},end:{line:1360,column:43}},468:{start:{line:1361,column:12},end:{line:1361,column:36}},469:{start:{line:1362,column:12},end:{line:1362,column:17}},470:{start:{line:1365,column:12},end:{line:1368,column:13}},471:{start:{line:1366,column:14},end:{line:1366,column:37}},472:{start:{line:1367,column:14},end:{line:1367,column:35}},473:{start:{line:1369,column:12},end:{line:1369,column:17}},474:{start:{line:1371,column:12},end:{line:1371,column:33}},475:{start:{line:1372,column:12},end:{line:1372,column:17}},476:{start:{line:1374,column:24},end:{line:1374,column:29}},477:{start:{line:1375,column:29},end:{line:1375,column:31}},478:{start:{line:1376,column:12},end:{line:1386,column:13}},479:{start:{line:1377,column:14},end:{line:1384,column:15}},480:{start:{line:1381,column:16},end:{line:1381,column:35}},481:{start:{line:1382,column:16},end:{line:1382,column:28}},482:{start:{line:1383,column:16},end:{line:1383,column:21}},483:{start:{line:1385,column:14},end:{line:1385,column:24}},484:{start:{line:1387,column:12},end:{line:1387,column:61}},485:{start:{line:1388,column:12},end:{line:1388,column:61}},486:{start:{line:1389,column:12},end:{line:1389,column:64}},487:{start:{line:1390,column:12},end:{line:1394,column:13}},488:{start:{line:1391,column:14},end:{line:1391,column:51}},489:{start:{line:1393,column:14},end:{line:1393,column:46}},490:{start:{line:1395,column:12},end:{line:1399,column:13}},491:{start:{line:1396,column:14},end:{line:1396,column:50}},492:{start:{line:1398,column:14},end:{line:1398,column:45}},493:{start:{line:1400,column:12},end:{line:1400,column:64}},494:{start:{line:1401,column:12},end:{line:1406,column:13}},495:{start:{line:1402,column:14},end:{line:1402,column:59}},496:{start:{line:1403,column:14},end:{line:1403,column:70}},497:{start:{line:1405,column:14},end:{line:1405,column:56}},498:{start:{line:1407,column:12},end:{line:1407,column:17}},499:{start:{line:1409,column:12},end:{line:1418,column:13}},500:{start:{line:1410,column:14},end:{line:1416,column:15}},501:{start:{line:1414,column:16},end:{line:1414,column:45}},502:{start:{line:1415,column:16},end:{line:1415,column:21}},503:{start:{line:1417,column:14},end:{line:1417,column:24}},504:{start:{line:1419,column:12},end:{line:1419,column:17}},505:{start:{line:1421,column:12},end:{line:1421,column:29}},506:{start:{line:1422,column:12},end:{line:1422,column:17}},507:{start:{line:1425,column:25},end:{line:1425,column:52}},508:{start:{line:1426,column:12},end:{line:1426,column:57}},509:{start:{line:1427,column:12},end:{line:1427,column:56}},510:{start:{line:1428,column:12},end:{line:1428,column:24}},511:{start:{line:1429,column:12},end:{line:1429,column:17}},512:{start:{line:1433,column:12},end:{line:1433,column:17}},513:{start:{line:1438,column:6},end:{line:1438,column:42}},514:{start:{line:1441,column:6},end:{line:1441,column:29}},515:{start:{line:1442,column:6},end:{line:1442,column:36}},516:{start:{line:1445,column:6},end:{line:1445,column:30}},517:{start:{line:1446,column:6},end:{line:1453,column:8}},518:{start:{line:1456,column:6},end:{line:1461,column:7}},519:{start:{line:1457,column:8},end:{line:1457,column:32}},520:{start:{line:1458,column:8},end:{line:1458,column:32}},521:{start:{line:1459,column:8},end:{line:1459,column:29}},522:{start:{line:1460,column:8},end:{line:1460,column:14}},523:{start:{line:1462,column:6},end:{line:1462,column:42}},524:{start:{line:1463,column:6},end:{line:1463,column:38}},525:{start:{line:1464,column:6},end:{line:1464,column:39}},526:{start:{line:1465,column:6},end:{line:1465,column:34}},527:{start:{line:1466,column:6},end:{line:1466,column:31}},528:{start:{line:1467,column:6},end:{line:1467,column:30}},529:{start:{line:1468,column:6},end:{line:1468,column:30}},530:{start:{line:1469,column:6},end:{line:1469,column:33}},531:{start:{line:1470,column:6},end:{line:1606,column:7}},532:{start:{line:1474,column:10},end:{line:1474,column:33}},533:{start:{line:1475,column:10},end:{line:1475,column:40}},534:{start:{line:1476,column:10},end:{line:1476,column:35}},535:{start:{line:1477,column:10},end:{line:1477,column:42}},536:{start:{line:1479,column:10},end:{line:1484,column:11}},537:{start:{line:1480,column:12},end:{line:1480,column:54}},538:{start:{line:1481,column:17},end:{line:1484,column:11}},539:{start:{line:1483,column:12},end:{line:1483,column:43}},540:{start:{line:1486,column:10},end:{line:1488,column:11}},541:{start:{line:1487,column:12},end:{line:1487,column:36}},542:{start:{line:1489,column:10},end:{line:1508,column:11}},543:{start:{line:1490,column:12},end:{line:1490,column:33}},544:{start:{line:1491,column:12},end:{line:1507,column:13}},545:{start:{line:1492,column:14},end:{line:1498,column:16}},546:{start:{line:1500,column:14},end:{line:1506,column:16}},547:{start:{line:1509,column:10},end:{line:1509,column:30}},548:{start:{line:1510,column:10},end:{line:1510,column:15}},549:{start:{line:1512,column:10},end:{line:1512,column:49}},550:{start:{line:1513,column:10},end:{line:1513,column:97}},551:{start:{line:1514,column:10},end:{line:1516,column:11}},552:{start:{line:1515,column:12},end:{line:1515,column:53}},553:{start:{line:1517,column:10},end:{line:1517,column:40}},554:{start:{line:1518,column:10},end:{line:1518,column:65}},555:{start:{line:1519,column:10},end:{line:1519,column:58}},556:{start:{line:1520,column:10},end:{line:1520,column:33}},557:{start:{line:1521,column:10},end:{line:1521,column:15}},558:{start:{line:1523,column:10},end:{line:1525,column:11}},559:{start:{line:1524,column:12},end:{line:1524,column:58}},560:{start:{line:1526,column:10},end:{line:1528,column:11}},561:{start:{line:1527,column:12},end:{line:1527,column:53}},562:{start:{line:1529,column:10},end:{line:1529,column:44}},563:{start:{line:1530,column:10},end:{line:1530,column:61}},564:{start:{line:1531,column:10},end:{line:1531,column:58}},565:{start:{line:1532,column:10},end:{line:1532,column:33}},566:{start:{line:1533,column:10},end:{line:1533,column:15}},567:{start:{line:1535,column:10},end:{line:1537,column:11}},568:{start:{line:1536,column:12},end:{line:1536,column:58}},569:{start:{line:1538,column:10},end:{line:1540,column:11}},570:{start:{line:1539,column:12},end:{line:1539,column:53}},571:{start:{line:1541,column:10},end:{line:1543,column:11}},572:{start:{line:1542,column:12},end:{line:1542,column:39}},573:{start:{line:1544,column:10},end:{line:1544,column:44}},574:{start:{line:1545,column:10},end:{line:1547,column:12}},575:{start:{line:1546,column:12},end:{line:1546,column:59}},576:{start:{line:1548,column:10},end:{line:1548,column:38}},577:{start:{line:1549,column:10},end:{line:1549,column:58}},578:{start:{line:1550,column:10},end:{line:1550,column:33}},579:{start:{line:1551,column:10},end:{line:1551,column:15}},580:{start:{line:1554,column:10},end:{line:1556,column:11}},581:{start:{line:1555,column:12},end:{line:1555,column:58}},582:{start:{line:1557,column:10},end:{line:1559,column:11}},583:{start:{line:1558,column:12},end:{line:1558,column:53}},584:{start:{line:1560,column:10},end:{line:1560,column:44}},585:{start:{line:1561,column:10},end:{line:1563,column:12}},586:{start:{line:1562,column:12},end:{line:1562,column:59}},587:{start:{line:1564,column:10},end:{line:1566,column:11}},588:{start:{line:1565,column:12},end:{line:1565,column:43}},589:{start:{line:1567,column:10},end:{line:1567,column:58}},590:{start:{line:1568,column:10},end:{line:1568,column:33}},591:{start:{line:1569,column:10},end:{line:1569,column:15}},592:{start:{line:1571,column:10},end:{line:1571,column:47}},593:{start:{line:1572,column:10},end:{line:1572,column:43}},594:{start:{line:1573,column:10},end:{line:1573,column:38}},595:{start:{line:1574,column:10},end:{line:1574,column:15}},596:{start:{line:1576,column:10},end:{line:1585,column:11}},597:{start:{line:1577,column:12},end:{line:1577,column:43}},598:{start:{line:1578,column:12},end:{line:1584,column:14}},599:{start:{line:1586,column:10},end:{line:1586,column:29}},600:{start:{line:1587,column:10},end:{line:1587,column:15}},601:{start:{line:1591,column:10},end:{line:1591,column:40}},602:{start:{line:1592,column:10},end:{line:1592,column:42}},603:{start:{line:1593,column:10},end:{line:1595,column:11}},604:{start:{line:1594,column:12},end:{line:1594,column:49}},605:{start:{line:1596,column:10},end:{line:1598,column:11}},606:{start:{line:1597,column:12},end:{line:1597,column:37}},607:{start:{line:1599,column:10},end:{line:1599,column:31}},608:{start:{line:1600,column:10},end:{line:1600,column:15}},609:{start:{line:1605,column:10},end:{line:1605,column:15}},610:{start:{line:1611,column:22},end:{line:1611,column:30}},611:{start:{line:1613,column:21},end:{line:1613,column:23}},612:{start:{line:1614,column:6},end:{line:1635,column:7}},613:{start:{line:1615,column:8},end:{line:1615,column:22}},614:{start:{line:1616,column:8},end:{line:1634,column:10}},615:{start:{line:1617,column:10},end:{line:1617,column:35}},616:{start:{line:1618,column:10},end:{line:1633,column:11}},617:{start:{line:1626,column:14},end:{line:1631,column:15}},618:{start:{line:1637,column:6},end:{line:1649,column:8}},619:{start:{line:1638,column:8},end:{line:1648,column:10}},620:{start:{line:1647,column:10},end:{line:1647,column:32}},621:{start:{line:1652,column:6},end:{line:1652,column:30}},622:{start:{line:1653,column:6},end:{line:1653,column:40}},623:{start:{line:1654,column:6},end:{line:1654,column:27}},624:{start:{line:1658,column:6},end:{line:1658,column:23}},625:{start:{line:1659,column:6},end:{line:1659,column:34}},626:{start:{line:1660,column:6},end:{line:1660,column:33}},627:{start:{line:1661,column:6},end:{line:1661,column:30}},628:{start:{line:1662,column:6},end:{line:1662,column:21}},629:{start:{line:1663,column:6},end:{line:1663,column:38}},630:{start:{line:1664,column:6},end:{line:1664,column:29}},631:{start:{line:1665,column:6},end:{line:1665,column:28}},632:{start:{line:1666,column:6},end:{line:1666,column:30}},633:{start:{line:1667,column:6},end:{line:1667,column:36}},634:{start:{line:1668,column:6},end:{line:1668,column:30}},635:{start:{line:1669,column:6},end:{line:1674,column:27}},636:{start:{line:1675,column:6},end:{line:1675,column:38}},637:{start:{line:1676,column:6},end:{line:1676,column:21}},638:{start:{line:1679,column:6},end:{line:1679,column:20}},639:{start:{line:1680,column:6},end:{line:1720,column:2}},640:{start:{line:1721,column:6},end:{line:1721,column:33}},641:{start:{line:1724,column:6},end:{line:1724,column:20}},642:{start:{line:1725,column:6},end:{line:1763,column:2}},643:{start:{line:1764,column:6},end:{line:1764,column:33}},644:{start:{line:1768,column:18},end:{line:1768,column:68}},645:{start:{line:1768,column:47},end:{line:1768,column:67}},646:{start:{line:1769,column:6},end:{line:1771,column:7}},647:{start:{line:1770,column:8},end:{line:1770,column:36}},648:{start:{line:1773,column:6},end:{line:1780,column:8}},649:{start:{line:1777,column:10},end:{line:1777,column:37}},650:{start:{line:1778,column:10},end:{line:1778,column:33}},651:{start:{line:1781,column:6},end:{line:1783,column:7}},652:{start:{line:1782,column:8},end:{line:1782,column:25}},653:{start:{line:1785,column:6},end:{line:1785,column:73}},654:{start:{line:1788,column:6},end:{line:1788,column:75}},655:{start:{line:1788,column:50},end:{line:1788,column:74}},656:{start:{line:1789,column:6},end:{line:1789,column:73}},657:{start:{line:1790,column:6},end:{line:1792,column:7}},658:{start:{line:1791,column:8},end:{line:1791,column:58}},659:{start:{line:1795,column:6},end:{line:1795,column:26}},660:{start:{line:1800,column:6},end:{line:1800,column:30}},661:{start:{line:1801,column:6},end:{line:1801,column:35}},662:{start:{line:1802,column:6},end:{line:1836,column:10}},663:{start:{line:1809,column:23},end:{line:1812,column:11}},664:{start:{line:1813,column:10},end:{line:1815,column:11}},665:{start:{line:1814,column:12},end:{line:1814,column:61}},666:{start:{line:1816,column:10},end:{line:1818,column:11}},667:{start:{line:1817,column:12},end:{line:1817,column:47}},668:{start:{line:1819,column:10},end:{line:1821,column:11}},669:{start:{line:1820,column:12},end:{line:1820,column:51}},670:{start:{line:1822,column:25},end:{line:1822,column:45}},671:{start:{line:1823,column:30},end:{line:1823,column:55}},672:{start:{line:1824,column:10},end:{line:1824,column:59}},673:{start:{line:1825,column:10},end:{line:1825,column:33}},674:{start:{line:1828,column:10},end:{line:1833,column:11}},675:{start:{line:1829,column:12},end:{line:1832,column:14}},676:{start:{line:1834,column:10},end:{line:1834,column:46}},677:{start:{line:1835,column:10},end:{line:1835,column:24}},678:{start:{line:1840,column:6},end:{line:1840,column:21}},679:{start:{line:1842,column:24},end:{line:1842,column:47}},680:{start:{line:1843,column:6},end:{line:1849,column:7}},681:{start:{line:1845,column:8},end:{line:1848,column:9}},682:{start:{line:1846,column:10},end:{line:1846,column:27}},683:{start:{line:1847,column:10},end:{line:1847,column:32}},684:{start:{line:1850,column:6},end:{line:1850,column:33}},685:{start:{line:1852,column:6},end:{line:1860,column:27}},686:{start:{line:1866,column:18},end:{line:1866,column:42}},687:{start:{line:1867,column:6},end:{line:1867,column:60}},688:{start:{line:1869,column:6},end:{line:1873,column:7}},689:{start:{line:1870,column:8},end:{line:1870,column:58}},690:{start:{line:1872,column:8},end:{line:1872,column:56}},691:{start:{line:1874,column:6},end:{line:1874,column:33}},692:{start:{line:1875,column:6},end:{line:1875,column:49}},693:{start:{line:1876,column:6},end:{line:1876,column:46}},694:{start:{line:1877,column:6},end:{line:1877,column:39}},695:{start:{line:1878,column:6},end:{line:1878,column:28}},696:{start:{line:1879,column:6},end:{line:1879,column:30}},697:{start:{line:1880,column:6},end:{line:1880,column:37}},698:{start:{line:1882,column:6},end:{line:1889,column:7}},699:{start:{line:1883,column:8},end:{line:1883,column:31}},700:{start:{line:1884,column:8},end:{line:1884,column:35}},701:{start:{line:1885,column:8},end:{line:1885,column:37}},702:{start:{line:1887,column:8},end:{line:1887,column:32}},703:{start:{line:1888,column:8},end:{line:1888,column:38}},704:{start:{line:1890,column:6},end:{line:1893,column:7}},705:{start:{line:1891,column:8},end:{line:1891,column:36}},706:{start:{line:1892,column:8},end:{line:1892,column:34}},707:{start:{line:1895,column:6},end:{line:1895,column:54}},708:{start:{line:1896,column:6},end:{line:1896,column:21}},709:{start:{line:1899,column:6},end:{line:1901,column:7}},710:{start:{line:1900,column:19},end:{line:1900,column:52}},711:{start:{line:1902,column:6},end:{line:1902,column:73}},712:{start:{line:1905,column:23},end:{line:1905,column:62}},713:{start:{line:1906,column:25},end:{line:1906,column:58}},714:{start:{line:1907,column:23},end:{line:1907,column:50}},715:{start:{line:1908,column:25},end:{line:1910,column:7}},716:{start:{line:1911,column:25},end:{line:1911,column:44}},717:{start:{line:1912,column:17},end:{line:1912,column:39}},718:{start:{line:1913,column:18},end:{line:1913,column:34}},719:{start:{line:1914,column:6},end:{line:1930,column:7}},720:{start:{line:1915,column:8},end:{line:1917,column:9}},721:{start:{line:1916,column:10},end:{line:1916,column:23}},722:{start:{line:1918,column:8},end:{line:1920,column:9}},723:{start:{line:1919,column:10},end:{line:1919,column:25}},724:{start:{line:1921,column:8},end:{line:1923,column:9}},725:{start:{line:1922,column:10},end:{line:1922,column:23}},726:{start:{line:1924,column:8},end:{line:1926,column:9}},727:{start:{line:1925,column:10},end:{line:1925,column:25}},728:{start:{line:1927,column:8},end:{line:1929,column:9}},729:{start:{line:1928,column:10},end:{line:1928,column:25}},730:{start:{line:1931,column:6},end:{line:1931,column:22}},731:{start:{line:1936,column:6},end:{line:1938,column:7}},732:{start:{line:1937,column:8},end:{line:1937,column:14}},733:{start:{line:1939,column:6},end:{line:2024,column:7}},734:{start:{line:1940,column:28},end:{line:1940,column:52}},735:{start:{line:1941,column:8},end:{line:1973,column:9}},736:{start:{line:1942,column:10},end:{line:1972,column:11}},737:{start:{line:1944,column:12},end:{line:1944,column:25}},738:{start:{line:1945,column:12},end:{line:1945,column:18}},739:{start:{line:1948,column:12},end:{line:1971,column:13}},740:{start:{line:1949,column:29},end:{line:1949,column:50}},741:{start:{line:1950,column:14},end:{line:1968,column:15}},742:{start:{line:1954,column:16},end:{line:1958,column:28}},743:{start:{line:1959,column:21},end:{line:1968,column:15}},744:{start:{line:1960,column:16},end:{line:1964,column:28}},745:{start:{line:1967,column:16},end:{line:1967,column:22}},746:{start:{line:1969,column:14},end:{line:1969,column:47}},747:{start:{line:1970,column:14},end:{line:1970,column:45}},748:{start:{line:1974,column:8},end:{line:1974,column:28}},749:{start:{line:1975,column:8},end:{line:2021,column:12}},750:{start:{line:1982,column:12},end:{line:2005,column:13}},751:{start:{line:1983,column:14},end:{line:1991,column:15}},752:{start:{line:1984,column:16},end:{line:1984,column:45}},753:{start:{line:1985,column:16},end:{line:1985,column:39}},754:{start:{line:1986,column:16},end:{line:1986,column:64}},755:{start:{line:1988,column:16},end:{line:1988,column:46}},756:{start:{line:1989,column:16},end:{line:1989,column:40}},757:{start:{line:1990,column:16},end:{line:1990,column:34}},758:{start:{line:1992,column:14},end:{line:1995,column:15}},759:{start:{line:1993,column:16},end:{line:1993,column:53}},760:{start:{line:1994,column:16},end:{line:1994,column:42}},761:{start:{line:1996,column:14},end:{line:1996,column:36}},762:{start:{line:1997,column:14},end:{line:1999,column:22}},763:{start:{line:1998,column:16},end:{line:1998,column:37}},764:{start:{line:2001,column:14},end:{line:2001,column:35}},765:{start:{line:2002,column:14},end:{line:2002,column:38}},766:{start:{line:2003,column:14},end:{line:2003,column:105}},767:{start:{line:2004,column:14},end:{line:2004,column:35}},768:{start:{line:2006,column:12},end:{line:2006,column:27}},769:{start:{line:2007,column:12},end:{line:2007,column:27}},770:{start:{line:2010,column:12},end:{line:2010,column:33}},771:{start:{line:2013,column:12},end:{line:2019,column:13}},772:{start:{line:2014,column:14},end:{line:2014,column:38}},773:{start:{line:2015,column:14},end:{line:2015,column:51}},774:{start:{line:2017,column:14},end:{line:2017,column:38}},775:{start:{line:2018,column:14},end:{line:2018,column:105}},776:{start:{line:2020,column:12},end:{line:2020,column:33}},777:{start:{line:2023,column:8},end:{line:2023,column:62}},778:{start:{line:2027,column:6},end:{line:2027,column:28}},779:{start:{line:2030,column:6},end:{line:2030,column:44}},780:{start:{line:2031,column:6},end:{line:2031,column:33}},781:{start:{line:2032,column:6},end:{line:2035,column:7}},782:{start:{line:2033,column:8},end:{line:2033,column:67}},783:{start:{line:2034,column:8},end:{line:2034,column:32}},784:{start:{line:2036,column:6},end:{line:2036,column:33}},785:{start:{line:2039,column:21},end:{line:2039,column:34}},786:{start:{line:2040,column:6},end:{line:2042,column:7}},787:{start:{line:2041,column:8},end:{line:2041,column:36}},788:{start:{line:2043,column:6},end:{line:2065,column:10}},789:{start:{line:2049,column:10},end:{line:2051,column:12}},790:{start:{line:2054,column:10},end:{line:2054,column:41}},791:{start:{line:2055,column:10},end:{line:2055,column:24}},792:{start:{line:2058,column:10},end:{line:2064,column:11}},793:{start:{line:2059,column:32},end:{line:2062,column:13}},794:{start:{line:2063,column:12},end:{line:2063,column:44}},795:{start:{line:2068,column:19},end:{line:2070,column:8}},796:{start:{line:2072,column:19},end:{line:2072,column:46}},797:{start:{line:2073,column:6},end:{line:2073,column:43}},798:{start:{line:2074,column:6},end:{line:2074,column:50}},799:{start:{line:2075,column:6},end:{line:2075,column:18}},800:{start:{line:2079,column:6},end:{line:2089,column:8}},801:{start:{line:2086,column:8},end:{line:2086,column:52}},802:{start:{line:2087,column:8},end:{line:2087,column:69}},803:{start:{line:2088,column:8},end:{line:2088,column:36}},804:{start:{line:2092,column:6},end:{line:2102,column:8}},805:{start:{line:2099,column:8},end:{line:2099,column:52}},806:{start:{line:2100,column:8},end:{line:2100,column:69}},807:{start:{line:2101,column:8},end:{line:2101,column:36}},808:{start:{line:2105,column:6},end:{line:2105,column:71}},809:{start:{line:2108,column:6},end:{line:2108,column:38}},810:{start:{line:2111,column:6},end:{line:2111,column:48}},811:{start:{line:2114,column:6},end:{line:2141,column:7}},812:{start:{line:2115,column:8},end:{line:2115,column:23}},813:{start:{line:2116,column:8},end:{line:2116,column:57}},814:{start:{line:2117,column:13},end:{line:2141,column:7}},815:{start:{line:2118,column:8},end:{line:2118,column:42}},816:{start:{line:2119,column:8},end:{line:2119,column:57}},817:{start:{line:2121,column:8},end:{line:2125,column:10}},818:{start:{line:2126,column:8},end:{line:2126,column:23}},819:{start:{line:2127,column:13},end:{line:2141,column:7}},820:{start:{line:2128,column:8},end:{line:2128,column:35}},821:{start:{line:2129,column:8},end:{line:2131,column:9}},822:{start:{line:2130,column:10},end:{line:2130,column:63}},823:{start:{line:2132,column:8},end:{line:2132,column:62}},824:{start:{line:2134,column:8},end:{line:2134,column:30}},825:{start:{line:2135,column:13},end:{line:2141,column:7}},826:{start:{line:2136,column:8},end:{line:2136,column:35}},827:{start:{line:2137,column:8},end:{line:2139,column:9}},828:{start:{line:2138,column:10},end:{line:2138,column:36}},829:{start:{line:2140,column:8},end:{line:2140,column:62}},830:{start:{line:2144,column:25},end:{line:2144,column:57}},831:{start:{line:2145,column:6},end:{line:2147,column:70}},832:{start:{line:2146,column:25},end:{line:2146,column:60}},833:{start:{line:2147,column:29},end:{line:2147,column:69}},834:{start:{line:2150,column:6},end:{line:2161,column:10}},835:{start:{line:2159,column:10},end:{line:2159,column:30}},836:{start:{line:2160,column:10},end:{line:2160,column:32}},837:{start:{line:2164,column:6},end:{line:2166,column:7}},838:{start:{line:2165,column:8},end:{line:2165,column:68}},839:{start:{line:2169,column:6},end:{line:2175,column:7}},840:{start:{line:2174,column:8},end:{line:2174,column:63}},841:{start:{line:2178,column:6},end:{line:2178,column:38}},842:{start:{line:2181,column:18},end:{line:2181,column:19}},843:{start:{line:2182,column:6},end:{line:2188,column:7}},844:{start:{line:2183,column:8},end:{line:2186,column:9}},845:{start:{line:2184,column:10},end:{line:2184,column:39}},846:{start:{line:2185,column:10},end:{line:2185,column:15}},847:{start:{line:2187,column:8},end:{line:2187,column:18}}},fnMap:{0:{name:"(anonymous_0)",decl:{start:{line:68,column:2},end:{line:68,column:3}},loc:{start:{line:68,column:9},end:{line:192,column:3}},line:68},1:{name:"(anonymous_1)",decl:{start:{line:137,column:18},end:{line:137,column:19}},loc:{start:{line:137,column:24},end:{line:137,column:26}},line:137},2:{name:"(anonymous_2)",decl:{start:{line:145,column:18},end:{line:145,column:19}},loc:{start:{line:145,column:24},end:{line:145,column:26}},line:145},3:{name:"(anonymous_3)",decl:{start:{line:155,column:18},end:{line:155,column:19}},loc:{start:{line:155,column:24},end:{line:155,column:26}},line:155},4:{name:"(anonymous_4)",decl:{start:{line:165,column:18},end:{line:165,column:19}},loc:{start:{line:165,column:24},end:{line:165,column:26}},line:165},5:{name:"(anonymous_5)",decl:{start:{line:195,column:14},end:{line:195,column:15}},loc:{start:{line:195,column:26},end:{line:200,column:5}},line:195},6:{name:"(anonymous_6)",decl:{start:{line:201,column:21},end:{line:201,column:22}},loc:{start:{line:201,column:33},end:{line:205,column:5}},line:201},7:{name:"(anonymous_7)",decl:{start:{line:206,column:26},end:{line:206,column:27}},loc:{start:{line:206,column:38},end:{line:208,column:5}},line:206},8:{name:"(anonymous_8)",decl:{start:{line:209,column:14},end:{line:209,column:15}},loc:{start:{line:209,column:26},end:{line:211,column:5}},line:209},9:{name:"(anonymous_9)",decl:{start:{line:213,column:18},end:{line:213,column:19}},loc:{start:{line:213,column:30},end:{line:218,column:5}},line:213},10:{name:"(anonymous_10)",decl:{start:{line:222,column:21},end:{line:222,column:22}},loc:{start:{line:222,column:33},end:{line:224,column:5}},line:222},11:{name:"(anonymous_11)",decl:{start:{line:225,column:11},end:{line:225,column:12}},loc:{start:{line:225,column:23},end:{line:470,column:5}},line:225},12:{name:"(anonymous_12)",decl:{start:{line:234,column:23},end:{line:234,column:24}},loc:{start:{line:234,column:29},end:{line:236,column:15}},line:234},13:{name:"(anonymous_13)",decl:{start:{line:246,column:27},end:{line:246,column:28}},loc:{start:{line:246,column:33},end:{line:248,column:19}},line:246},14:{name:"(anonymous_14)",decl:{start:{line:253,column:27},end:{line:253,column:28}},loc:{start:{line:253,column:33},end:{line:255,column:19}},line:253},15:{name:"(anonymous_15)",decl:{start:{line:263,column:23},end:{line:263,column:24}},loc:{start:{line:263,column:29},end:{line:265,column:15}},line:263},16:{name:"(anonymous_16)",decl:{start:{line:280,column:23},end:{line:280,column:24}},loc:{start:{line:280,column:29},end:{line:282,column:15}},line:280},17:{name:"(anonymous_17)",decl:{start:{line:288,column:23},end:{line:288,column:24}},loc:{start:{line:288,column:29},end:{line:290,column:15}},line:288},18:{name:"(anonymous_18)",decl:{start:{line:299,column:23},end:{line:299,column:24}},loc:{start:{line:299,column:29},end:{line:301,column:15}},line:299},19:{name:"(anonymous_19)",decl:{start:{line:310,column:23},end:{line:310,column:24}},loc:{start:{line:310,column:29},end:{line:312,column:15}},line:310},20:{name:"(anonymous_20)",decl:{start:{line:322,column:23},end:{line:322,column:24}},loc:{start:{line:322,column:29},end:{line:324,column:15}},line:322},21:{name:"(anonymous_21)",decl:{start:{line:330,column:23},end:{line:330,column:24}},loc:{start:{line:330,column:29},end:{line:332,column:15}},line:330},22:{name:"(anonymous_22)",decl:{start:{line:338,column:23},end:{line:338,column:24}},loc:{start:{line:338,column:29},end:{line:353,column:15}},line:338},23:{name:"(anonymous_23)",decl:{start:{line:363,column:23},end:{line:363,column:24}},loc:{start:{line:363,column:29},end:{line:365,column:15}},line:363},24:{name:"(anonymous_24)",decl:{start:{line:374,column:23},end:{line:374,column:24}},loc:{start:{line:374,column:29},end:{line:376,column:15}},line:374},25:{name:"(anonymous_25)",decl:{start:{line:382,column:23},end:{line:382,column:24}},loc:{start:{line:382,column:29},end:{line:385,column:15}},line:382},26:{name:"(anonymous_26)",decl:{start:{line:383,column:46},end:{line:383,column:47}},loc:{start:{line:383,column:52},end:{line:383,column:54}},line:383},27:{name:"(anonymous_27)",decl:{start:{line:390,column:23},end:{line:390,column:24}},loc:{start:{line:390,column:29},end:{line:392,column:15}},line:390},28:{name:"(anonymous_28)",decl:{start:{line:401,column:23},end:{line:401,column:24}},loc:{start:{line:401,column:29},end:{line:403,column:15}},line:401},29:{name:"(anonymous_29)",decl:{start:{line:409,column:23},end:{line:409,column:24}},loc:{start:{line:409,column:29},end:{line:411,column:15}},line:409},30:{name:"(anonymous_30)",decl:{start:{line:417,column:23},end:{line:417,column:24}},loc:{start:{line:417,column:29},end:{line:419,column:15}},line:417},31:{name:"(anonymous_31)",decl:{start:{line:425,column:23},end:{line:425,column:24}},loc:{start:{line:425,column:29},end:{line:427,column:15}},line:425},32:{name:"(anonymous_32)",decl:{start:{line:435,column:23},end:{line:435,column:24}},loc:{start:{line:435,column:29},end:{line:437,column:15}},line:435},33:{name:"(anonymous_33)",decl:{start:{line:443,column:23},end:{line:443,column:24}},loc:{start:{line:443,column:29},end:{line:445,column:15}},line:443},34:{name:"(anonymous_34)",decl:{start:{line:452,column:23},end:{line:452,column:24}},loc:{start:{line:452,column:33},end:{line:454,column:15}},line:452},35:{name:"(anonymous_35)",decl:{start:{line:463,column:23},end:{line:463,column:24}},loc:{start:{line:463,column:29},end:{line:465,column:15}},line:463},36:{name:"(anonymous_36)",decl:{start:{line:471,column:31},end:{line:471,column:32}},loc:{start:{line:471,column:43},end:{line:486,column:5}},line:471},37:{name:"(anonymous_37)",decl:{start:{line:489,column:14},end:{line:489,column:15}},loc:{start:{line:489,column:29},end:{line:499,column:5}},line:489},38:{name:"(anonymous_38)",decl:{start:{line:500,column:18},end:{line:500,column:19}},loc:{start:{line:500,column:38},end:{line:507,column:5}},line:500},39:{name:"(anonymous_39)",decl:{start:{line:509,column:11},end:{line:509,column:12}},loc:{start:{line:509,column:29},end:{line:581,column:3}},line:509},40:{name:"(anonymous_40)",decl:{start:{line:515,column:12},end:{line:515,column:13}},loc:{start:{line:515,column:26},end:{line:519,column:7}},line:515},41:{name:"(anonymous_41)",decl:{start:{line:520,column:13},end:{line:520,column:14}},loc:{start:{line:520,column:24},end:{line:522,column:7}},line:520},42:{name:"(anonymous_42)",decl:{start:{line:542,column:56},end:{line:542,column:57}},loc:{start:{line:542,column:70},end:{line:559,column:9}},line:542},43:{name:"(anonymous_43)",decl:{start:{line:546,column:16},end:{line:546,column:17}},loc:{start:{line:546,column:23},end:{line:546,column:52}},line:546},44:{name:"(anonymous_44)",decl:{start:{line:553,column:16},end:{line:553,column:17}},loc:{start:{line:553,column:23},end:{line:553,column:51}},line:553},45:{name:"(anonymous_45)",decl:{start:{line:578,column:61},end:{line:578,column:62}},loc:{start:{line:578,column:75},end:{line:580,column:5}},line:578},46:{name:"(anonymous_46)",decl:{start:{line:582,column:11},end:{line:582,column:12}},loc:{start:{line:582,column:29},end:{line:681,column:3}},line:582},47:{name:"(anonymous_47)",decl:{start:{line:632,column:37},end:{line:632,column:38}},loc:{start:{line:632,column:58},end:{line:635,column:5}},line:632},48:{name:"(anonymous_48)",decl:{start:{line:646,column:36},end:{line:646,column:37}},loc:{start:{line:646,column:47},end:{line:652,column:7}},line:646},49:{name:"(anonymous_49)",decl:{start:{line:648,column:17},end:{line:648,column:18}},loc:{start:{line:648,column:34},end:{line:651,column:9}},line:648},50:{name:"(anonymous_50)",decl:{start:{line:678,column:38},end:{line:678,column:39}},loc:{start:{line:678,column:50},end:{line:680,column:5}},line:678},51:{name:"(anonymous_51)",decl:{start:{line:682,column:2},end:{line:682,column:3}},loc:{start:{line:682,column:18},end:{line:685,column:3}},line:682},52:{name:"(anonymous_52)",decl:{start:{line:686,column:2},end:{line:686,column:3}},loc:{start:{line:686,column:14},end:{line:696,column:3}},line:686},53:{name:"(anonymous_53)",decl:{start:{line:697,column:21},end:{line:697,column:22}},loc:{start:{line:697,column:47},end:{line:703,column:3}},line:697},54:{name:"(anonymous_54)",decl:{start:{line:705,column:4},end:{line:705,column:5}},loc:{start:{line:705,column:15},end:{line:712,column:5}},line:705},55:{name:"(anonymous_55)",decl:{start:{line:709,column:21},end:{line:709,column:22}},loc:{start:{line:709,column:27},end:{line:711,column:7}},line:709},56:{name:"(anonymous_56)",decl:{start:{line:713,column:4},end:{line:713,column:5}},loc:{start:{line:713,column:17},end:{line:733,column:5}},line:713},57:{name:"(anonymous_57)",decl:{start:{line:734,column:4},end:{line:734,column:5}},loc:{start:{line:734,column:23},end:{line:740,column:5}},line:734},58:{name:"(anonymous_58)",decl:{start:{line:741,column:4},end:{line:741,column:5}},loc:{start:{line:741,column:19},end:{line:757,column:5}},line:741},59:{name:"(anonymous_59)",decl:{start:{line:742,column:43},end:{line:742,column:44}},loc:{start:{line:742,column:57},end:{line:756,column:7}},line:742},60:{name:"(anonymous_60)",decl:{start:{line:744,column:54},end:{line:744,column:55}},loc:{start:{line:744,column:65},end:{line:754,column:9}},line:744},61:{name:"(anonymous_61)",decl:{start:{line:758,column:4},end:{line:758,column:5}},loc:{start:{line:758,column:36},end:{line:801,column:5}},line:758},62:{name:"(anonymous_62)",decl:{start:{line:765,column:16},end:{line:765,column:17}},loc:{start:{line:765,column:23},end:{line:765,column:42}},line:765},63:{name:"(anonymous_63)",decl:{start:{line:766,column:16},end:{line:766,column:17}},loc:{start:{line:766,column:23},end:{line:766,column:35}},line:766},64:{name:"(anonymous_64)",decl:{start:{line:769,column:33},end:{line:769,column:34}},loc:{start:{line:769,column:45},end:{line:778,column:7}},line:769},65:{name:"(anonymous_65)",decl:{start:{line:788,column:17},end:{line:788,column:18}},loc:{start:{line:788,column:29},end:{line:794,column:7}},line:788},66:{name:"(anonymous_66)",decl:{start:{line:797,column:8},end:{line:797,column:9}},loc:{start:{line:797,column:20},end:{line:799,column:7}},line:797},67:{name:"(anonymous_67)",decl:{start:{line:802,column:4},end:{line:802,column:5}},loc:{start:{line:802,column:38},end:{line:845,column:5}},line:802},68:{name:"(anonymous_68)",decl:{start:{line:809,column:16},end:{line:809,column:17}},loc:{start:{line:809,column:23},end:{line:809,column:42}},line:809},69:{name:"(anonymous_69)",decl:{start:{line:810,column:16},end:{line:810,column:17}},loc:{start:{line:810,column:23},end:{line:810,column:35}},line:810},70:{name:"(anonymous_70)",decl:{start:{line:813,column:33},end:{line:813,column:34}},loc:{start:{line:813,column:45},end:{line:822,column:7}},line:813},71:{name:"(anonymous_71)",decl:{start:{line:832,column:17},end:{line:832,column:18}},loc:{start:{line:832,column:29},end:{line:838,column:7}},line:832},72:{name:"(anonymous_72)",decl:{start:{line:841,column:8},end:{line:841,column:9}},loc:{start:{line:841,column:20},end:{line:843,column:7}},line:841},73:{name:"(anonymous_73)",decl:{start:{line:846,column:4},end:{line:846,column:5}},loc:{start:{line:846,column:28},end:{line:858,column:5}},line:846},74:{name:"(anonymous_74)",decl:{start:{line:861,column:4},end:{line:861,column:5}},loc:{start:{line:861,column:30},end:{line:879,column:5}},line:861},75:{name:"(anonymous_75)",decl:{start:{line:880,column:26},end:{line:880,column:27}},loc:{start:{line:880,column:40},end:{line:898,column:5}},line:880},76:{name:"(anonymous_76)",decl:{start:{line:881,column:56},end:{line:881,column:57}},loc:{start:{line:881,column:70},end:{line:897,column:7}},line:881},77:{name:"(anonymous_77)",decl:{start:{line:883,column:10},end:{line:883,column:11}},loc:{start:{line:883,column:17},end:{line:883,column:38}},line:883},78:{name:"(anonymous_78)",decl:{start:{line:899,column:19},end:{line:899,column:20}},loc:{start:{line:899,column:31},end:{line:914,column:5}},line:899},79:{name:"(anonymous_79)",decl:{start:{line:900,column:59},end:{line:900,column:60}},loc:{start:{line:900,column:73},end:{line:913,column:7}},line:900},80:{name:"(anonymous_80)",decl:{start:{line:915,column:30},end:{line:915,column:31}},loc:{start:{line:915,column:48},end:{line:919,column:5}},line:915},81:{name:"(anonymous_81)",decl:{start:{line:920,column:19},end:{line:920,column:20}},loc:{start:{line:920,column:31},end:{line:929,column:5}},line:920},82:{name:"(anonymous_82)",decl:{start:{line:926,column:16},end:{line:926,column:17}},loc:{start:{line:926,column:25},end:{line:926,column:37}},line:926},83:{name:"(anonymous_83)",decl:{start:{line:927,column:13},end:{line:927,column:14}},loc:{start:{line:927,column:22},end:{line:927,column:33}},line:927},84:{name:"(anonymous_84)",decl:{start:{line:930,column:22},end:{line:930,column:23}},loc:{start:{line:930,column:34},end:{line:937,column:5}},line:930},85:{name:"(anonymous_85)",decl:{start:{line:934,column:16},end:{line:934,column:17}},loc:{start:{line:934,column:25},end:{line:934,column:71}},line:934},86:{name:"(anonymous_86)",decl:{start:{line:935,column:13},end:{line:935,column:14}},loc:{start:{line:935,column:22},end:{line:935,column:43}},line:935},87:{name:"(anonymous_87)",decl:{start:{line:938,column:4},end:{line:938,column:5}},loc:{start:{line:938,column:46},end:{line:969,column:5}},line:938},88:{name:"(anonymous_88)",decl:{start:{line:952,column:14},end:{line:952,column:15}},loc:{start:{line:952,column:29},end:{line:965,column:9}},line:952},89:{name:"(anonymous_89)",decl:{start:{line:966,column:14},end:{line:966,column:15}},loc:{start:{line:966,column:28},end:{line:968,column:9}},line:966},90:{name:"(anonymous_90)",decl:{start:{line:970,column:22},end:{line:970,column:23}},loc:{start:{line:970,column:34},end:{line:972,column:5}},line:970},91:{name:"(anonymous_91)",decl:{start:{line:973,column:22},end:{line:973,column:23}},loc:{start:{line:973,column:40},end:{line:983,column:5}},line:973},92:{name:"(anonymous_92)",decl:{start:{line:984,column:23},end:{line:984,column:24}},loc:{start:{line:984,column:50},end:{line:1013,column:5}},line:984},93:{name:"(anonymous_93)",decl:{start:{line:989,column:8},end:{line:989,column:9}},loc:{start:{line:990,column:10},end:{line:991,column:32}},line:990},94:{name:"(anonymous_94)",decl:{start:{line:1003,column:12},end:{line:1003,column:13}},loc:{start:{line:1003,column:21},end:{line:1003,column:43}},line:1003},95:{name:"(anonymous_95)",decl:{start:{line:1007,column:27},end:{line:1007,column:28}},loc:{start:{line:1007,column:36},end:{line:1012,column:7}},line:1007},96:{name:"(anonymous_96)",decl:{start:{line:1014,column:23},end:{line:1014,column:24}},loc:{start:{line:1014,column:64},end:{line:1019,column:5}},line:1014},97:{name:"(anonymous_97)",decl:{start:{line:1017,column:13},end:{line:1017,column:14}},loc:{start:{line:1017,column:34},end:{line:1017,column:51}},line:1017},98:{name:"(anonymous_98)",decl:{start:{line:1020,column:24},end:{line:1020,column:25}},loc:{start:{line:1020,column:44},end:{line:1025,column:5}},line:1020},99:{name:"(anonymous_99)",decl:{start:{line:1022,column:42},end:{line:1022,column:43}},loc:{start:{line:1022,column:58},end:{line:1024,column:7}},line:1022},100:{name:"(anonymous_100)",decl:{start:{line:1026,column:26},end:{line:1026,column:27}},loc:{start:{line:1026,column:38},end:{line:1038,column:5}},line:1026},101:{name:"(anonymous_101)",decl:{start:{line:1032,column:14},end:{line:1032,column:15}},loc:{start:{line:1032,column:26},end:{line:1034,column:9}},line:1032},102:{name:"(anonymous_102)",decl:{start:{line:1035,column:14},end:{line:1035,column:15}},loc:{start:{line:1035,column:28},end:{line:1037,column:9}},line:1035},103:{name:"(anonymous_103)",decl:{start:{line:1039,column:4},end:{line:1039,column:5}},loc:{start:{line:1039,column:29},end:{line:1045,column:5}},line:1039},104:{name:"(anonymous_104)",decl:{start:{line:1046,column:4},end:{line:1046,column:5}},loc:{start:{line:1046,column:25},end:{line:1065,column:5}},line:1046},105:{name:"(anonymous_105)",decl:{start:{line:1066,column:4},end:{line:1066,column:5}},loc:{start:{line:1066,column:20},end:{line:1076,column:5}},line:1066},106:{name:"(anonymous_106)",decl:{start:{line:1077,column:20},end:{line:1077,column:21}},loc:{start:{line:1077,column:32},end:{line:1097,column:5}},line:1077},107:{name:"(anonymous_107)",decl:{start:{line:1080,column:14},end:{line:1080,column:15}},loc:{start:{line:1080,column:41},end:{line:1096,column:9}},line:1080},108:{name:"(anonymous_108)",decl:{start:{line:1084,column:19},end:{line:1084,column:20}},loc:{start:{line:1084,column:32},end:{line:1084,column:73}},line:1084},109:{name:"(anonymous_109)",decl:{start:{line:1098,column:4},end:{line:1098,column:5}},loc:{start:{line:1098,column:22},end:{line:1107,column:5}},line:1098},110:{name:"(anonymous_110)",decl:{start:{line:1108,column:4},end:{line:1108,column:5}},loc:{start:{line:1108,column:20},end:{line:1124,column:5}},line:1108},111:{name:"(anonymous_111)",decl:{start:{line:1115,column:22},end:{line:1115,column:23}},loc:{start:{line:1115,column:32},end:{line:1115,column:51}},line:1115},112:{name:"(anonymous_112)",decl:{start:{line:1121,column:14},end:{line:1121,column:15}},loc:{start:{line:1121,column:32},end:{line:1123,column:9}},line:1121},113:{name:"(anonymous_113)",decl:{start:{line:1125,column:4},end:{line:1125,column:5}},loc:{start:{line:1125,column:27},end:{line:1156,column:5}},line:1125},114:{name:"(anonymous_114)",decl:{start:{line:1157,column:24},end:{line:1157,column:25}},loc:{start:{line:1157,column:41},end:{line:1159,column:5}},line:1157},115:{name:"(anonymous_115)",decl:{start:{line:1160,column:18},end:{line:1160,column:19}},loc:{start:{line:1160,column:30},end:{line:1162,column:5}},line:1160},116:{name:"(anonymous_116)",decl:{start:{line:1163,column:4},end:{line:1163,column:5}},loc:{start:{line:1163,column:43},end:{line:1199,column:5}},line:1163},117:{name:"(anonymous_117)",decl:{start:{line:1193,column:14},end:{line:1193,column:15}},loc:{start:{line:1193,column:28},end:{line:1195,column:9}},line:1193},118:{name:"(anonymous_118)",decl:{start:{line:1196,column:15},end:{line:1196,column:16}},loc:{start:{line:1196,column:26},end:{line:1198,column:9}},line:1196},119:{name:"(anonymous_119)",decl:{start:{line:1200,column:4},end:{line:1200,column:5}},loc:{start:{line:1200,column:9},end:{line:1206,column:5}},line:1200},120:{name:"(anonymous_120)",decl:{start:{line:1207,column:4},end:{line:1207,column:5}},loc:{start:{line:1207,column:19},end:{line:1214,column:5}},line:1207},121:{name:"(anonymous_121)",decl:{start:{line:1215,column:4},end:{line:1215,column:5}},loc:{start:{line:1215,column:11},end:{line:1225,column:5}},line:1215},122:{name:"(anonymous_122)",decl:{start:{line:1226,column:4},end:{line:1226,column:5}},loc:{start:{line:1226,column:11},end:{line:1228,column:5}},line:1226},123:{name:"(anonymous_123)",decl:{start:{line:1229,column:4},end:{line:1229,column:5}},loc:{start:{line:1229,column:22},end:{line:1316,column:5}},line:1229},124:{name:"(anonymous_124)",decl:{start:{line:1238,column:18},end:{line:1238,column:19}},loc:{start:{line:1238,column:32},end:{line:1248,column:13}},line:1238},125:{name:"(anonymous_125)",decl:{start:{line:1249,column:19},end:{line:1249,column:20}},loc:{start:{line:1249,column:28},end:{line:1252,column:13}},line:1249},126:{name:"(anonymous_126)",decl:{start:{line:1296,column:12},end:{line:1296,column:13}},loc:{start:{line:1296,column:21},end:{line:1296,column:65}},line:1296},127:{name:"(anonymous_127)",decl:{start:{line:1317,column:4},end:{line:1317,column:5}},loc:{start:{line:1317,column:22},end:{line:1439,column:5}},line:1317},128:{name:"(anonymous_128)",decl:{start:{line:1440,column:4},end:{line:1440,column:5}},loc:{start:{line:1440,column:19},end:{line:1443,column:5}},line:1440},129:{name:"(anonymous_129)",decl:{start:{line:1444,column:4},end:{line:1444,column:5}},loc:{start:{line:1444,column:32},end:{line:1454,column:5}},line:1444},130:{name:"(anonymous_130)",decl:{start:{line:1455,column:4},end:{line:1455,column:5}},loc:{start:{line:1455,column:23},end:{line:1607,column:5}},line:1455},131:{name:"(anonymous_131)",decl:{start:{line:1489,column:30},end:{line:1489,column:31}},loc:{start:{line:1489,column:41},end:{line:1508,column:11}},line:1489},132:{name:"(anonymous_132)",decl:{start:{line:1545,column:37},end:{line:1545,column:38}},loc:{start:{line:1545,column:44},end:{line:1547,column:11}},line:1545},133:{name:"(anonymous_133)",decl:{start:{line:1561,column:37},end:{line:1561,column:38}},loc:{start:{line:1561,column:44},end:{line:1563,column:11}},line:1561},134:{name:"(anonymous_134)",decl:{start:{line:1576,column:40},end:{line:1576,column:41}},loc:{start:{line:1576,column:51},end:{line:1585,column:11}},line:1576},135:{name:"(anonymous_135)",decl:{start:{line:1608,column:4},end:{line:1608,column:5}},loc:{start:{line:1608,column:36},end:{line:1650,column:5}},line:1608},136:{name:"(anonymous_136)",decl:{start:{line:1616,column:22},end:{line:1616,column:23}},loc:{start:{line:1616,column:32},end:{line:1634,column:9}},line:1616},137:{name:"(anonymous_137)",decl:{start:{line:1623,column:19},end:{line:1623,column:20}},loc:{start:{line:1623,column:33},end:{line:1632,column:13}},line:1623},138:{name:"(anonymous_138)",decl:{start:{line:1637,column:33},end:{line:1637,column:34}},loc:{start:{line:1637,column:48},end:{line:1649,column:7}},line:1637},139:{name:"(anonymous_139)",decl:{start:{line:1646,column:16},end:{line:1646,column:17}},loc:{start:{line:1646,column:30},end:{line:1648,column:9}},line:1646},140:{name:"(anonymous_140)",decl:{start:{line:1651,column:4},end:{line:1651,column:5}},loc:{start:{line:1651,column:20},end:{line:1655,column:5}},line:1651},141:{name:"(anonymous_141)",decl:{start:{line:1657,column:4},end:{line:1657,column:5}},loc:{start:{line:1657,column:14},end:{line:1677,column:5}},line:1657},142:{name:"(anonymous_142)",decl:{start:{line:1674,column:15},end:{line:1674,column:16}},loc:{start:{line:1674,column:24},end:{line:1674,column:26}},line:1674},143:{name:"(anonymous_143)",decl:{start:{line:1678,column:4},end:{line:1678,column:5}},loc:{start:{line:1678,column:29},end:{line:1722,column:5}},line:1678},144:{name:"(anonymous_144)",decl:{start:{line:1723,column:4},end:{line:1723,column:5}},loc:{start:{line:1723,column:31},end:{line:1765,column:5}},line:1723},145:{name:"(anonymous_145)",decl:{start:{line:1766,column:4},end:{line:1766,column:5}},loc:{start:{line:1766,column:26},end:{line:1786,column:5}},line:1766},146:{name:"(anonymous_146)",decl:{start:{line:1768,column:40},end:{line:1768,column:41}},loc:{start:{line:1768,column:47},end:{line:1768,column:67}},line:1768},147:{name:"(anonymous_147)",decl:{start:{line:1776,column:17},end:{line:1776,column:18}},loc:{start:{line:1776,column:34},end:{line:1779,column:9}},line:1776},148:{name:"(anonymous_148)",decl:{start:{line:1787,column:4},end:{line:1787,column:5}},loc:{start:{line:1787,column:31},end:{line:1793,column:5}},line:1787},149:{name:"(anonymous_149)",decl:{start:{line:1788,column:39},end:{line:1788,column:40}},loc:{start:{line:1788,column:50},end:{line:1788,column:74}},line:1788},150:{name:"(anonymous_150)",decl:{start:{line:1794,column:4},end:{line:1794,column:5}},loc:{start:{line:1794,column:15},end:{line:1796,column:5}},line:1794},151:{name:"(anonymous_151)",decl:{start:{line:1797,column:4},end:{line:1797,column:5}},loc:{start:{line:1797,column:39},end:{line:1837,column:5}},line:1797},152:{name:"(anonymous_152)",decl:{start:{line:1808,column:14},end:{line:1808,column:15}},loc:{start:{line:1808,column:28},end:{line:1826,column:9}},line:1808},153:{name:"(anonymous_153)",decl:{start:{line:1827,column:15},end:{line:1827,column:16}},loc:{start:{line:1827,column:26},end:{line:1836,column:9}},line:1827},154:{name:"(anonymous_154)",decl:{start:{line:1839,column:4},end:{line:1839,column:5}},loc:{start:{line:1839,column:58},end:{line:1897,column:5}},line:1839},155:{name:"(anonymous_155)",decl:{start:{line:1860,column:15},end:{line:1860,column:16}},loc:{start:{line:1860,column:24},end:{line:1860,column:26}},line:1860},156:{name:"(anonymous_156)",decl:{start:{line:1898,column:4},end:{line:1898,column:5}},loc:{start:{line:1898,column:16},end:{line:1903,column:5}},line:1898},157:{name:"(anonymous_157)",decl:{start:{line:1900,column:8},end:{line:1900,column:9}},loc:{start:{line:1900,column:19},end:{line:1900,column:52}},line:1900},158:{name:"(anonymous_158)",decl:{start:{line:1904,column:4},end:{line:1904,column:5}},loc:{start:{line:1904,column:21},end:{line:1932,column:5}},line:1904},159:{name:"(anonymous_159)",decl:{start:{line:1935,column:4},end:{line:1935,column:5}},loc:{start:{line:1935,column:34},end:{line:2025,column:5}},line:1935},160:{name:"(anonymous_160)",decl:{start:{line:1981,column:16},end:{line:1981,column:17}},loc:{start:{line:1981,column:30},end:{line:2008,column:11}},line:1981},161:{name:"(anonymous_161)",decl:{start:{line:1997,column:25},end:{line:1997,column:26}},loc:{start:{line:1997,column:31},end:{line:1999,column:15}},line:1997},162:{name:"(anonymous_162)",decl:{start:{line:2009,column:17},end:{line:2009,column:18}},loc:{start:{line:2009,column:35},end:{line:2021,column:11}},line:2009},163:{name:"(anonymous_163)",decl:{start:{line:2026,column:4},end:{line:2026,column:5}},loc:{start:{line:2026,column:13},end:{line:2028,column:5}},line:2026},164:{name:"(anonymous_164)",decl:{start:{line:2029,column:4},end:{line:2029,column:5}},loc:{start:{line:2029,column:35},end:{line:2037,column:5}},line:2029},165:{name:"(anonymous_165)",decl:{start:{line:2038,column:4},end:{line:2038,column:5}},loc:{start:{line:2038,column:13},end:{line:2066,column:5}},line:2038},166:{name:"(anonymous_166)",decl:{start:{line:2048,column:14},end:{line:2048,column:15}},loc:{start:{line:2048,column:26},end:{line:2052,column:9}},line:2048},167:{name:"(anonymous_167)",decl:{start:{line:2053,column:14},end:{line:2053,column:15}},loc:{start:{line:2053,column:28},end:{line:2056,column:9}},line:2053},168:{name:"(anonymous_168)",decl:{start:{line:2057,column:15},end:{line:2057,column:16}},loc:{start:{line:2057,column:26},end:{line:2065,column:9}},line:2057},169:{name:"(anonymous_169)",decl:{start:{line:2067,column:4},end:{line:2067,column:5}},loc:{start:{line:2067,column:15},end:{line:2076,column:5}},line:2067},170:{name:"(anonymous_170)",decl:{start:{line:2078,column:4},end:{line:2078,column:5}},loc:{start:{line:2078,column:18},end:{line:2090,column:5}},line:2078},171:{name:"(anonymous_171)",decl:{start:{line:2085,column:14},end:{line:2085,column:15}},loc:{start:{line:2085,column:28},end:{line:2089,column:7}},line:2085},172:{name:"(anonymous_172)",decl:{start:{line:2091,column:4},end:{line:2091,column:5}},loc:{start:{line:2091,column:23},end:{line:2103,column:5}},line:2091},173:{name:"(anonymous_173)",decl:{start:{line:2098,column:14},end:{line:2098,column:15}},loc:{start:{line:2098,column:28},end:{line:2102,column:7}},line:2098},174:{name:"(anonymous_174)",decl:{start:{line:2104,column:4},end:{line:2104,column:5}},loc:{start:{line:2104,column:20},end:{line:2106,column:5}},line:2104},175:{name:"(anonymous_175)",decl:{start:{line:2107,column:4},end:{line:2107,column:5}},loc:{start:{line:2107,column:18},end:{line:2109,column:5}},line:2107},176:{name:"(anonymous_176)",decl:{start:{line:2110,column:4},end:{line:2110,column:5}},loc:{start:{line:2110,column:23},end:{line:2112,column:5}},line:2110},177:{name:"(anonymous_177)",decl:{start:{line:2113,column:4},end:{line:2113,column:5}},loc:{start:{line:2113,column:24},end:{line:2142,column:5}},line:2113},178:{name:"(anonymous_178)",decl:{start:{line:2143,column:22},end:{line:2143,column:23}},loc:{start:{line:2143,column:34},end:{line:2148,column:5}},line:2143},179:{name:"(anonymous_179)",decl:{start:{line:2146,column:16},end:{line:2146,column:17}},loc:{start:{line:2146,column:25},end:{line:2146,column:60}},line:2146},180:{name:"(anonymous_180)",decl:{start:{line:2147,column:17},end:{line:2147,column:18}},loc:{start:{line:2147,column:29},end:{line:2147,column:69}},line:2147},181:{name:"(anonymous_181)",decl:{start:{line:2149,column:24},end:{line:2149,column:25}},loc:{start:{line:2149,column:36},end:{line:2162,column:5}},line:2149},182:{name:"(anonymous_182)",decl:{start:{line:2158,column:14},end:{line:2158,column:15}},loc:{start:{line:2158,column:20},end:{line:2161,column:9}},line:2158},183:{name:"(anonymous_183)",decl:{start:{line:2163,column:14},end:{line:2163,column:15}},loc:{start:{line:2163,column:26},end:{line:2167,column:5}},line:2163},184:{name:"(anonymous_184)",decl:{start:{line:2168,column:16},end:{line:2168,column:17}},loc:{start:{line:2168,column:28},end:{line:2176,column:5}},line:2168},185:{name:"(anonymous_185)",decl:{start:{line:2177,column:4},end:{line:2177,column:5}},loc:{start:{line:2177,column:17},end:{line:2179,column:5}},line:2177},186:{name:"(anonymous_186)",decl:{start:{line:2180,column:4},end:{line:2180,column:5}},loc:{start:{line:2180,column:20},end:{line:2189,column:5}},line:2180}},branchMap:{0:{loc:{start:{line:202,column:13},end:{line:204,column:32}},type:"cond-expr",locations:[{start:{line:203,column:10},end:{line:203,column:24}},{start:{line:204,column:10},end:{line:204,column:32}}],line:202},1:{loc:{start:{line:207,column:13},end:{line:207,column:67}},type:"cond-expr",locations:[{start:{line:207,column:53},end:{line:207,column:62}},{start:{line:207,column:65},end:{line:207,column:67}}],line:207},2:{loc:{start:{line:214,column:6},end:{line:214,column:59}},type:"if",locations:[{start:{line:214,column:6},end:{line:214,column:59}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:214},3:{loc:{start:{line:216,column:6},end:{line:216,column:61}},type:"if",locations:[{start:{line:216,column:6},end:{line:216,column:61}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:216},4:{loc:{start:{line:223,column:13},end:{line:223,column:64}},type:"cond-expr",locations:[{start:{line:223,column:46},end:{line:223,column:48}},{start:{line:223,column:51},end:{line:223,column:64}}],line:223},5:{loc:{start:{line:233,column:24},end:{line:233,column:58}},type:"binary-expr",locations:[{start:{line:233,column:24},end:{line:233,column:37}},{start:{line:233,column:41},end:{line:233,column:58}}],line:233},6:{loc:{start:{line:241,column:24},end:{line:241,column:58}},type:"binary-expr",locations:[{start:{line:241,column:24},end:{line:241,column:37}},{start:{line:241,column:41},end:{line:241,column:58}}],line:241},7:{loc:{start:{line:279,column:24},end:{line:279,column:58}},type:"binary-expr",locations:[{start:{line:279,column:24},end:{line:279,column:37}},{start:{line:279,column:41},end:{line:279,column:58}}],line:279},8:{loc:{start:{line:287,column:24},end:{line:287,column:58}},type:"binary-expr",locations:[{start:{line:287,column:24},end:{line:287,column:37}},{start:{line:287,column:41},end:{line:287,column:58}}],line:287},9:{loc:{start:{line:309,column:24},end:{line:309,column:58}},type:"binary-expr",locations:[{start:{line:309,column:24},end:{line:309,column:37}},{start:{line:309,column:41},end:{line:309,column:58}}],line:309},10:{loc:{start:{line:491,column:6},end:{line:493,column:7}},type:"if",locations:[{start:{line:491,column:6},end:{line:493,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:491},11:{loc:{start:{line:494,column:6},end:{line:498,column:7}},type:"if",locations:[{start:{line:494,column:6},end:{line:498,column:7}},{start:{line:496,column:13},end:{line:498,column:7}}],line:494},12:{loc:{start:{line:494,column:10},end:{line:494,column:52}},type:"binary-expr",locations:[{start:{line:494,column:10},end:{line:494,column:36}},{start:{line:494,column:40},end:{line:494,column:52}}],line:494},13:{loc:{start:{line:502,column:6},end:{line:506,column:7}},type:"if",locations:[{start:{line:502,column:6},end:{line:506,column:7}},{start:{line:504,column:13},end:{line:506,column:7}}],line:502},14:{loc:{start:{line:516,column:8},end:{line:518,column:9}},type:"if",locations:[{start:{line:516,column:8},end:{line:518,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:516},15:{loc:{start:{line:533,column:6},end:{line:535,column:7}},type:"if",locations:[{start:{line:533,column:6},end:{line:535,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:533},16:{loc:{start:{line:536,column:6},end:{line:560,column:7}},type:"if",locations:[{start:{line:536,column:6},end:{line:560,column:7}},{start:{line:539,column:13},end:{line:560,column:7}}],line:536},17:{loc:{start:{line:536,column:10},end:{line:536,column:47}},type:"binary-expr",locations:[{start:{line:536,column:10},end:{line:536,column:25}},{start:{line:536,column:29},end:{line:536,column:47}}],line:536},18:{loc:{start:{line:539,column:13},end:{line:560,column:7}},type:"if",locations:[{start:{line:539,column:13},end:{line:560,column:7}},{start:{line:541,column:13},end:{line:560,column:7}}],line:539},19:{loc:{start:{line:543,column:10},end:{line:558,column:11}},type:"if",locations:[{start:{line:543,column:10},end:{line:558,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:543},20:{loc:{start:{line:544,column:12},end:{line:550,column:13}},type:"if",locations:[{start:{line:544,column:12},end:{line:550,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:544},21:{loc:{start:{line:551,column:12},end:{line:557,column:13}},type:"if",locations:[{start:{line:551,column:12},end:{line:557,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:551},22:{loc:{start:{line:568,column:4},end:{line:576,column:5}},type:"if",locations:[{start:{line:568,column:4},end:{line:576,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:568},23:{loc:{start:{line:571,column:6},end:{line:573,column:7}},type:"if",locations:[{start:{line:571,column:6},end:{line:573,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:571},24:{loc:{start:{line:626,column:4},end:{line:629,column:5}},type:"if",locations:[{start:{line:626,column:4},end:{line:629,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:626},25:{loc:{start:{line:643,column:4},end:{line:653,column:5}},type:"if",locations:[{start:{line:643,column:4},end:{line:653,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:643},26:{loc:{start:{line:654,column:4},end:{line:664,column:5}},type:"if",locations:[{start:{line:654,column:4},end:{line:664,column:5}},{start:{line:657,column:11},end:{line:664,column:5}}],line:654},27:{loc:{start:{line:657,column:11},end:{line:664,column:5}},type:"if",locations:[{start:{line:657,column:11},end:{line:664,column:5}},{start:{line:659,column:11},end:{line:664,column:5}}],line:657},28:{loc:{start:{line:660,column:6},end:{line:663,column:7}},type:"if",locations:[{start:{line:660,column:6},end:{line:663,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:660},29:{loc:{start:{line:688,column:4},end:{line:690,column:5}},type:"if",locations:[{start:{line:688,column:4},end:{line:690,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:688},30:{loc:{start:{line:691,column:4},end:{line:694,column:5}},type:"if",locations:[{start:{line:691,column:4},end:{line:694,column:5}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:691},31:{loc:{start:{line:698,column:4},end:{line:702,column:5}},type:"if",locations:[{start:{line:698,column:4},end:{line:702,column:5}},{start:{line:700,column:11},end:{line:702,column:5}}],line:698},32:{loc:{start:{line:717,column:8},end:{line:717,column:31}},type:"binary-expr",locations:[{start:{line:717,column:8},end:{line:717,column:26}},{start:{line:717,column:30},end:{line:717,column:31}}],line:717},33:{loc:{start:{line:720,column:6},end:{line:722,column:7}},type:"if",locations:[{start:{line:720,column:6},end:{line:722,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:720},34:{loc:{start:{line:725,column:6},end:{line:727,column:7}},type:"if",locations:[{start:{line:725,column:6},end:{line:727,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:725},35:{loc:{start:{line:729,column:6},end:{line:732,column:7}},type:"if",locations:[{start:{line:729,column:6},end:{line:732,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:729},36:{loc:{start:{line:735,column:6},end:{line:738,column:7}},type:"if",locations:[{start:{line:735,column:6},end:{line:738,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:735},37:{loc:{start:{line:848,column:6},end:{line:857,column:7}},type:"if",locations:[{start:{line:848,column:6},end:{line:857,column:7}},{start:{line:851,column:13},end:{line:857,column:7}}],line:848},38:{loc:{start:{line:848,column:10},end:{line:848,column:73}},type:"binary-expr",locations:[{start:{line:848,column:10},end:{line:848,column:35}},{start:{line:848,column:39},end:{line:848,column:73}}],line:848},39:{loc:{start:{line:851,column:13},end:{line:857,column:7}},type:"if",locations:[{start:{line:851,column:13},end:{line:857,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:851},40:{loc:{start:{line:852,column:8},end:{line:853,column:41}},type:"binary-expr",locations:[{start:{line:852,column:8},end:{line:852,column:36}},{start:{line:853,column:8},end:{line:853,column:41}}],line:852},41:{loc:{start:{line:885,column:8},end:{line:896,column:9}},type:"if",locations:[{start:{line:885,column:8},end:{line:896,column:9}},{start:{line:890,column:15},end:{line:896,column:9}}],line:885},42:{loc:{start:{line:901,column:8},end:{line:905,column:9}},type:"if",locations:[{start:{line:901,column:8},end:{line:905,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:901},43:{loc:{start:{line:906,column:8},end:{line:909,column:9}},type:"if",locations:[{start:{line:906,column:8},end:{line:909,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:906},44:{loc:{start:{line:934,column:25},end:{line:934,column:71}},type:"binary-expr",locations:[{start:{line:934,column:25},end:{line:934,column:45}},{start:{line:934,column:49},end:{line:934,column:71}}],line:934},45:{loc:{start:{line:938,column:28},end:{line:938,column:44}},type:"default-arg",locations:[{start:{line:938,column:42},end:{line:938,column:44}}],line:938},46:{loc:{start:{line:954,column:10},end:{line:959,column:11}},type:"if",locations:[{start:{line:954,column:10},end:{line:959,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:954},47:{loc:{start:{line:975,column:6},end:{line:982,column:7}},type:"if",locations:[{start:{line:975,column:6},end:{line:982,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:975},48:{loc:{start:{line:977,column:8},end:{line:981,column:9}},type:"if",locations:[{start:{line:977,column:8},end:{line:981,column:9}},{start:{line:979,column:15},end:{line:981,column:9}}],line:977},49:{loc:{start:{line:985,column:6},end:{line:987,column:7}},type:"if",locations:[{start:{line:985,column:6},end:{line:987,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:985},50:{loc:{start:{line:990,column:10},end:{line:991,column:32}},type:"binary-expr",locations:[{start:{line:990,column:11},end:{line:990,column:36}},{start:{line:990,column:40},end:{line:990,column:64}},{start:{line:991,column:10},end:{line:991,column:32}}],line:990},51:{loc:{start:{line:995,column:6},end:{line:1006,column:7}},type:"switch",locations:[{start:{line:996,column:8},end:{line:999,column:15}},{start:{line:1e3,column:8},end:{line:1005,column:15}}],line:995},52:{loc:{start:{line:1009,column:8},end:{line:1011,column:9}},type:"if",locations:[{start:{line:1009,column:8},end:{line:1011,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1009},53:{loc:{start:{line:1014,column:33},end:{line:1014,column:62}},type:"default-arg",locations:[{start:{line:1014,column:43},end:{line:1014,column:62}}],line:1014},54:{loc:{start:{line:1017,column:34},end:{line:1017,column:51}},type:"binary-expr",locations:[{start:{line:1017,column:34},end:{line:1017,column:44}},{start:{line:1017,column:48},end:{line:1017,column:51}}],line:1017},55:{loc:{start:{line:1040,column:6},end:{line:1044,column:7}},type:"if",locations:[{start:{line:1040,column:6},end:{line:1044,column:7}},{start:{line:1042,column:13},end:{line:1044,column:7}}],line:1040},56:{loc:{start:{line:1048,column:6},end:{line:1050,column:7}},type:"if",locations:[{start:{line:1048,column:6},end:{line:1050,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1048},57:{loc:{start:{line:1048,column:10},end:{line:1048,column:61}},type:"binary-expr",locations:[{start:{line:1048,column:10},end:{line:1048,column:23}},{start:{line:1048,column:27},end:{line:1048,column:61}}],line:1048},58:{loc:{start:{line:1053,column:6},end:{line:1064,column:7}},type:"if",locations:[{start:{line:1053,column:6},end:{line:1064,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1053},59:{loc:{start:{line:1054,column:8},end:{line:1055,column:43}},type:"binary-expr",locations:[{start:{line:1054,column:9},end:{line:1054,column:22}},{start:{line:1054,column:26},end:{line:1054,column:39}},{start:{line:1055,column:8},end:{line:1055,column:43}}],line:1054},60:{loc:{start:{line:1057,column:8},end:{line:1063,column:9}},type:"if",locations:[{start:{line:1057,column:8},end:{line:1063,column:9}},{start:{line:1060,column:15},end:{line:1063,column:9}}],line:1057},61:{loc:{start:{line:1068,column:6},end:{line:1070,column:7}},type:"if",locations:[{start:{line:1068,column:6},end:{line:1070,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1068},62:{loc:{start:{line:1068,column:10},end:{line:1068,column:61}},type:"binary-expr",locations:[{start:{line:1068,column:10},end:{line:1068,column:23}},{start:{line:1068,column:27},end:{line:1068,column:61}}],line:1068},63:{loc:{start:{line:1071,column:6},end:{line:1075,column:7}},type:"if",locations:[{start:{line:1071,column:6},end:{line:1075,column:7}},{start:{line:1073,column:13},end:{line:1075,column:7}}],line:1071},64:{loc:{start:{line:1082,column:10},end:{line:1087,column:11}},type:"if",locations:[{start:{line:1082,column:10},end:{line:1087,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1082},65:{loc:{start:{line:1088,column:10},end:{line:1091,column:11}},type:"if",locations:[{start:{line:1088,column:10},end:{line:1091,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1088},66:{loc:{start:{line:1092,column:10},end:{line:1094,column:11}},type:"if",locations:[{start:{line:1092,column:10},end:{line:1094,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1092},67:{loc:{start:{line:1133,column:6},end:{line:1136,column:7}},type:"if",locations:[{start:{line:1133,column:6},end:{line:1136,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1133},68:{loc:{start:{line:1143,column:6},end:{line:1145,column:7}},type:"if",locations:[{start:{line:1143,column:6},end:{line:1145,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1143},69:{loc:{start:{line:1163,column:23},end:{line:1163,column:41}},type:"default-arg",locations:[{start:{line:1163,column:37},end:{line:1163,column:41}}],line:1163},70:{loc:{start:{line:1171,column:6},end:{line:1174,column:7}},type:"if",locations:[{start:{line:1171,column:6},end:{line:1174,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1171},71:{loc:{start:{line:1176,column:6},end:{line:1178,column:7}},type:"if",locations:[{start:{line:1176,column:6},end:{line:1178,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1176},72:{loc:{start:{line:1180,column:6},end:{line:1185,column:7}},type:"if",locations:[{start:{line:1180,column:6},end:{line:1185,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1180},73:{loc:{start:{line:1189,column:6},end:{line:1191,column:7}},type:"if",locations:[{start:{line:1189,column:6},end:{line:1191,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1189},74:{loc:{start:{line:1208,column:6},end:{line:1213,column:7}},type:"if",locations:[{start:{line:1208,column:6},end:{line:1213,column:7}},{start:{line:1210,column:13},end:{line:1213,column:7}}],line:1208},75:{loc:{start:{line:1219,column:6},end:{line:1224,column:7}},type:"if",locations:[{start:{line:1219,column:6},end:{line:1224,column:7}},{start:{line:1222,column:13},end:{line:1224,column:7}}],line:1219},76:{loc:{start:{line:1230,column:6},end:{line:1259,column:7}},type:"if",locations:[{start:{line:1230,column:6},end:{line:1259,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1230},77:{loc:{start:{line:1230,column:10},end:{line:1230,column:65}},type:"binary-expr",locations:[{start:{line:1230,column:10},end:{line:1230,column:23}},{start:{line:1230,column:27},end:{line:1230,column:65}}],line:1230},78:{loc:{start:{line:1231,column:8},end:{line:1258,column:9}},type:"if",locations:[{start:{line:1231,column:8},end:{line:1258,column:9}},{start:{line:1253,column:15},end:{line:1258,column:9}}],line:1231},79:{loc:{start:{line:1262,column:6},end:{line:1315,column:7}},type:"switch",locations:[{start:{line:1263,column:8},end:{line:1277,column:15}},{start:{line:1278,column:8},end:{line:1279,column:27}},{start:{line:1281,column:8},end:{line:1282,column:41}},{start:{line:1284,column:8},end:{line:1284,column:26}},{start:{line:1285,column:8},end:{line:1285,column:23}},{start:{line:1286,column:8},end:{line:1312,column:15}},{start:{line:1313,column:8},end:{line:1314,column:15}}],line:1262},80:{loc:{start:{line:1287,column:10},end:{line:1293,column:11}},type:"if",locations:[{start:{line:1287,column:10},end:{line:1293,column:11}},{start:{line:1290,column:17},end:{line:1293,column:11}}],line:1287},81:{loc:{start:{line:1298,column:10},end:{line:1311,column:11}},type:"if",locations:[{start:{line:1298,column:10},end:{line:1311,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1298},82:{loc:{start:{line:1300,column:23},end:{line:1300,column:58}},type:"cond-expr",locations:[{start:{line:1300,column:42},end:{line:1300,column:54}},{start:{line:1300,column:57},end:{line:1300,column:58}}],line:1300},83:{loc:{start:{line:1308,column:12},end:{line:1310,column:13}},type:"if",locations:[{start:{line:1308,column:12},end:{line:1310,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1308},84:{loc:{start:{line:1324,column:8},end:{line:1434,column:9}},type:"switch",locations:[{start:{line:1325,column:10},end:{line:1331,column:17}},{start:{line:1332,column:10},end:{line:1339,column:17}},{start:{line:1340,column:10},end:{line:1355,column:17}},{start:{line:1356,column:10},end:{line:1358,column:17}},{start:{line:1359,column:10},end:{line:1362,column:17}},{start:{line:1363,column:10},end:{line:1369,column:17}},{start:{line:1370,column:10},end:{line:1372,column:17}},{start:{line:1373,column:10},end:{line:1407,column:17}},{start:{line:1408,column:10},end:{line:1419,column:17}},{start:{line:1420,column:10},end:{line:1422,column:17}},{start:{line:1423,column:10},end:{line:1429,column:17}},{start:{line:1430,column:10},end:{line:1433,column:17}}],line:1324},85:{loc:{start:{line:1328,column:12},end:{line:1330,column:13}},type:"if",locations:[{start:{line:1328,column:12},end:{line:1330,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1328},86:{loc:{start:{line:1344,column:14},end:{line:1350,column:15}},type:"if",locations:[{start:{line:1344,column:14},end:{line:1350,column:15}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1344},87:{loc:{start:{line:1345,column:16},end:{line:1349,column:17}},type:"if",locations:[{start:{line:1345,column:16},end:{line:1349,column:17}},{start:{line:1347,column:23},end:{line:1349,column:17}}],line:1345},88:{loc:{start:{line:1365,column:12},end:{line:1368,column:13}},type:"if",locations:[{start:{line:1365,column:12},end:{line:1368,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1365},89:{loc:{start:{line:1377,column:14},end:{line:1384,column:15}},type:"if",locations:[{start:{line:1377,column:14},end:{line:1384,column:15}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1377},90:{loc:{start:{line:1378,column:16},end:{line:1379,column:49}},type:"binary-expr",locations:[{start:{line:1378,column:16},end:{line:1378,column:49}},{start:{line:1379,column:16},end:{line:1379,column:49}}],line:1378},91:{loc:{start:{line:1390,column:12},end:{line:1394,column:13}},type:"if",locations:[{start:{line:1390,column:12},end:{line:1394,column:13}},{start:{line:1392,column:19},end:{line:1394,column:13}}],line:1390},92:{loc:{start:{line:1395,column:12},end:{line:1399,column:13}},type:"if",locations:[{start:{line:1395,column:12},end:{line:1399,column:13}},{start:{line:1397,column:19},end:{line:1399,column:13}}],line:1395},93:{loc:{start:{line:1401,column:12},end:{line:1406,column:13}},type:"if",locations:[{start:{line:1401,column:12},end:{line:1406,column:13}},{start:{line:1404,column:19},end:{line:1406,column:13}}],line:1401},94:{loc:{start:{line:1410,column:14},end:{line:1416,column:15}},type:"if",locations:[{start:{line:1410,column:14},end:{line:1416,column:15}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1410},95:{loc:{start:{line:1411,column:16},end:{line:1412,column:49}},type:"binary-expr",locations:[{start:{line:1411,column:16},end:{line:1411,column:49}},{start:{line:1412,column:16},end:{line:1412,column:49}}],line:1411},96:{loc:{start:{line:1456,column:6},end:{line:1461,column:7}},type:"if",locations:[{start:{line:1456,column:6},end:{line:1461,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1456},97:{loc:{start:{line:1470,column:6},end:{line:1606,column:7}},type:"switch",locations:[{start:{line:1471,column:8},end:{line:1471,column:19}},{start:{line:1472,column:8},end:{line:1510,column:15}},{start:{line:1511,column:8},end:{line:1521,column:15}},{start:{line:1522,column:8},end:{line:1533,column:15}},{start:{line:1534,column:8},end:{line:1551,column:15}},{start:{line:1552,column:8},end:{line:1552,column:27}},{start:{line:1553,column:8},end:{line:1569,column:15}},{start:{line:1570,column:8},end:{line:1574,column:15}},{start:{line:1575,column:8},end:{line:1587,column:15}},{start:{line:1589,column:8},end:{line:1589,column:32}},{start:{line:1590,column:8},end:{line:1600,column:15}},{start:{line:1601,column:8},end:{line:1605,column:15}}],line:1470},98:{loc:{start:{line:1479,column:10},end:{line:1484,column:11}},type:"if",locations:[{start:{line:1479,column:10},end:{line:1484,column:11}},{start:{line:1481,column:17},end:{line:1484,column:11}}],line:1479},99:{loc:{start:{line:1479,column:14},end:{line:1479,column:77}},type:"binary-expr",locations:[{start:{line:1479,column:14},end:{line:1479,column:26}},{start:{line:1479,column:30},end:{line:1479,column:51}},{start:{line:1479,column:55},end:{line:1479,column:77}}],line:1479},100:{loc:{start:{line:1481,column:17},end:{line:1484,column:11}},type:"if",locations:[{start:{line:1481,column:17},end:{line:1484,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1481},101:{loc:{start:{line:1486,column:10},end:{line:1488,column:11}},type:"if",locations:[{start:{line:1486,column:10},end:{line:1488,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1486},102:{loc:{start:{line:1491,column:12},end:{line:1507,column:13}},type:"if",locations:[{start:{line:1491,column:12},end:{line:1507,column:13}},{start:{line:1499,column:19},end:{line:1507,column:13}}],line:1491},103:{loc:{start:{line:1514,column:10},end:{line:1516,column:11}},type:"if",locations:[{start:{line:1514,column:10},end:{line:1516,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1514},104:{loc:{start:{line:1523,column:10},end:{line:1525,column:11}},type:"if",locations:[{start:{line:1523,column:10},end:{line:1525,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1523},105:{loc:{start:{line:1523,column:14},end:{line:1523,column:52}},type:"binary-expr",locations:[{start:{line:1523,column:14},end:{line:1523,column:25}},{start:{line:1523,column:29},end:{line:1523,column:52}}],line:1523},106:{loc:{start:{line:1526,column:10},end:{line:1528,column:11}},type:"if",locations:[{start:{line:1526,column:10},end:{line:1528,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1526},107:{loc:{start:{line:1526,column:14},end:{line:1526,column:48}},type:"binary-expr",locations:[{start:{line:1526,column:14},end:{line:1526,column:25}},{start:{line:1526,column:29},end:{line:1526,column:48}}],line:1526},108:{loc:{start:{line:1535,column:10},end:{line:1537,column:11}},type:"if",locations:[{start:{line:1535,column:10},end:{line:1537,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1535},109:{loc:{start:{line:1535,column:14},end:{line:1535,column:52}},type:"binary-expr",locations:[{start:{line:1535,column:14},end:{line:1535,column:25}},{start:{line:1535,column:29},end:{line:1535,column:52}}],line:1535},110:{loc:{start:{line:1538,column:10},end:{line:1540,column:11}},type:"if",locations:[{start:{line:1538,column:10},end:{line:1540,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1538},111:{loc:{start:{line:1538,column:14},end:{line:1538,column:48}},type:"binary-expr",locations:[{start:{line:1538,column:14},end:{line:1538,column:25}},{start:{line:1538,column:29},end:{line:1538,column:48}}],line:1538},112:{loc:{start:{line:1541,column:10},end:{line:1543,column:11}},type:"if",locations:[{start:{line:1541,column:10},end:{line:1543,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1541},113:{loc:{start:{line:1541,column:14},end:{line:1541,column:49}},type:"binary-expr",locations:[{start:{line:1541,column:14},end:{line:1541,column:25}},{start:{line:1541,column:29},end:{line:1541,column:49}}],line:1541},114:{loc:{start:{line:1554,column:10},end:{line:1556,column:11}},type:"if",locations:[{start:{line:1554,column:10},end:{line:1556,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1554},115:{loc:{start:{line:1554,column:14},end:{line:1554,column:52}},type:"binary-expr",locations:[{start:{line:1554,column:14},end:{line:1554,column:25}},{start:{line:1554,column:29},end:{line:1554,column:52}}],line:1554},116:{loc:{start:{line:1557,column:10},end:{line:1559,column:11}},type:"if",locations:[{start:{line:1557,column:10},end:{line:1559,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1557},117:{loc:{start:{line:1557,column:14},end:{line:1557,column:48}},type:"binary-expr",locations:[{start:{line:1557,column:14},end:{line:1557,column:25}},{start:{line:1557,column:29},end:{line:1557,column:48}}],line:1557},118:{loc:{start:{line:1564,column:10},end:{line:1566,column:11}},type:"if",locations:[{start:{line:1564,column:10},end:{line:1566,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1564},119:{loc:{start:{line:1593,column:10},end:{line:1595,column:11}},type:"if",locations:[{start:{line:1593,column:10},end:{line:1595,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1593},120:{loc:{start:{line:1593,column:14},end:{line:1593,column:47}},type:"binary-expr",locations:[{start:{line:1593,column:14},end:{line:1593,column:25}},{start:{line:1593,column:29},end:{line:1593,column:47}}],line:1593},121:{loc:{start:{line:1596,column:10},end:{line:1598,column:11}},type:"if",locations:[{start:{line:1596,column:10},end:{line:1598,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1596},122:{loc:{start:{line:1614,column:6},end:{line:1635,column:7}},type:"if",locations:[{start:{line:1614,column:6},end:{line:1635,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1614},123:{loc:{start:{line:1640,column:20},end:{line:1642,column:34}},type:"cond-expr",locations:[{start:{line:1641,column:16},end:{line:1641,column:35}},{start:{line:1642,column:16},end:{line:1642,column:34}}],line:1640},124:{loc:{start:{line:1769,column:6},end:{line:1771,column:7}},type:"if",locations:[{start:{line:1769,column:6},end:{line:1771,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1769},125:{loc:{start:{line:1781,column:6},end:{line:1783,column:7}},type:"if",locations:[{start:{line:1781,column:6},end:{line:1783,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1781},126:{loc:{start:{line:1790,column:6},end:{line:1792,column:7}},type:"if",locations:[{start:{line:1790,column:6},end:{line:1792,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1790},127:{loc:{start:{line:1797,column:21},end:{line:1797,column:37}},type:"default-arg",locations:[{start:{line:1797,column:33},end:{line:1797,column:37}}],line:1797},128:{loc:{start:{line:1813,column:10},end:{line:1815,column:11}},type:"if",locations:[{start:{line:1813,column:10},end:{line:1815,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1813},129:{loc:{start:{line:1816,column:10},end:{line:1818,column:11}},type:"if",locations:[{start:{line:1816,column:10},end:{line:1818,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1816},130:{loc:{start:{line:1819,column:10},end:{line:1821,column:11}},type:"if",locations:[{start:{line:1819,column:10},end:{line:1821,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1819},131:{loc:{start:{line:1828,column:10},end:{line:1833,column:11}},type:"if",locations:[{start:{line:1828,column:10},end:{line:1833,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1828},132:{loc:{start:{line:1839,column:43},end:{line:1839,column:56}},type:"default-arg",locations:[{start:{line:1839,column:51},end:{line:1839,column:56}}],line:1839},133:{loc:{start:{line:1843,column:6},end:{line:1849,column:7}},type:"if",locations:[{start:{line:1843,column:6},end:{line:1849,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1843},134:{loc:{start:{line:1845,column:8},end:{line:1848,column:9}},type:"if",locations:[{start:{line:1845,column:8},end:{line:1848,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1845},135:{loc:{start:{line:1869,column:6},end:{line:1873,column:7}},type:"if",locations:[{start:{line:1869,column:6},end:{line:1873,column:7}},{start:{line:1871,column:13},end:{line:1873,column:7}}],line:1869},136:{loc:{start:{line:1882,column:6},end:{line:1889,column:7}},type:"if",locations:[{start:{line:1882,column:6},end:{line:1889,column:7}},{start:{line:1886,column:13},end:{line:1889,column:7}}],line:1882},137:{loc:{start:{line:1890,column:6},end:{line:1893,column:7}},type:"if",locations:[{start:{line:1890,column:6},end:{line:1893,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1890},138:{loc:{start:{line:1915,column:8},end:{line:1917,column:9}},type:"if",locations:[{start:{line:1915,column:8},end:{line:1917,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1915},139:{loc:{start:{line:1918,column:8},end:{line:1920,column:9}},type:"if",locations:[{start:{line:1918,column:8},end:{line:1920,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1918},140:{loc:{start:{line:1921,column:8},end:{line:1923,column:9}},type:"if",locations:[{start:{line:1921,column:8},end:{line:1923,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1921},141:{loc:{start:{line:1924,column:8},end:{line:1926,column:9}},type:"if",locations:[{start:{line:1924,column:8},end:{line:1926,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1924},142:{loc:{start:{line:1927,column:8},end:{line:1929,column:9}},type:"if",locations:[{start:{line:1927,column:8},end:{line:1929,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1927},143:{loc:{start:{line:1935,column:19},end:{line:1935,column:32}},type:"default-arg",locations:[{start:{line:1935,column:26},end:{line:1935,column:32}}],line:1935},144:{loc:{start:{line:1936,column:6},end:{line:1938,column:7}},type:"if",locations:[{start:{line:1936,column:6},end:{line:1938,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1936},145:{loc:{start:{line:1939,column:6},end:{line:2024,column:7}},type:"if",locations:[{start:{line:1939,column:6},end:{line:2024,column:7}},{start:{line:2022,column:13},end:{line:2024,column:7}}],line:1939},146:{loc:{start:{line:1941,column:8},end:{line:1973,column:9}},type:"if",locations:[{start:{line:1941,column:8},end:{line:1973,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1941},147:{loc:{start:{line:1942,column:10},end:{line:1972,column:11}},type:"if",locations:[{start:{line:1942,column:10},end:{line:1972,column:11}},{start:{line:1946,column:17},end:{line:1972,column:11}}],line:1942},148:{loc:{start:{line:1948,column:12},end:{line:1971,column:13}},type:"if",locations:[{start:{line:1948,column:12},end:{line:1971,column:13}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1948},149:{loc:{start:{line:1950,column:14},end:{line:1968,column:15}},type:"if",locations:[{start:{line:1950,column:14},end:{line:1968,column:15}},{start:{line:1959,column:21},end:{line:1968,column:15}}],line:1950},150:{loc:{start:{line:1951,column:16},end:{line:1952,column:58}},type:"binary-expr",locations:[{start:{line:1951,column:16},end:{line:1951,column:35}},{start:{line:1952,column:17},end:{line:1952,column:32}},{start:{line:1952,column:36},end:{line:1952,column:57}}],line:1951},151:{loc:{start:{line:1959,column:21},end:{line:1968,column:15}},type:"if",locations:[{start:{line:1959,column:21},end:{line:1968,column:15}},{start:{line:1965,column:21},end:{line:1968,column:15}}],line:1959},152:{loc:{start:{line:1982,column:12},end:{line:2005,column:13}},type:"if",locations:[{start:{line:1982,column:12},end:{line:2005,column:13}},{start:{line:2e3,column:19},end:{line:2005,column:13}}],line:1982},153:{loc:{start:{line:1983,column:14},end:{line:1991,column:15}},type:"if",locations:[{start:{line:1983,column:14},end:{line:1991,column:15}},{start:{line:1987,column:21},end:{line:1991,column:15}}],line:1983},154:{loc:{start:{line:1992,column:14},end:{line:1995,column:15}},type:"if",locations:[{start:{line:1992,column:14},end:{line:1995,column:15}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:1992},155:{loc:{start:{line:2013,column:12},end:{line:2019,column:13}},type:"if",locations:[{start:{line:2013,column:12},end:{line:2019,column:13}},{start:{line:2016,column:19},end:{line:2019,column:13}}],line:2013},156:{loc:{start:{line:2032,column:6},end:{line:2035,column:7}},type:"if",locations:[{start:{line:2032,column:6},end:{line:2035,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2032},157:{loc:{start:{line:2040,column:6},end:{line:2042,column:7}},type:"if",locations:[{start:{line:2040,column:6},end:{line:2042,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2040},158:{loc:{start:{line:2058,column:10},end:{line:2064,column:11}},type:"if",locations:[{start:{line:2058,column:10},end:{line:2064,column:11}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2058},159:{loc:{start:{line:2114,column:6},end:{line:2141,column:7}},type:"if",locations:[{start:{line:2114,column:6},end:{line:2141,column:7}},{start:{line:2117,column:13},end:{line:2141,column:7}}],line:2114},160:{loc:{start:{line:2117,column:13},end:{line:2141,column:7}},type:"if",locations:[{start:{line:2117,column:13},end:{line:2141,column:7}},{start:{line:2127,column:13},end:{line:2141,column:7}}],line:2117},161:{loc:{start:{line:2127,column:13},end:{line:2141,column:7}},type:"if",locations:[{start:{line:2127,column:13},end:{line:2141,column:7}},{start:{line:2135,column:13},end:{line:2141,column:7}}],line:2127},162:{loc:{start:{line:2129,column:8},end:{line:2131,column:9}},type:"if",locations:[{start:{line:2129,column:8},end:{line:2131,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2129},163:{loc:{start:{line:2135,column:13},end:{line:2141,column:7}},type:"if",locations:[{start:{line:2135,column:13},end:{line:2141,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2135},164:{loc:{start:{line:2137,column:8},end:{line:2139,column:9}},type:"if",locations:[{start:{line:2137,column:8},end:{line:2139,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2137},165:{loc:{start:{line:2164,column:6},end:{line:2166,column:7}},type:"if",locations:[{start:{line:2164,column:6},end:{line:2166,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2164},166:{loc:{start:{line:2169,column:6},end:{line:2175,column:7}},type:"if",locations:[{start:{line:2169,column:6},end:{line:2175,column:7}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2169},167:{loc:{start:{line:2170,column:8},end:{line:2172,column:26}},type:"binary-expr",locations:[{start:{line:2170,column:8},end:{line:2170,column:38}},{start:{line:2171,column:8},end:{line:2171,column:22}},{start:{line:2172,column:8},end:{line:2172,column:26}}],line:2170},168:{loc:{start:{line:2183,column:8},end:{line:2186,column:9}},type:"if",locations:[{start:{line:2183,column:8},end:{line:2186,column:9}},{start:{line:void 0,column:void 0},end:{line:void 0,column:void 0}}],line:2183}},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,140:0,141:0,142:0,143:0,144:0,145:0,146:0,147:0,148:0,149:0,150:0,151:0,152:0,153:0,154:0,155:0,156:0,157:0,158:0,159:0,160:0,161:0,162:0,163:0,164:0,165:0,166:0,167:0,168:0,169:0,170:0,171:0,172:0,173:0,174:0,175:0,176:0,177:0,178:0,179:0,180:0,181:0,182:0,183:0,184:0,185:0,186:0,187:0,188:0,189:0,190:0,191:0,192:0,193:0,194:0,195:0,196:0,197:0,198:0,199:0,200:0,201:0,202:0,203:0,204:0,205:0,206:0,207:0,208:0,209:0,210:0,211:0,212:0,213:0,214:0,215:0,216:0,217:0,218:0,219:0,220:0,221:0,222:0,223:0,224:0,225:0,226:0,227:0,228:0,229:0,230:0,231:0,232:0,233:0,234:0,235:0,236:0,237:0,238:0,239:0,240:0,241:0,242:0,243:0,244:0,245:0,246:0,247:0,248:0,249:0,250:0,251:0,252:0,253:0,254:0,255:0,256:0,257:0,258:0,259:0,260:0,261:0,262:0,263:0,264:0,265:0,266:0,267:0,268:0,269:0,270:0,271:0,272:0,273:0,274:0,275:0,276:0,277:0,278:0,279:0,280:0,281:0,282:0,283:0,284:0,285:0,286:0,287:0,288:0,289:0,290:0,291:0,292:0,293:0,294:0,295:0,296:0,297:0,298:0,299:0,300:0,301:0,302:0,303:0,304:0,305:0,306:0,307:0,308:0,309:0,310:0,311:0,312:0,313:0,314:0,315:0,316:0,317:0,318:0,319:0,320:0,321:0,322:0,323:0,324:0,325:0,326:0,327:0,328:0,329:0,330:0,331:0,332:0,333:0,334:0,335:0,336:0,337:0,338:0,339:0,340:0,341:0,342:0,343:0,344:0,345:0,346:0,347:0,348:0,349:0,350:0,351:0,352:0,353:0,354:0,355:0,356:0,357:0,358:0,359:0,360:0,361:0,362:0,363:0,364:0,365:0,366:0,367:0,368:0,369:0,370:0,371:0,372:0,373:0,374:0,375:0,376:0,377:0,378:0,379:0,380:0,381:0,382:0,383:0,384:0,385:0,386:0,387:0,388:0,389:0,390:0,391:0,392:0,393:0,394:0,395:0,396:0,397:0,398:0,399:0,400:0,401:0,402:0,403:0,404:0,405:0,406:0,407:0,408:0,409:0,410:0,411:0,412:0,413:0,414:0,415:0,416:0,417:0,418:0,419:0,420:0,421:0,422:0,423:0,424:0,425:0,426:0,427:0,428:0,429:0,430:0,431:0,432:0,433:0,434:0,435:0,436:0,437:0,438:0,439:0,440:0,441:0,442:0,443:0,444:0,445:0,446:0,447:0,448:0,449:0,450:0,451:0,452:0,453:0,454:0,455:0,456:0,457:0,458:0,459:0,460:0,461:0,462:0,463:0,464:0,465:0,466:0,467:0,468:0,469:0,470:0,471:0,472:0,473:0,474:0,475:0,476:0,477:0,478:0,479:0,480:0,481:0,482:0,483:0,484:0,485:0,486:0,487:0,488:0,489:0,490:0,491:0,492:0,493:0,494:0,495:0,496:0,497:0,498:0,499:0,500:0,501:0,502:0,503:0,504:0,505:0,506:0,507:0,508:0,509:0,510:0,511:0,512:0,513:0,514:0,515:0,516:0,517:0,518:0,519:0,520:0,521:0,522:0,523:0,524:0,525:0,526:0,527:0,528:0,529:0,530:0,531:0,532:0,533:0,534:0,535:0,536:0,537:0,538:0,539:0,540:0,541:0,542:0,543:0,544:0,545:0,546:0,547:0,548:0,549:0,550:0,551:0,552:0,553:0,554:0,555:0,556:0,557:0,558:0,559:0,560:0,561:0,562:0,563:0,564:0,565:0,566:0,567:0,568:0,569:0,570:0,571:0,572:0,573:0,574:0,575:0,576:0,577:0,578:0,579:0,580:0,581:0,582:0,583:0,584:0,585:0,586:0,587:0,588:0,589:0,590:0,591:0,592:0,593:0,594:0,595:0,596:0,597:0,598:0,599:0,600:0,601:0,602:0,603:0,604:0,605:0,606:0,607:0,608:0,609:0,610:0,611:0,612:0,613:0,614:0,615:0,616:0,617:0,618:0,619:0,620:0,621:0,622:0,623:0,624:0,625:0,626:0,627:0,628:0,629:0,630:0,631:0,632:0,633:0,634:0,635:0,636:0,637:0,638:0,639:0,640:0,641:0,642:0,643:0,644:0,645:0,646:0,647:0,648:0,649:0,650:0,651:0,652:0,653:0,654:0,655:0,656:0,657:0,658:0,659:0,660:0,661:0,662:0,663:0,664:0,665:0,666:0,667:0,668:0,669:0,670:0,671:0,672:0,673:0,674:0,675:0,676:0,677:0,678:0,679:0,680:0,681:0,682:0,683:0,684:0,685:0,686:0,687:0,688:0,689:0,690:0,691:0,692:0,693:0,694:0,695:0,696:0,697:0,698:0,699:0,700:0,701:0,702:0,703:0,704:0,705:0,706:0,707:0,708:0,709:0,710:0,711:0,712:0,713:0,714:0,715:0,716:0,717:0,718:0,719:0,720:0,721:0,722:0,723:0,724:0,725:0,726:0,727:0,728:0,729:0,730:0,731:0,732:0,733:0,734:0,735:0,736:0,737:0,738:0,739:0,740:0,741:0,742:0,743:0,744:0,745:0,746:0,747:0,748:0,749:0,750:0,751:0,752:0,753:0,754:0,755:0,756:0,757:0,758:0,759:0,760:0,761:0,762:0,763:0,764:0,765:0,766:0,767:0,768:0,769:0,770:0,771:0,772:0,773:0,774:0,775:0,776:0,777:0,778:0,779:0,780:0,781:0,782:0,783:0,784:0,785:0,786:0,787:0,788:0,789:0,790:0,791:0,792:0,793:0,794:0,795:0,796:0,797:0,798:0,799:0,800:0,801:0,802:0,803:0,804:0,805:0,806:0,807:0,808:0,809:0,810:0,811:0,812:0,813:0,814:0,815:0,816:0,817:0,818:0,819:0,820:0,821:0,822:0,823:0,824:0,825:0,826:0,827:0,828:0,829:0,830:0,831:0,832:0,833:0,834:0,835:0,836:0,837:0,838:0,839:0,840:0,841:0,842:0,843:0,844:0,845:0,846:0,847: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,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,140:0,141:0,142:0,143:0,144:0,145:0,146:0,147:0,148:0,149:0,150:0,151:0,152:0,153:0,154:0,155:0,156:0,157:0,158:0,159:0,160:0,161:0,162:0,163:0,164:0,165:0,166:0,167:0,168:0,169:0,170:0,171:0,172:0,173:0,174:0,175:0,176:0,177:0,178:0,179:0,180:0,181:0,182:0,183:0,184:0,185:0,186:0},b:{0:[0,0],1:[0,0],2:[0,0],3:[0,0],4:[0,0],5:[0,0],6:[0,0],7:[0,0],8:[0,0],9:[0,0],10:[0,0],11:[0,0],12:[0,0],13:[0,0],14:[0,0],15:[0,0],16:[0,0],17:[0,0],18:[0,0],19:[0,0],20:[0,0],21:[0,0],22:[0,0],23:[0,0],24:[0,0],25:[0,0],26:[0,0],27:[0,0],28:[0,0],29:[0,0],30:[0,0],31:[0,0],32:[0,0],33:[0,0],34:[0,0],35:[0,0],36:[0,0],37:[0,0],38:[0,0],39:[0,0],40:[0,0],41:[0,0],42:[0,0],43:[0,0],44:[0,0],45:[0],46:[0,0],47:[0,0],48:[0,0],49:[0,0],50:[0,0,0],51:[0,0],52:[0,0],53:[0],54:[0,0],55:[0,0],56:[0,0],57:[0,0],58:[0,0],59:[0,0,0],60:[0,0],61:[0,0],62:[0,0],63:[0,0],64:[0,0],65:[0,0],66:[0,0],67:[0,0],68:[0,0],69:[0],70:[0,0],71:[0,0],72:[0,0],73:[0,0],74:[0,0],75:[0,0],76:[0,0],77:[0,0],78:[0,0],79:[0,0,0,0,0,0,0],80:[0,0],81:[0,0],82:[0,0],83:[0,0],84:[0,0,0,0,0,0,0,0,0,0,0,0],85:[0,0],86:[0,0],87:[0,0],88:[0,0],89:[0,0],90:[0,0],91:[0,0],92:[0,0],93:[0,0],94:[0,0],95:[0,0],96:[0,0],97:[0,0,0,0,0,0,0,0,0,0,0,0],98:[0,0],99:[0,0,0],100:[0,0],101:[0,0],102:[0,0],103:[0,0],104:[0,0],105:[0,0],106:[0,0],107:[0,0],108:[0,0],109:[0,0],110:[0,0],111:[0,0],112:[0,0],113:[0,0],114:[0,0],115:[0,0],116:[0,0],117:[0,0],118:[0,0],119:[0,0],120:[0,0],121:[0,0],122:[0,0],123:[0,0],124:[0,0],125:[0,0],126:[0,0],127:[0],128:[0,0],129:[0,0],130:[0,0],131:[0,0],132:[0],133:[0,0],134:[0,0],135:[0,0],136:[0,0],137:[0,0],138:[0,0],139:[0,0],140:[0,0],141:[0,0],142:[0,0],143:[0],144:[0,0],145:[0,0],146:[0,0],147:[0,0],148:[0,0],149:[0,0],150:[0,0,0],151:[0,0],152:[0,0],153:[0,0],154:[0,0],155:[0,0],156:[0,0],157:[0,0],158:[0,0],159:[0,0],160:[0,0],161:[0,0],162:[0,0],163:[0,0],164:[0,0],165:[0,0],166:[0,0],167:[0,0,0],168:[0,0]},inputSourceMap:{version:3,sources:["ScriptRunner.vue"],names:[],mappings:";AA4YA;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;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;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;;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;;AAEA;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;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;;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;;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;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;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;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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:"ScriptRunner.vue",sourceRoot:"src/tools/ScriptRunner",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 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n--\x3e\n\n<template>\n <div>\n <top-bar :menus=\"menus\" :title=\"title\" />\n <v-snackbar v-model=\"showAlert\" top :color=\"alertType\" :timeout=\"3000\">\n <v-icon> mdi-{{ alertType }} </v-icon>\n {{ alertText }}\n <template v-slot:action=\"{ attrs }\">\n <v-btn text v-bind=\"attrs\" @click=\"showAlert = false\"> Close </v-btn>\n </template>\n </v-snackbar>\n <v-snackbar v-model=\"showEditingToast\" 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 showEditingToast = false\n }\n \"\n >\n dismiss\n </v-btn>\n </template>\n </v-snackbar>\n <div class=\"grid\">\n <div\n class=\"item\"\n v-for=\"def in screens\"\n :key=\"def.id\"\n :id=\"screenId(def.id)\"\n ref=\"gridItem\"\n >\n <div class=\"item-content\">\n <openc3-screen\n :target=\"def.target\"\n :screen=\"def.screen\"\n :definition=\"def.definition\"\n :keywords=\"screenKeywords\"\n :initialFloated=\"true\"\n :initialTop=\"def.top\"\n :initialLeft=\"def.left\"\n :initialZ=\"3\"\n :minZ=\"3\"\n :fixFloated=\"true\"\n :count=\"def.count\"\n @close-screen=\"closeScreen(def.id)\"\n @delete-screen=\"closeScreen(def.id)\"\n />\n </div>\n </div>\n </div>\n <v-card style=\"padding: 10px\">\n <suite-runner\n v-if=\"suiteRunner\"\n class=\"suite-runner\"\n :suite-map=\"suiteMap\"\n :disable-buttons=\"disableSuiteButtons\"\n :filename=\"fullFilename\"\n @button=\"suiteRunnerButton\"\n @loaded=\"doResize\"\n />\n <div id=\"sr-controls\">\n <v-row no-gutters justify=\"space-between\">\n <v-icon v-if=\"showDisconnect\" class=\"mr-2\" color=\"red\">\n mdi-connection\n </v-icon>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-btn\n v-on=\"on\"\n v-bind=\"attrs\"\n icon\n @click=\"reloadFile\"\n :disabled=\"filename === NEW_FILENAME\"\n >\n <v-icon>mdi-cached</v-icon>\n </v-btn>\n </template>\n <span> Reload File </span>\n </v-tooltip>\n <v-select\n v-model=\"filenameSelect\"\n @change=\"fileNameChanged\"\n :items=\"fileList\"\n :disabled=\"fileList.length <= 1\"\n label=\"Filename\"\n id=\"filename\"\n data-test=\"filename\"\n style=\"width: 300px\"\n dense\n outlined\n hide-details\n />\n <v-text-field\n v-model=\"scriptId\"\n label=\"Script ID\"\n data-test=\"id\"\n class=\"shrink ml-2 script-state\"\n style=\"width: 100px\"\n dense\n outlined\n readonly\n hide-details\n />\n <v-text-field\n v-model=\"state\"\n label=\"Script State\"\n data-test=\"state\"\n class=\"shrink ml-2 script-state\"\n style=\"width: 120px\"\n dense\n outlined\n readonly\n hide-details\n />\n <v-progress-circular\n v-if=\"state === 'Connecting...'\"\n :size=\"40\"\n class=\"ml-2 mr-2\"\n indeterminate\n color=\"primary\"\n />\n <div v-else style=\"width: 40px; height: 40px\" class=\"ml-2 mr-2\"></div>\n\n \x3c!-- Disable the Start button when Suite Runner controls are showing --\x3e\n <v-spacer />\n <div v-if=\"startOrGoButton === 'Start'\">\n <v-btn\n @click=\"startHandler\"\n class=\"mx-1\"\n color=\"primary\"\n data-test=\"start-button\"\n :disabled=\"startOrGoDisabled || !executeUser\"\n >\n <span> Start </span>\n </v-btn>\n <v-tooltip bottom>\n <template v-slot:activator=\"{ on, attrs }\">\n <v-btn\n v-on=\"on\"\n v-bind=\"attrs\"\n @click=\"scriptEnvironment.show = !scriptEnvironment.show\"\n class=\"mx-1\"\n data-test=\"env-button\"\n :color=\"environmentIconColor\"\n :disabled=\"envDisabled\"\n >\n <v-icon> {{ environmentIcon }} </v-icon>\n </v-btn>\n </template>\n <span>Script Environment</span>\n </v-tooltip>\n </div>\n <div v-else>\n <v-btn\n @click=\"go\"\n color=\"primary\"\n class=\"mr-2\"\n :disabled=\"startOrGoDisabled\"\n data-test=\"go-button\"\n >\n Go\n </v-btn>\n <v-btn\n color=\"primary\"\n @click=\"pauseOrRetry\"\n class=\"mr-2\"\n :disabled=\"pauseOrRetryDisabled\"\n data-test=\"pause-retry-button\"\n >\n {{ pauseOrRetryButton }}\n </v-btn>\n\n <v-btn\n color=\"primary\"\n @click=\"stop\"\n data-test=\"stop-button\"\n :disabled=\"stopDisabled\"\n >\n Stop\n </v-btn>\n </div>\n </v-row>\n </div>\n </v-card>\n \x3c!-- Create Multipane container to support resizing.\n NOTE: We listen to paneResize event and call editor.resize() to prevent weird sizing issues,\n The event must be paneResize and not pane-resize --\x3e\n <multipane layout=\"horizontal\" @paneResize=\"doResize\">\n <div class=\"editorbox\">\n <v-snackbar\n v-model=\"showSave\"\n absolute\n top\n right\n :timeout=\"-1\"\n class=\"saving\"\n >\n Saving...\n </v-snackbar>\n <pre\n ref=\"editor\"\n class=\"editor\"\n @contextmenu.prevent=\"showExecuteSelectionMenu\"\n ></pre>\n <v-menu\n v-model=\"executeSelectionMenu\"\n :position-x=\"menuX\"\n :position-y=\"menuY\"\n absolute\n offset-y\n >\n <v-list>\n <v-list-item\n v-for=\"item in executeSelectionMenuItems\"\n link\n :key=\"item.label\"\n :disabled=\"scriptId\"\n >\n <v-list-item-title @click=\"item.command\">\n {{ item.label }}\n </v-list-item-title>\n </v-list-item>\n </v-list>\n </v-menu>\n </div>\n <multipane-resizer><hr /></multipane-resizer>\n <div id=\"messages\" class=\"mt-2\" ref=\"messagesDiv\">\n <div id=\"debug\" class=\"pa-0\" v-if=\"showDebug\">\n <v-row no-gutters>\n <v-btn\n color=\"primary\"\n @click=\"step\"\n style=\"width: 100px\"\n class=\"mr-4\"\n :disabled=\"!scriptId\"\n data-test=\"step-button\"\n >\n Step\n <v-icon right> mdi-step-forward </v-icon>\n </v-btn>\n <v-text-field\n class=\"mb-2\"\n outlined\n dense\n hide-details\n label=\"Debug\"\n v-model=\"debug\"\n @keydown=\"debugKeydown\"\n data-test=\"debug-text\"\n />\n </v-row>\n </div>\n <script-log-messages\n id=\"log-messages\"\n v-model=\"messages\"\n @sort=\"messageSortOrder\"\n />\n </div>\n </multipane>\n \x3c!--- MENUS ---\x3e\n <file-open-save-dialog\n v-if=\"fileOpen\"\n v-model=\"fileOpen\"\n type=\"open\"\n api-url=\"/script-api/scripts\"\n @file=\"setFile($event)\"\n @error=\"setError($event)\"\n @clear-temp=\"clearTemp($event)\"\n />\n <file-open-save-dialog\n v-if=\"showSaveAs\"\n v-model=\"showSaveAs\"\n type=\"save\"\n api-url=\"/script-api/scripts\"\n require-target-parent-dir\n :input-filename=\"filenameOrBlank\"\n @filename=\"saveAsFilename($event)\"\n @error=\"setError($event)\"\n @clear-temp=\"clearTemp($event)\"\n />\n <environment-dialog v-if=\"showEnvironment\" v-model=\"showEnvironment\" />\n <ask-dialog\n v-if=\"ask.show\"\n v-model=\"ask.show\"\n :question=\"ask.question\"\n :default=\"ask.default\"\n :password=\"ask.password\"\n :answer-required=\"ask.answerRequired\"\n @response=\"ask.callback\"\n />\n <file-dialog\n v-if=\"file.show\"\n v-model=\"file.show\"\n :title=\"file.title\"\n :message=\"file.message\"\n :multiple=\"file.multiple\"\n :filter=\"file.filter\"\n @response=\"fileDialogCallback\"\n />\n <information-dialog\n v-if=\"information.show\"\n v-model=\"information.show\"\n :title=\"information.title\"\n :text=\"information.text\"\n />\n <event-list-dialog\n v-if=\"inputMetadata.show\"\n v-model=\"inputMetadata.show\"\n :events=\"inputMetadata.events\"\n :time-zone=\"timeZone\"\n new-metadata\n @close=\"inputMetadata.callback\"\n />\n <overrides-dialog v-if=\"showOverrides\" v-model=\"showOverrides\" />\n <prompt-dialog\n v-if=\"prompt.show\"\n v-model=\"prompt.show\"\n :title=\"prompt.title\"\n :subtitle=\"prompt.subtitle\"\n :message=\"prompt.message\"\n :details=\"prompt.details\"\n :buttons=\"prompt.buttons\"\n :layout=\"prompt.layout\"\n :multiple=\"prompt.multiple\"\n @response=\"prompt.callback\"\n />\n <results-dialog\n v-if=\"results.show\"\n v-model=\"results.show\"\n :text=\"results.text\"\n />\n <script-environment-dialog\n v-if=\"scriptEnvironment.show\"\n v-model=\"scriptEnvironment.show\"\n :input-environment=\"scriptEnvironment.env\"\n @environment=\"environmentHandler\"\n />\n <simple-text-dialog\n v-model=\"showSuiteError\"\n title=\"Suite Analysis Error\"\n :text=\"suiteError\"\n :width=\"1000\"\n />\n <v-bottom-sheet v-model=\"showScripts\">\n <v-sheet class=\"pb-11 pt-5 px-5\">\n <running-scripts\n v-if=\"showScripts\"\n :connect-in-new-tab=\"!!fileModified\"\n @disconnect=\"scriptDisconnect\"\n @close=\"\n () => {\n showScripts = false\n }\n \"\n />\n </v-sheet>\n </v-bottom-sheet>\n </div>\n</template>\n\n<script>\nimport axios from 'axios'\nimport Cable from '@openc3/tool-common/src/services/cable.js'\nimport Api from '@openc3/tool-common/src/services/api'\nimport * as ace from 'ace-builds'\nimport 'ace-builds/src-min-noconflict/mode-ruby'\nimport 'ace-builds/src-min-noconflict/mode-python'\nimport 'ace-builds/src-min-noconflict/theme-twilight'\nimport 'ace-builds/src-min-noconflict/ext-language_tools'\nimport 'ace-builds/src-min-noconflict/ext-searchbox'\nimport { format } from 'date-fns'\nimport { Multipane, MultipaneResizer } from 'vue-multipane'\nimport FileOpenSaveDialog from '@openc3/tool-common/src/components/FileOpenSaveDialog'\nimport EnvironmentDialog from '@openc3/tool-common/src/components/EnvironmentDialog'\nimport SimpleTextDialog from '@openc3/tool-common/src/components/SimpleTextDialog'\nimport TopBar from '@openc3/tool-common/src/components/TopBar'\nimport { OpenC3Api } from '@openc3/tool-common/src/services/openc3-api'\nimport { fileIcon } from '@openc3/tool-common/src/tools/base/util/fileIcon'\n\nimport AskDialog from '@/tools/ScriptRunner/Dialogs/AskDialog'\nimport FileDialog from '@/tools/ScriptRunner/Dialogs/FileDialog'\nimport InformationDialog from '@/tools/ScriptRunner/Dialogs/InformationDialog'\nimport EventListDialog from '@openc3/tool-common/src/tools/calendar/Dialogs/EventListDialog'\nimport OverridesDialog from '@/tools/ScriptRunner/Dialogs/OverridesDialog'\nimport PromptDialog from '@/tools/ScriptRunner/Dialogs/PromptDialog'\nimport ResultsDialog from '@/tools/ScriptRunner/Dialogs/ResultsDialog'\nimport ScriptEnvironmentDialog from '@/tools/ScriptRunner/Dialogs/ScriptEnvironmentDialog'\nimport SuiteRunner from '@/tools/ScriptRunner/SuiteRunner'\nimport ScriptLogMessages from '@/tools/ScriptRunner/ScriptLogMessages'\nimport Openc3Screen from '@openc3/tool-common/src/components/Openc3Screen'\nimport {\n CmdCompleter,\n TlmCompleter,\n MnemonicChecker,\n} from '@/tools/ScriptRunner/autocomplete'\nimport { SleepAnnotator } from '@/tools/ScriptRunner/annotations'\nimport RunningScripts from './RunningScripts.vue'\n\n// Matches target_file.rb TEMP_FOLDER\nconst TEMP_FOLDER = '__TEMP__'\nconst NEW_FILENAME = '<Untitled>'\nconst START = 'Start'\nconst GO = 'Go'\nconst PAUSE = 'Pause'\nconst RETRY = 'Retry'\n\nexport default {\n components: {\n FileOpenSaveDialog,\n Openc3Screen,\n EnvironmentDialog,\n Multipane,\n MultipaneResizer,\n TopBar,\n AskDialog,\n FileDialog,\n InformationDialog,\n EventListDialog,\n OverridesDialog,\n PromptDialog,\n ResultsDialog,\n ScriptEnvironmentDialog,\n SimpleTextDialog,\n SuiteRunner,\n RunningScripts,\n ScriptLogMessages,\n },\n data() {\n return {\n title: 'Script Runner',\n suiteRunner: false, // Whether to display the SuiteRunner GUI\n disableSuiteButtons: false,\n suiteMap: {\n // Useful for testing the various options in the SuiteRunner GUI\n // Suite: {\n // teardown: true,\n // groups: {\n // Group: {\n // setup: true,\n // cases: ['case1', 'case2', 'really_long_test_case_name3'],\n // },\n // ReallyLongGroupName: {\n // cases: ['case1', 'case2', 'case3'],\n // },\n // },\n // },\n },\n filenameSelect: null,\n currentFilename: null, // This is the currently shown filename while running\n showSave: false,\n showAlert: false,\n alertType: null,\n alertText: '',\n state: null,\n scriptId: null,\n startOrGoButton: START,\n startOrGoDisabled: false,\n envDisabled: false,\n pauseOrRetryButton: PAUSE,\n pauseOrRetryDisabled: false,\n stopDisabled: false,\n showEnvironment: false,\n showDebug: false,\n debug: '',\n debugHistory: [],\n debugHistoryIndex: 0,\n showDisconnect: false,\n files: {},\n breakpoints: {},\n enableStackTraces: false,\n filename: NEW_FILENAME,\n readOnlyUser: false,\n executeUser: true,\n saveAllowed: true,\n tempFilename: null,\n fileModified: '',\n fileOpen: false,\n lockedBy: null,\n showEditingToast: false,\n showSaveAs: false,\n areYouSure: false,\n subscription: null,\n cable: null,\n fatal: false,\n updateInterval: null,\n receivedEvents: [],\n messages: [],\n messagesNewestOnTop: true,\n maxArrayLength: 200,\n Range: ace.require('ace/range').Range,\n ask: {\n show: false,\n question: '',\n default: null,\n password: false,\n answerRequired: true,\n callback: () => {},\n },\n file: {\n show: false,\n message: '',\n directory: null,\n filter: '*',\n multiple: false,\n callback: () => {},\n },\n prompt: {\n show: false,\n title: '',\n subtitle: '',\n message: '',\n details: '',\n buttons: null,\n layout: 'horizontal',\n callback: () => {},\n },\n information: {\n show: false,\n title: '',\n text: [],\n },\n inputMetadata: {\n show: false,\n events: [],\n callback: () => {},\n },\n results: {\n show: false,\n text: '',\n },\n scriptEnvironment: {\n show: false,\n env: [],\n },\n showSuiteError: false,\n suiteError: '',\n executeSelectionMenu: false,\n menuX: 0,\n menuY: 0,\n mnemonicChecker: new MnemonicChecker(),\n showScripts: false,\n showOverrides: false,\n activePromptId: '',\n api: null,\n timeZone: 'local',\n screens: [],\n screenKeywords: null,\n idCounter: 0,\n updateCounter: 0,\n recent: [],\n }\n },\n computed: {\n // This is the list of files shown in the select dropdown\n fileList: function () {\n // this.files is the list of all files seen while running\n const filenames = Object.keys(this.files)\n filenames.push(this.fullFilename) // Make sure the currently shown filename is last\n return [...new Set(filenames)] // ensure unique\n },\n environmentIcon: function () {\n return this.scriptEnvironment.env.length > 0\n ? 'mdi-bookmark'\n : 'mdi-bookmark-outline'\n },\n environmentIconColor: function () {\n return this.scriptEnvironment.env.length > 0 ? 'primary' : ''\n },\n isLocked: function () {\n return !!this.lockedBy\n },\n // Returns the currently shown filename\n fullFilename: function () {\n if (this.currentFilename) return this.currentFilename\n // New filenames should not indicate modified\n if (this.filename === NEW_FILENAME) return NEW_FILENAME\n return `${this.filename} ${this.fileModified}`.trim()\n },\n // It's annoying for people (and tests) to clear the <Untitled>\n // when saving a new file so replace with blank\n // This makes sure that string doesn't show up in the dialog\n filenameOrBlank: function () {\n return this.filename === NEW_FILENAME ? '' : this.filename\n },\n menus: function () {\n return [\n {\n label: 'File',\n items: [\n {\n label: 'New File',\n icon: 'mdi-file-plus',\n disabled: this.scriptId || this.readOnlyUser,\n command: () => {\n this.newFile()\n },\n },\n {\n label: 'New Suite',\n icon: 'mdi-file-document-plus',\n disabled: this.scriptId || this.readOnlyUser,\n subMenu: [\n {\n label: 'Ruby',\n icon: 'mdi-language-ruby',\n command: () => {\n this.newRubyTestSuite()\n },\n },\n {\n label: 'Python',\n icon: 'mdi-language-python',\n command: () => {\n this.newPythonTestSuite()\n },\n },\n ],\n },\n {\n label: 'Open File',\n icon: 'mdi-folder-open',\n disabled: this.scriptId,\n command: () => {\n this.openFile()\n },\n },\n {\n label: 'Open Recent',\n icon: 'mdi-folder-open',\n disabled: this.scriptId,\n subMenu: this.recent,\n },\n {\n divider: true,\n },\n {\n label: 'Save File',\n icon: 'mdi-content-save',\n disabled: this.scriptId || this.readOnlyUser,\n command: () => {\n this.saveFile()\n },\n },\n {\n label: 'Save As...',\n icon: 'mdi-content-save',\n disabled: this.scriptId || this.readOnlyUser,\n command: () => {\n this.saveAs()\n },\n },\n {\n divider: true,\n },\n {\n label: 'Download',\n icon: 'mdi-cloud-download',\n disabled: this.scriptId,\n command: () => {\n this.download()\n },\n },\n {\n divider: true,\n },\n {\n label: 'Delete File',\n icon: 'mdi-delete',\n disabled: this.scriptId || this.readOnlyUser,\n command: () => {\n this.delete()\n },\n },\n ],\n },\n {\n label: 'Edit',\n items: [\n {\n label: 'Find',\n icon: 'mdi-magnify',\n command: () => {\n this.editor.execCommand('find')\n },\n },\n {\n label: 'Replace',\n icon: 'mdi-find-replace',\n disabled: this.scriptId,\n command: () => {\n this.editor.execCommand('replace')\n },\n },\n {\n label: 'Set Line Delay',\n icon: 'mdi-invoice-text-clock',\n disabled: this.scriptId,\n command: () => {\n this.$dialog.open({\n title: 'Info',\n text:\n 'You can set the line delay in seconds using the api method set_line_delay().<br/><br/>' +\n 'The default line delay is 0.1 seconds between lines. ' +\n 'Adding set_line_delay(0) to the top of your script will execute the script at maximum speed. ' +\n 'However, this can make it difficult to see and pause the script. ' +\n 'Executing set_line_delay(1) will cause a 1 second delay between lines.',\n okText: 'OK',\n okClass: 'primary',\n validateText: null,\n cancelText: null,\n html: true,\n })\n },\n },\n ],\n },\n {\n label: 'Script',\n items: [\n {\n label: 'Execution Status',\n icon: 'mdi-run',\n command: () => {\n this.showScripts = true\n },\n },\n {\n divider: true,\n },\n {\n label: 'Global Environment',\n icon: 'mdi-library',\n disabled: this.scriptId,\n command: () => {\n this.showEnvironment = !this.showEnvironment\n },\n },\n {\n label: 'Metadata',\n icon: 'mdi-calendar',\n disabled: this.scriptId,\n command: () => {\n this.inputMetadata.callback = () => {}\n this.showMetadata()\n },\n },\n {\n label: 'Overrides',\n icon: 'mdi-swap-horizontal',\n command: () => {\n this.showOverrides = true\n },\n },\n {\n divider: true,\n },\n {\n label: 'Syntax Check',\n icon: 'mdi-file-check',\n disabled: this.scriptId,\n command: () => {\n this.syntaxCheck()\n },\n },\n {\n label: 'Mnemonic Check',\n icon: 'mdi-spellcheck',\n disabled: this.scriptId,\n command: () => {\n this.checkMnemonics()\n },\n },\n {\n label: 'Instrumented Script',\n icon: 'mdi-code-braces-box',\n disabled: this.scriptId,\n command: () => {\n this.showInstrumented()\n },\n },\n {\n label: 'Call Stack',\n icon: 'mdi-format-list-numbered',\n disabled: !this.scriptId,\n command: () => {\n this.showCallStack()\n },\n },\n {\n divider: true,\n },\n {\n label: 'Toggle Debug',\n icon: 'mdi-bug',\n command: () => {\n this.toggleDebug()\n },\n },\n {\n label: 'Toggle Disconnect',\n icon: 'mdi-connection',\n disabled: this.scriptId,\n command: () => {\n this.toggleDisconnect()\n },\n },\n {\n label: 'Enable Stack Traces',\n checkbox: true,\n checked: false,\n disabled: this.scriptId,\n command: (item) => {\n this.enableStackTraces = item.checked\n },\n },\n {\n divider: true,\n },\n {\n label: 'Delete All Breakpoints',\n icon: 'mdi-delete-circle-outline',\n disabled: this.scriptId,\n command: () => {\n this.deleteAllBreakpoints()\n },\n },\n ],\n },\n ]\n },\n executeSelectionMenuItems: function () {\n return [\n {\n label: 'Execute selection',\n command: this.executeSelection,\n },\n {\n label: 'Run from here',\n command: this.runFromCursor,\n },\n {\n label: 'Clear local breakpoints',\n command: this.clearBreakpoints,\n },\n ]\n },\n },\n watch: {\n isLocked: function (val) {\n this.showEditingToast = val\n if (!this.suiteRunner) {\n this.startOrGoDisabled = val\n }\n if (this.readOnlyUser == false && val == false) {\n this.editor.setReadOnly(val)\n } else {\n this.editor.setReadOnly(true)\n }\n },\n fullFilename: function (filename) {\n this.filenameSelect = filename\n if (filename === NEW_FILENAME) {\n localStorage.removeItem('script_runner__filename')\n } else {\n localStorage['script_runner__filename'] = filename\n }\n },\n },\n created: async function () {\n // Ensure Offline Access Is Setup For the Current User\n this.api = new OpenC3Api()\n this.api.ensure_offline_access()\n this.api\n .get_setting('time_zone')\n .then((response) => {\n if (response) {\n this.timeZone = response\n }\n })\n .catch((error) => {\n // Do nothing\n })\n\n // Make NEW_FILENAME available to the template\n this.NEW_FILENAME = NEW_FILENAME\n window.onbeforeunload = this.unlockFile\n\n let user = OpenC3Auth.user()\n let roles = OpenC3Auth.userroles()\n this.readOnlyUser = true\n this.executeUser = false\n for (let role of roles) {\n if (role == 'viewer') {\n continue\n }\n if (role == 'admin' || role == 'operator') {\n this.readOnlyUser = false\n this.executeUser = true\n } else if (role == 'runner') {\n this.executeUser = true\n } else {\n await Api.get(`/openc3-api/roles/${role}`).then((response) => {\n if (response.data.permissions !== undefined) {\n if (\n response.data.permissions.some(\n (i) => i.permission == 'script_edit',\n )\n ) {\n this.readOnlyUser = false\n }\n if (\n response.data.permissions.some(\n (i) => i.permission == 'script_run',\n )\n ) {\n this.executeUser = true\n }\n }\n })\n }\n }\n // Output the userinfo for use in the SuiteRunner component\n localStorage['script_runner__userinfo'] = JSON.stringify({\n name: user['preferred_username'],\n readOnly: this.readOnlyUser,\n execute: this.executeUser,\n })\n if (this.readOnlyUser == true) {\n this.alertType = 'info'\n let text = `User ${user['preferred_username']} is read only`\n if (this.executeUser) {\n text += ' but can execute scripts'\n }\n this.alertText = text\n this.showAlert = true\n }\n\n Api.get('/openc3-api/autocomplete/keywords/screen').then((response) => {\n this.screenKeywords = response.data\n })\n },\n mounted: async function () {\n this.editor = ace.edit(this.$refs.editor)\n this.editor.setTheme('ace/theme/twilight')\n // Public apis in api_shared but not in OpenC3Api\n const api_shared = [\n 'check',\n 'check_raw',\n 'check_formatted',\n 'check_with_units',\n 'check_exception',\n 'check_tolerance',\n 'check_expression',\n 'wait',\n 'wait_tolerance',\n 'wait_expression',\n 'wait_check',\n 'wait_check_tolerance',\n 'wait_check_expression',\n 'wait_packet',\n 'wait_check_packet',\n 'disable_instrumentation',\n 'set_line_delay',\n 'get_line_delay',\n 'set_max_output',\n 'get_max_output',\n ]\n const openC3RubyMode = this.buildOpenC3RubyMode(api_shared)\n const openC3PythonMode = this.buildOpenC3PythonMode(api_shared)\n this.openC3RubyMode = new openC3RubyMode()\n this.openC3PythonMode = new openC3PythonMode()\n this.editor.session.setMode(this.openC3RubyMode)\n this.editor.session.setTabSize(2)\n this.editor.session.setUseWrapMode(true)\n this.editor.$blockScrolling = Infinity\n this.editor.setOption('enableBasicAutocompletion', true)\n this.editor.setOption('enableLiveAutocompletion', true)\n this.editor.completers = [new CmdCompleter(), new TlmCompleter()]\n this.editor.setHighlightActiveLine(false)\n this.editor.focus()\n this.editor.on('guttermousedown', this.toggleBreakpoint)\n // We listen to tokenizerUpdate rather than change because this\n // is the background process that updates as changes are processed\n // while change fires immediately before the UndoManager is updated.\n this.editor.session.on('tokenizerUpdate', this.onChange)\n if (this.readOnlyUser) {\n this.editor.setReadOnly(true)\n this.editor.renderer.$cursorLayer.element.style.display = 'none'\n }\n\n const sleepAnnotator = new SleepAnnotator(this.editor)\n this.editor.session.on('change', ($event, session) => {\n sleepAnnotator.annotate($event, session)\n this.updateBreakpoints($event, session)\n })\n\n this.editor.container.addEventListener('resize', this.doResize)\n this.editor.container.addEventListener('keydown', this.keydown)\n\n this.doResize()\n this.cable = new Cable('/script-api/cable')\n\n if (localStorage['script_runner__recent']) {\n this.recent = JSON.parse(localStorage['script_runner__recent'])\n // Rebuild the command since that doesn't get stringified\n this.recent = this.recent.map((item) => ({\n ...item,\n command: async (event) => {\n this.filename = event.label\n await this.reloadFile()\n },\n }))\n }\n if (this.$route.query?.file) {\n this.filename = this.$route.query.file\n await this.reloadFile()\n } else if (this.$route.params?.id) {\n await this.tryLoadRunningScript(this.$route.params.id)\n } else {\n if (localStorage['script_runner__filename']) {\n this.filename = localStorage['script_runner__filename']\n await this.reloadFile(false)\n }\n }\n // TODO: Potentially still bad interactions with autoSave\n // see https://github.com/OpenC3/cosmos/issues/915\n // this.autoSaveInterval = setInterval(async () => {\n // // Only save if not-running, modified, and visible (e.g. not open in another tab)\n // if (\n // !this.scriptId &&\n // this.fileModified.length > 0 &&\n // document.visibilityState === 'visible'\n // ) {\n // await this.saveFile('auto')\n // }\n // }, 60000) // Save every minute\n\n this.updateInterval = setInterval(async () => {\n this.processReceived()\n }, 100) // Every 100ms\n },\n beforeDestroy() {\n this.editor.destroy()\n this.editor.container.remove()\n },\n destroyed() {\n this.unlockFile()\n if (this.updateInterval != null) {\n clearInterval(this.updateInterval)\n }\n if (this.subscription) {\n this.subscription.unsubscribe()\n this.subscription = null\n }\n this.cable.disconnect()\n },\n beforeRouteUpdate: function (to, from, next) {\n if (to.params.id) {\n this.tryLoadRunningScript(to.params.id).then(next)\n } else {\n next()\n }\n },\n methods: {\n doResize() {\n this.editor.resize()\n // nextTick allows the resize to work correctly\n // when we remove the SuiteRunner chrome\n this.$nextTick(() => {\n this.calcHeight()\n })\n },\n calcHeight() {\n var editor = document.getElementsByClassName('editorbox')[0]\n var h = Math.max(\n document.documentElement.offsetHeight,\n window.innerHeight || 0,\n )\n var editorHeight = 0\n if (editor) {\n editorHeight = editor.offsetHeight\n }\n var suitesHeight = 0\n var suites = document.getElementsByClassName('suite-runner')[0]\n if (suites) {\n suitesHeight = suites.offsetHeight\n }\n var logMessages = document.getElementById('script-log-messages')\n if (logMessages) {\n // 295 is magic and was determined by experimentation\n logMessages.style.height = `${h - editorHeight - suitesHeight - 292}px`\n }\n },\n scriptDisconnect() {\n if (this.subscription) {\n this.subscription.unsubscribe()\n this.subscription = null\n }\n this.receivedEvents.length = 0 // Clear any unprocessed events\n },\n showMetadata() {\n Api.get('/openc3-api/metadata').then((response) => {\n // TODO: This is how Calendar creates new metadata items via makeMetadataEvent\n this.inputMetadata.events = response.data.map((event) => {\n return {\n name: 'Metadata',\n start: new Date(event.start * 1000),\n end: new Date(event.start * 1000),\n color: event.color,\n type: event.type,\n timed: true,\n metadata: event,\n }\n })\n this.inputMetadata.show = true\n })\n },\n buildOpenC3RubyMode(api_shared) {\n var oop = ace.require('ace/lib/oop')\n var RubyHighlightRules = ace.require(\n 'ace/mode/ruby_highlight_rules',\n ).RubyHighlightRules\n\n let apis = Object.getOwnPropertyNames(OpenC3Api.prototype)\n .filter((a) => a !== 'constructor')\n .filter((a) => a !== 'exec')\n .concat(api_shared)\n let regex = new RegExp(`(\\\\b${apis.join('\\\\b|\\\\b')}\\\\b)`)\n var OpenC3HighlightRules = function () {\n RubyHighlightRules.call(this)\n // add openc3 rules to the ruby rules\n for (var rule in this.$rules) {\n this.$rules[rule].unshift({\n regex: regex,\n token: 'support.function',\n })\n }\n }\n oop.inherits(OpenC3HighlightRules, RubyHighlightRules)\n\n var MatchingBraceOutdent = ace.require(\n 'ace/mode/matching_brace_outdent',\n ).MatchingBraceOutdent\n var CstyleBehaviour = ace.require(\n 'ace/mode/behaviour/cstyle',\n ).CstyleBehaviour\n var FoldMode = ace.require('ace/mode/folding/ruby').FoldMode\n var Mode = function () {\n this.HighlightRules = OpenC3HighlightRules\n this.$outdent = new MatchingBraceOutdent()\n this.$behaviour = new CstyleBehaviour()\n this.foldingRules = new FoldMode()\n this.indentKeywords = this.foldingRules.indentKeywords\n }\n var RubyMode = ace.require('ace/mode/ruby').Mode\n oop.inherits(Mode, RubyMode)\n ;(function () {\n this.$id = 'ace/mode/openc3'\n }).call(Mode.prototype)\n return Mode\n },\n buildOpenC3PythonMode(api_shared) {\n var oop = ace.require('ace/lib/oop')\n var PythonHighlightRules = ace.require(\n 'ace/mode/python_highlight_rules',\n ).PythonHighlightRules\n\n let apis = Object.getOwnPropertyNames(OpenC3Api.prototype)\n .filter((a) => a !== 'constructor')\n .filter((a) => a !== 'exec')\n .concat(api_shared)\n let regex = new RegExp(`(\\\\b${apis.join('\\\\b|\\\\b')}\\\\b)`)\n var OpenC3HighlightRules = function () {\n PythonHighlightRules.call(this)\n // add openc3 rules to the python rules\n for (var rule in this.$rules) {\n this.$rules[rule].unshift({\n regex: regex,\n token: 'support.function',\n })\n }\n }\n oop.inherits(OpenC3HighlightRules, PythonHighlightRules)\n\n var MatchingBraceOutdent = ace.require(\n 'ace/mode/matching_brace_outdent',\n ).MatchingBraceOutdent\n var CstyleBehaviour = ace.require(\n 'ace/mode/behaviour/cstyle',\n ).CstyleBehaviour\n var FoldMode = ace.require('ace/mode/folding/pythonic').FoldMode\n var Mode = function () {\n this.HighlightRules = OpenC3HighlightRules\n this.$outdent = new MatchingBraceOutdent()\n this.$behaviour = new CstyleBehaviour()\n this.foldingRules = new FoldMode()\n this.indentKeywords = this.foldingRules.indentKeywords\n }\n var PythonMode = ace.require('ace/mode/python').Mode\n oop.inherits(Mode, PythonMode)\n ;(function () {\n this.$id = 'ace/mode/openc3'\n }).call(Mode.prototype)\n return Mode\n },\n messageSortOrder(order) {\n // See ScriptLogMessages for these strings\n if (order === 'Newest on Top' && this.messagesNewestOnTop === false) {\n this.messagesNewestOnTop = true\n this.messages.reverse()\n } else if (\n order === 'Newest on Bottom' &&\n this.messagesNewestOnTop === true\n ) {\n this.messagesNewestOnTop = false\n this.messages.reverse()\n }\n },\n // This only gets called when the user changes the filename dropdown\n // Or when a user hits Go\n fileNameChanged(filename) {\n // Split off the '*' which indicates modified\n filename = filename.split('*')[0]\n this.editor.setValue(this.files[filename].content)\n this.restoreBreakpoints(filename)\n this.editor.clearSelection()\n this.removeAllMarkers()\n this.editor.session.addMarker(\n new this.Range(\n this.files[filename].lineNo - 1,\n 0,\n this.files[filename].lineNo - 1,\n 1,\n ),\n `${this.state}Marker`,\n 'fullLine',\n )\n this.editor.gotoLine(this.files[filename].lineNo)\n },\n tryLoadRunningScript: function (id) {\n return Api.get('/script-api/running-script').then((response) => {\n const loadRunningScript = response.data.find(\n (s) => `${s.id}` === `${id}`,\n )\n if (loadRunningScript) {\n this.filename = loadRunningScript.name\n this.tryLoadSuites()\n this.initScriptStart()\n this.scriptStart(loadRunningScript.id)\n } else {\n this.$notify.caution({\n title: `Running Script ${id} not found`,\n body: 'Check the Completed Scripts below ...',\n })\n this.showScripts = true\n }\n })\n },\n tryLoadSuites: function () {\n Api.get(`/script-api/scripts/${this.filename}`).then((response) => {\n if (response.data.suites) {\n this.startOrGoDisabled = true\n this.suiteRunner = true\n this.suiteMap = JSON.parse(response.data.suites)\n }\n if (response.data.error) {\n this.suiteError = response.data.error\n this.showSuiteError = true\n }\n // Disable suite buttons if we didn't successfully parse the suite\n this.disableSuiteButtons = response.data.success == false\n this.doResize()\n })\n },\n showExecuteSelectionMenu: function ($event) {\n this.menuX = $event.pageX\n this.menuY = $event.pageY\n this.executeSelectionMenu = true\n },\n runFromCursor: function () {\n const start = this.editor.getCursorPosition().row\n const text = this.editor.session.doc\n .getLines(start, this.editor.session.doc.getLength())\n .join('\\n')\n const breakpoints = this.getBreakpointRows()\n .filter((row) => row >= start)\n .map((row) => row - start)\n this.executeText(text, breakpoints)\n },\n executeSelection: function () {\n const text = this.editor.getSelectedText()\n const range = this.editor.getSelectionRange()\n const breakpoints = this.getBreakpointRows()\n .filter((row) => row <= range.end.row && row >= range.start.row)\n .map((row) => row - range.start.row)\n this.executeText(text, breakpoints)\n },\n async executeText(text, breakpoints = []) {\n let extension = this.fullFilename.split('.').pop()\n // Create a new temp script and open in new tab\n const selectionTempFilename =\n TEMP_FOLDER +\n '/' +\n format(Date.now(), 'yyyy_MM_dd_HH_mm_ss_SSS') +\n `_temp.${extension}`\n await Api.post(`/script-api/scripts/${selectionTempFilename}`, {\n data: {\n text,\n breakpoints,\n },\n })\n .then((_response) => {\n let env = this.scriptEnvironment.env\n if (this.enableStackTraces) {\n env = env.concat({\n key: 'OPENC3_FULL_BACKTRACE',\n value: '1',\n })\n }\n return Api.post(`/script-api/scripts/${selectionTempFilename}/run`, {\n data: {\n environment: env,\n },\n })\n })\n .then((response) => {\n window.open(`/tools/scriptrunner/${response.data}`)\n })\n },\n clearBreakpoints: function () {\n this.editor.session.clearBreakpoints()\n },\n toggleBreakpoint: function ($event) {\n // Don't allow setting breakpoints while running\n if (!this.scriptId) {\n const row = $event.getDocumentPosition().row\n if ($event.editor.session.getBreakpoints(row, 0)[row]) {\n $event.editor.session.clearBreakpoint(row)\n } else {\n $event.editor.session.setBreakpoint(row)\n }\n }\n },\n updateBreakpoints: function ($event, session) {\n if ($event.lines.length <= 1) {\n return\n }\n const rowsToUpdate = this.getBreakpointRows(session).filter(\n (row) =>\n ($event.start.column === 0 && row === $event.start.row) ||\n row > $event.start.row,\n )\n let rowsToDelete = []\n let offset = 0\n switch ($event.action) {\n case 'insert':\n offset = $event.lines.length - 1\n rowsToUpdate.reverse() // shift the lower ones down out of the way first\n break\n case 'remove':\n offset = -$event.lines.length + 1\n rowsToDelete = [...Array($event.lines.length).keys()].map(\n (row) => row + $event.start.row,\n )\n break\n }\n rowsToUpdate.forEach((row) => {\n session.clearBreakpoint(row)\n if (!rowsToDelete.includes(row)) {\n session.setBreakpoint(row + offset)\n }\n })\n },\n getBreakpointRows: function (session = this.editor.session) {\n return session\n .getBreakpoints()\n .map((breakpoint, row) => breakpoint && row) // [empty, 'ace_breakpoint', 'ace_breakpoint', empty] -> [empty, 1, 2, empty]\n .filter(Number.isInteger) // [empty, 1, 2, empty] -> [1, 2]\n },\n restoreBreakpoints: function (filename) {\n this.clearBreakpoints()\n this.breakpoints[filename]?.forEach((breakpoint) => {\n this.editor.session.setBreakpoint(breakpoint)\n })\n },\n deleteAllBreakpoints: function () {\n this.$dialog\n .confirm('Permanently delete all breakpoints for ALL scripts?', {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.delete('/script-api/breakpoints/delete/all')\n })\n .then((response) => {\n this.clearBreakpoints()\n })\n },\n suiteRunnerButton(event) {\n if (this.startOrGoButton === START) {\n this.start(event, 'suiteRunner')\n } else {\n this.go(event, 'suiteRunner')\n }\n },\n async keydown(event) {\n // Don't ever save if running or readonly\n if (this.scriptId || this.editor.getReadOnly() === true) {\n return\n }\n // NOTE: Chrome does not allow overriding Ctrl-N, Ctrl-Shift-N, Ctrl-T, Ctrl-Shift-T, Ctrl-W\n // NOTE: metaKey == Command on Mac\n if (\n (event.metaKey || event.ctrlKey) &&\n event.keyCode === 'S'.charCodeAt(0)\n ) {\n if (event.shiftKey) {\n event.preventDefault()\n this.saveAs()\n } else {\n event.preventDefault()\n await this.saveFile()\n }\n }\n },\n onChange(event) {\n // Don't track changes when we're running or read-only (locked)\n if (this.scriptId || this.editor.getReadOnly() === true) {\n return\n }\n if (this.editor.session.getUndoManager().canUndo()) {\n this.fileModified = '*'\n } else {\n this.fileModified = ''\n }\n },\n checkMnemonics: function () {\n this.mnemonicChecker\n .checkText(this.editor.getValue())\n .then(({ skipped, problems }) => {\n let alertText = ''\n if (problems.length) {\n const problemText = problems\n .map((problem) => `${problem.lineNumber}: ${problem.error}`)\n .join('<br/>')\n alertText += `<strong>The following lines have problems:</strong><br/>${problemText}<br/><br/>`\n }\n if (skipped.length) {\n alertText +=\n '<strong>Mnemonics with string interpolation were not checked.</strong>'\n }\n if (alertText === '') {\n alertText = '<strong>Everything looks good!</strong>'\n }\n this.$dialog.alert(alertText.trim(), { html: true })\n })\n },\n initScriptStart() {\n this.disableSuiteButtons = true\n this.startOrGoDisabled = true\n this.envDisabled = true\n this.pauseOrRetryDisabled = true\n this.stopDisabled = true\n this.state = 'Connecting...'\n this.startOrGoButton = GO\n this.editor.setReadOnly(true)\n },\n scriptStart(id) {\n this.scriptId = id\n this.cable\n .createSubscription(\n 'RunningScriptChannel',\n window.openc3Scope,\n {\n received: (data) => this.received(data),\n },\n {\n id: this.scriptId,\n },\n )\n .then((subscription) => {\n this.subscription = subscription\n })\n },\n async scriptComplete() {\n // Ensure stopped, if the script has an error we don't get the server stopped message\n this.state = 'stopped'\n this.fatal = false\n this.scriptId = null // No current scriptId\n this.currentFilename = null // No current file running\n this.files = {} // Clear the file cache\n // Make sure we process no more events\n if (this.subscription) {\n await this.subscription.unsubscribe()\n this.subscription = null\n }\n this.receivedEvents.length = 0 // Clear any unprocessed events\n\n await this.reloadFile() // Make sure the right file is shown\n // We may have changed the contents (if there were sub-scripts)\n // so don't let the undo manager think this is a change\n this.editor.session.getUndoManager().reset()\n if (this.readOnlyUser == false) {\n this.editor.setReadOnly(false)\n }\n\n // Lastly enable the buttons so another script can start\n this.disableSuiteButtons = false\n this.startOrGoButton = START\n this.pauseOrRetryButton = PAUSE\n // Disable start if suiteRunner\n this.startOrGoDisabled = this.suiteRunner\n this.envDisabled = false\n this.pauseOrRetryDisabled = true\n this.stopDisabled = true\n },\n environmentHandler: function (event) {\n this.scriptEnvironment.env = event\n },\n startHandler: function () {\n this.start()\n },\n async start(event, suiteRunner = null) {\n // Initialize variables and disable buttons before actually posting.\n // This prevents delays in the backend from delaying frontend changes\n // like disabling start which could allow users to click start twice.\n this.initScriptStart()\n await this.saveFile('start')\n this.saveAllowed = false\n let filename = this.filename\n if (this.filename === NEW_FILENAME) {\n // NEW_FILENAME so use tempFilename created by saveFile()\n filename = this.tempFilename\n }\n let url = `/script-api/scripts/${filename}/run`\n if (this.showDisconnect) {\n url += '/disconnect'\n }\n let env = this.scriptEnvironment.env\n if (this.enableStackTraces) {\n env = env.concat({\n key: 'OPENC3_FULL_BACKTRACE',\n value: '1',\n })\n }\n let data = {\n environment: env,\n }\n if (suiteRunner) {\n data['suiteRunner'] = event\n }\n Api.post(url, { data })\n .then((response) => {\n this.scriptStart(response.data)\n })\n .catch((error) => {\n this.scriptComplete()\n })\n },\n go() {\n // Ensure we're on the correct filename when we hit go\n // They may have changed it using the drop down\n this.filenameSelect = this.currentFilename\n this.fileNameChanged(this.currentFilename)\n Api.post(`/script-api/running-script/${this.scriptId}/go`)\n },\n pauseOrRetry() {\n if (this.pauseOrRetryButton === PAUSE) {\n Api.post(`/script-api/running-script/${this.scriptId}/pause`)\n } else {\n this.pauseOrRetryButton = PAUSE\n Api.post(`/script-api/running-script/${this.scriptId}/retry`)\n }\n },\n stop() {\n // We previously encountered a fatal error so remove the marker\n // and cleanup by calling scriptComplete() because the script\n // is already stopped in the backend\n if (this.fatal) {\n this.removeAllMarkers()\n this.scriptComplete()\n } else {\n Api.post(`/script-api/running-script/${this.scriptId}/stop`)\n }\n },\n step() {\n Api.post(`/script-api/running-script/${this.scriptId}/step`)\n },\n processLine(data) {\n if (data.filename && data.filename !== this.currentFilename) {\n if (!this.files[data.filename]) {\n // We don't have the contents of the running file (probably because connected to running script)\n // Set the contents initially to an empty string so we don't start slamming the API\n this.files[data.filename] = { content: '', lineNo: 0 }\n\n // Request the script we need\n Api.get(`/script-api/scripts/${data.filename}`)\n .then((response) => {\n // Success - Save the script text and mark the currentFilename as null\n // so it will get loaded in on the next line executed\n this.files[data.filename] = {\n content: response.data.contents,\n lineNo: 0,\n }\n this.breakpoints[data.filename] = response.data.breakpoints\n this.restoreBreakpoints(data.filename)\n this.currentFilename = null\n })\n .catch((err) => {\n // Error - Restore the file contents to null so we'll try the API again on the next line\n this.files[data.filename] = null\n })\n } else {\n this.currentFilename = data.filename\n this.editor.setValue(this.files[data.filename].content)\n this.restoreBreakpoints(data.filename)\n this.editor.clearSelection()\n }\n }\n this.state = data.state\n const markers = this.editor.session.getMarkers()\n switch (this.state) {\n case 'running':\n this.startOrGoDisabled = false\n this.pauseOrRetryDisabled = false\n this.stopDisabled = false\n this.pauseOrRetryButton = PAUSE\n\n this.removeAllMarkers()\n this.editor.session.addMarker(\n new this.Range(data.line_no - 1, 0, data.line_no - 1, 1),\n 'runningMarker',\n 'fullLine',\n )\n this.editor.gotoLine(data.line_no)\n this.files[data.filename].lineNo = data.line_no\n break\n case 'fatal':\n this.fatal = true\n // Deliberate fall through (no break)\n case 'error':\n this.pauseOrRetryButton = RETRY\n // Deliberate fall through (no break)\n case 'breakpoint':\n case 'waiting':\n case 'paused':\n if (this.state == 'fatal') {\n this.startOrGoDisabled = true\n this.pauseOrRetryDisabled = true\n } else {\n this.startOrGoDisabled = false\n this.pauseOrRetryDisabled = false\n }\n this.stopDisabled = false\n let existing = Object.keys(markers).filter(\n (key) => markers[key].clazz === `${this.state}Marker`,\n )\n if (existing.length === 0) {\n this.removeAllMarkers()\n let line = data.line_no > 0 ? data.line_no : 1\n this.editor.session.addMarker(\n new this.Range(line - 1, 0, line - 1, 1),\n `${this.state}Marker`,\n 'fullLine',\n )\n this.editor.gotoLine(line)\n // Fatal errors don't always have a filename set\n if (data.filename) {\n this.files[data.filename].lineNo = line\n }\n }\n break\n default:\n break\n }\n },\n processReceived() {\n let count = 0\n for (let data of this.receivedEvents) {\n count += 1\n // eslint-disable-next-line\n // console.log(data) // Uncomment for debugging\n let index = 0\n switch (data.type) {\n case 'file':\n this.files[data.filename] = { content: data.text, lineNo: 0 }\n this.breakpoints[data.filename] = data.breakpoints\n if (this.currentFilename === data.filename) {\n this.restoreBreakpoints(data.filename)\n }\n break\n case 'line':\n // A further optimization would be to only process the last line of a batch\n // However with some testing this did not seem to make much difference\n // and was preventing the highlighting of the final line of a script because\n // the last line of the final batch was line_number 0 with state stopped\n // and that would never highlight the actual final line\n this.processLine(data)\n break\n case 'output':\n // data.line can consist of multiple lines split by newlines\n // thus we split and only output if the content is not empty\n for (const line of data.line.split('\\n')) {\n if (line) {\n if (this.messagesNewestOnTop) {\n this.messages.unshift({ message: line })\n } else {\n this.messages.push({ message: line })\n }\n }\n }\n while (this.messages.length > this.maxArrayLength) {\n this.messages.pop()\n }\n break\n case 'script':\n this.handleScript(data)\n break\n case 'report':\n this.results.text = data.report\n this.results.show = true\n break\n case 'complete':\n // Don't complete on fatal because we just sit there on the fatal line\n if (!this.fatal) {\n this.removeAllMarkers()\n this.scriptComplete()\n }\n break\n case 'step':\n this.showDebug = true\n break\n case 'screen':\n let found = false\n let definition = {}\n for (screen of this.screens) {\n if (\n screen.target == data.target_name &&\n screen.screen == data.screen_name\n ) {\n definition = screen\n found = true\n break\n }\n index += 1\n }\n this.$set(definition, 'target', data.target_name)\n this.$set(definition, 'screen', data.screen_name)\n this.$set(definition, 'definition', data.definition)\n if (data.x) {\n this.$set(definition, 'left', data.x)\n } else {\n this.$set(definition, 'left', 0)\n }\n if (data.y) {\n this.$set(definition, 'top', data.y)\n } else {\n this.$set(definition, 'top', 0)\n }\n this.$set(definition, 'count', this.updateCounter++)\n if (!found) {\n this.$set(definition, 'id', this.idCounter++)\n this.$set(this.screens, this.screens.length, definition)\n } else {\n this.$set(this.screens, index, definition)\n }\n break\n case 'clearscreen':\n for (screen of this.screens) {\n if (\n screen.target == data.target_name &&\n screen.screen == data.screen_name\n ) {\n this.screens.splice(index, 1)\n break\n }\n index += 1\n }\n break\n case 'clearallscreens':\n this.screens = []\n break\n case 'downloadfile':\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = window.location.origin + data.url\n link.setAttribute('download', data.filename)\n link.click()\n break\n default:\n // console.log('Unexpected ActionCable message')\n // console.log(data)\n break\n }\n }\n\n // Remove all the events we processed\n this.receivedEvents.splice(0, count)\n },\n received(data) {\n this.cable.recordPing()\n this.receivedEvents.push(data)\n },\n promptDialogCallback(value) {\n this.prompt.show = false\n Api.post(`/script-api/running-script/${this.scriptId}/prompt`, {\n data: {\n method: this.prompt.method,\n answer: value,\n prompt_id: this.activePromptId,\n multiple: this.prompt.multiple,\n },\n })\n },\n handleScript(data) {\n if (data.prompt_complete) {\n this.activePromptId = ''\n this.prompt.show = false\n this.ask.show = false\n return\n }\n this.activePromptId = data.prompt_id\n this.prompt.method = data.method // Set it here since all prompts use this\n this.prompt.layout = 'horizontal' // Reset the layout since most are horizontal\n this.prompt.title = 'Prompt'\n this.prompt.subtitle = ''\n this.prompt.details = ''\n this.prompt.buttons = []\n this.prompt.multiple = null\n switch (data.method) {\n case 'ask':\n case 'ask_string':\n // Reset values since this dialog can be re-used\n this.ask.default = null\n this.ask.answerRequired = true\n this.ask.password = false\n this.ask.question = data.args[0]\n // If the second parameter is not true or false it indicates a default value\n if (data.args[1] && data.args[1] !== true && data.args[1] !== false) {\n this.ask.default = data.args[1].toString()\n } else if (data.args[1] === true) {\n // If the second parameter is true it means no value is required to be entered\n this.ask.answerRequired = false\n }\n // The third parameter indicates a password textfield\n if (data.args[2] === true) {\n this.ask.password = true\n }\n this.ask.callback = (value) => {\n this.ask.show = false // Close the dialog\n if (this.ask.password) {\n Api.post(`/script-api/running-script/${this.scriptId}/prompt`, {\n data: {\n method: data.method,\n password: value, // Using password as a key automatically filters it from rails logs\n prompt_id: this.activePromptId,\n },\n })\n } else {\n Api.post(`/script-api/running-script/${this.scriptId}/prompt`, {\n data: {\n method: data.method,\n answer: value,\n prompt_id: this.activePromptId,\n },\n })\n }\n }\n this.ask.show = true // Display the dialog\n break\n case 'prompt_for_hazardous':\n this.prompt.title = 'Hazardous Command'\n this.prompt.message = `Warning: Command ${data.args[0]} ${data.args[1]} is Hazardous. `\n if (data.args[2]) {\n this.prompt.message += data.args[2] + ' '\n }\n this.prompt.message += 'Send?'\n this.prompt.buttons = [{ text: 'Send', value: 'Send' }]\n this.prompt.callback = this.promptDialogCallback\n this.prompt.show = true\n break\n case 'prompt':\n if (data.kwargs && data.kwargs.informative) {\n this.prompt.subtitle = data.kwargs.informative\n }\n if (data.kwargs && data.kwargs.details) {\n this.prompt.details = data.kwargs.details\n }\n this.prompt.message = data.args[0]\n this.prompt.buttons = [{ text: 'Ok', value: 'Ok' }]\n this.prompt.callback = this.promptDialogCallback\n this.prompt.show = true\n break\n case 'combo_box':\n if (data.kwargs && data.kwargs.informative) {\n this.prompt.subtitle = data.kwargs.informative\n }\n if (data.kwargs && data.kwargs.details) {\n this.prompt.details = data.kwargs.details\n }\n if (data.kwargs && data.kwargs.multiple) {\n this.prompt.multiple = true\n }\n this.prompt.message = data.args[0]\n data.args.slice(1).forEach((v) => {\n this.prompt.buttons.push({ text: v, value: v })\n })\n this.prompt.layout = 'combo'\n this.prompt.callback = this.promptDialogCallback\n this.prompt.show = true\n break\n case 'message_box':\n case 'vertical_message_box':\n if (data.kwargs && data.kwargs.informative) {\n this.prompt.subtitle = data.kwargs.informative\n }\n if (data.kwargs && data.kwargs.details) {\n this.prompt.details = data.kwargs.details\n }\n this.prompt.message = data.args[0]\n data.args.slice(1).forEach((v) => {\n this.prompt.buttons.push({ text: v, value: v })\n })\n if (data.method.includes('vertical')) {\n this.prompt.layout = 'vertical'\n }\n this.prompt.callback = this.promptDialogCallback\n this.prompt.show = true\n break\n case 'backtrace':\n this.information.title = 'Call Stack'\n this.information.text = data.args\n this.information.show = true\n break\n case 'metadata_input':\n this.inputMetadata.callback = (value) => {\n this.inputMetadata.show = false\n Api.post(`/script-api/running-script/${this.scriptId}/prompt`, {\n data: {\n method: data.method,\n answer: value,\n prompt_id: this.activePromptId,\n },\n })\n }\n this.showMetadata()\n break\n // This is called continuously by the backend\n case 'open_file_dialog':\n case 'open_files_dialog':\n this.file.title = data.args[0]\n this.file.message = data.args[1]\n if (data.kwargs && data.kwargs.filter) {\n this.file.filter = data.kwargs.filter\n }\n if (data.method == 'open_files_dialog') {\n this.file.multiple = true\n }\n this.file.show = true\n break\n default:\n /* console.log(\n 'Unknown script method:' + data.method + ' with args:' + data.args\n ) */\n break\n }\n },\n async fileDialogCallback(files) {\n // Set fileNames to 'Cancel' in case they cancelled\n // otherwise we will populate it with the file names they selected\n let fileNames = 'Cancel'\n // Record all the API request promises so we can ensure they complete\n let promises = []\n if (files != 'Cancel') {\n fileNames = []\n files.forEach((file) => {\n fileNames.push(file.name)\n promises.push(\n Api.get(\n `/openc3-api/storage/upload/${encodeURIComponent(\n `${window.openc3Scope}/tmp/${file.name}`,\n )}?bucket=OPENC3_CONFIG_BUCKET`,\n ).then((response) => {\n // This pushes the file into storage by using the fields in the presignedRequest\n // See storage_controller.rb get_upload_presigned_request()\n promises.push(\n axios({\n ...response.data,\n data: file,\n }),\n )\n }),\n )\n })\n }\n // We have to wait for all the upload API requests to finish before notifying the prompt\n Promise.all(promises).then((responses) => {\n Api.post(`/script-api/running-script/${this.scriptId}/prompt`, {\n data: {\n method: this.file.multiple\n ? 'open_files_dialog'\n : 'open_file_dialog',\n answer: fileNames,\n prompt_id: this.activePromptId,\n },\n }).then((response) => {\n this.file.show = false // Close the dialog\n })\n })\n },\n setError(event) {\n this.alertType = 'error'\n this.alertText = `Error: ${event}`\n this.showAlert = true\n },\n // ScriptRunner File menu actions\n newFile() {\n this.unlockFile()\n this.filename = NEW_FILENAME\n this.currentFilename = null\n this.tempFilename = null\n this.files = {} // Clear the cached file list\n this.editor.session.setValue('')\n this.saveAllowed = true\n this.fileModified = ''\n this.suiteRunner = false\n this.startOrGoDisabled = false\n this.envDisabled = false\n this.$router\n .replace({\n name: 'ScriptRunner',\n })\n // catch the error in case we route to where we already are\n .catch((err) => {})\n document.title = 'Script Runner'\n this.doResize()\n },\n async newRubyTestSuite() {\n this.newFile()\n this.editor.session.setValue(`require 'openc3/script/suite.rb'\n\n# Group class name should indicate what the scripts are testing\nclass Power < OpenC3::Group\n # Methods beginning with script_ are added to Script dropdown\n def script_power_on\n # Using OpenC3::Group.puts adds the output to the Test Report\n # This can be useful for requirements verification, QA notes, etc\n OpenC3::Group.puts \"Verifying requirement SR-1\"\n configure()\n end\n\n # Other methods are not added to Script dropdown\n def configure\n end\n\n def setup\n # Run when Group Setup button is pressed\n # Run before all scripts when Group Start is pressed\n end\n\n def teardown\n # Run when Group Teardown button is pressed\n # Run after all scripts when Group Start is pressed\n end\nend\n\nclass TestSuite < OpenC3::Suite\n def initialize\n add_group('Power')\n end\n def setup\n # Run when Suite Setup button is pressed\n # Run before all groups when Suite Start is pressed\n end\n def teardown\n # Run when Suite Teardown button is pressed\n # Run after all groups when Suite Start is pressed\n end\nend\n`)\n await this.saveFile('auto')\n },\n async newPythonTestSuite() {\n this.newFile()\n this.editor.session.setValue(`from openc3.script.suite import Suite, Group\n\n# Group class name should indicate what the scripts are testing\nclass Power(Group):\n # Methods beginning with script_ are added to Script dropdown\n def script_power_on(self):\n # Using Group.print adds the output to the Test Report\n # This can be useful for requirements verification, QA notes, etc\n Group.print(\"Verifying requirement SR-1\")\n self.configure()\n\n # Other methods are not added to Script dropdown\n def configure(self):\n pass\n\n def setup(self):\n # Run when Group Setup button is pressed\n # Run before all scripts when Group Start is pressed\n pass\n\n def teardown(self):\n # Run when Group Teardown button is pressed\n # Run after all scripts when Group Start is pressed\n pass\n\nclass TestSuite(Suite):\n def __init__(self):\n self.add_group(Power)\n\n def setup(self):\n # Run when Suite Setup button is pressed\n # Run before all groups when Suite Start is pressed\n pass\n\n def teardown(self):\n # Run when Suite Teardown button is pressed\n # Run after all groups when Suite Start is pressed\n pass\n`)\n await this.saveFile('auto')\n },\n addToRecent(filename) {\n // See if this filename is already in the recent ... if so remove it\n let index = this.recent.findIndex((i) => i.label === filename)\n if (index !== -1) {\n this.recent.splice(index, 1)\n }\n // Push this filename to the front of the recently used\n this.recent.unshift({\n label: filename,\n icon: fileIcon(filename),\n command: async (event) => {\n this.filename = event.label\n await this.reloadFile()\n },\n })\n if (this.recent.length > 8) {\n this.recent.pop()\n }\n // This only stringifies the label and icon ... not the command\n localStorage['script_runner__recent'] = JSON.stringify(this.recent)\n },\n removeFromRecent(filename) {\n this.recent = this.recent.filter((entry) => entry.label !== filename)\n localStorage['script_runner__recent'] = JSON.stringify(this.recent)\n if (localStorage['script_runner__filename'] === filename) {\n localStorage.removeItem('script_runner__filename')\n }\n },\n openFile() {\n this.fileOpen = true\n },\n async reloadFile(showError = true) {\n // Disable start while we're loading the file so we don't hit Start\n // before it's fully loaded and then save over it with a blank file\n this.saveAllowed = false\n this.startOrGoDisabled = true\n await Api.get(`/script-api/scripts/${this.filename}`, {\n headers: {\n Accept: 'application/json',\n 'Ignore-Errors': '404',\n },\n })\n .then((response) => {\n const file = {\n name: this.filename,\n contents: response.data.contents,\n }\n if (response.data.suites) {\n file['suites'] = JSON.parse(response.data.suites)\n }\n if (response.data.error) {\n file['error'] = response.data.error\n }\n if (response.data.success) {\n file['success'] = response.data.success\n }\n const locked = response.data.locked\n const breakpoints = response.data.breakpoints\n this.setFile({ file, locked, breakpoints }, true)\n this.saveAllowed = true\n })\n .catch((error) => {\n if (showError === true) {\n this.$notify.caution({\n title: 'File Open Error',\n body: `Failed to open ${this.filename} due to ${error}`,\n })\n }\n this.removeFromRecent(this.filename)\n this.newFile() // Reset the GUI\n })\n },\n // Called by the FileOpenDialog to set the file contents\n setFile({ file, locked, breakpoints }, local = false) {\n this.files = {} // Clear the cached file list\n // Split off the ' *' which indicates a file is modified on the server\n let newFilename = file.name.split('*')[0]\n if (local === false) {\n // We only need to unlock if the file is different\n if (this.filename !== newFilename) {\n this.unlockFile() // first unlock what was just being edited\n this.lockedBy = locked\n }\n }\n this.filename = newFilename\n // Update the URL with the filename\n this.$router\n .replace({\n name: 'ScriptRunner',\n query: {\n file: this.filename,\n },\n })\n // catch the error in case we route to where we already are\n .catch((err) => {})\n\n // Update the browser tab with the name of the file first\n // so squished tabs are still useful, followed by the rest\n // of the path for context. Target name will be first which\n // is probably the most useful part of the path.\n let parts = this.filename.split('/')\n document.title = `${parts.pop()} (${parts.join('/')})`\n\n if (this.filename.split('.').pop() === 'py') {\n this.editor.session.setMode(this.openC3PythonMode)\n } else {\n this.editor.session.setMode(this.openC3RubyMode)\n }\n this.currentFilename = null\n this.editor.session.setValue(file.contents)\n this.breakpoints[filename] = breakpoints\n this.restoreBreakpoints(filename)\n this.fileModified = ''\n this.envDisabled = false\n this.addToRecent(this.filename)\n\n if (file.suites) {\n this.suiteRunner = true\n this.suiteMap = file.suites\n this.startOrGoDisabled = true\n } else {\n this.suiteRunner = false\n this.startOrGoDisabled = false\n }\n if (file.error) {\n this.suiteError = file.error\n this.showSuiteError = true\n }\n // Disable suite buttons if we didn't successfully parse the suite\n this.disableSuiteButtons = file.success == false\n this.doResize()\n },\n clearTemp() {\n this.recent = this.recent.filter(\n (entry) => !entry.label.includes('__TEMP__'),\n )\n localStorage['script_runner__recent'] = JSON.stringify(this.recent)\n },\n detectLanguage() {\n let rubyRegex1 = new RegExp('^\\\\s*(require|load|puts) ')\n let pythonRegex1 = new RegExp('^\\\\s*(import|from) ')\n let rubyRegex2 = new RegExp('^\\\\s*end\\\\s*$')\n let pythonRegex2 = new RegExp(\n '^\\\\s*(if|def|while|else|elif|class).*:\\\\s*$',\n )\n let pythonRegex3 = new RegExp('\\\\(f\"') // f strings\n let text = this.editor.getValue()\n let lines = text.split('\\n')\n for (let line of lines) {\n if (line.match(rubyRegex1)) {\n return 'ruby'\n }\n if (line.match(pythonRegex1)) {\n return 'python'\n }\n if (line.match(rubyRegex2)) {\n return 'ruby'\n }\n if (line.match(pythonRegex2)) {\n return 'python'\n }\n if (line.match(pythonRegex3)) {\n return 'python'\n }\n }\n return 'unknown' // otherwise unknown\n },\n // saveFile takes a type to indicate if it was called by the Menu\n // or automatically by 'Start' (to ensure a consistent backend file) or autoSave\n async saveFile(type = 'menu') {\n if (this.readOnlyUser) {\n return\n }\n if (this.saveAllowed) {\n const breakpoints = this.getBreakpointRows()\n if (this.filename === NEW_FILENAME) {\n if (type === 'menu') {\n // Menu driven saves on a new file should prompt SaveAs\n this.saveAs()\n return\n } else {\n // start or auto with NEW_FILENAME\n if (this.tempFilename === null) {\n let language = this.detectLanguage()\n if (\n language === 'ruby' ||\n (type !== 'auto' && language == 'unknown')\n ) {\n this.tempFilename =\n TEMP_FOLDER +\n '/' +\n format(Date.now(), 'yyyy_MM_dd_HH_mm_ss_SSS') +\n '_temp.rb'\n } else if (language === 'python') {\n this.tempFilename =\n TEMP_FOLDER +\n '/' +\n format(Date.now(), 'yyyy_MM_dd_HH_mm_ss_SSS') +\n '_temp.py'\n } else {\n // No autosave for unknown language\n return\n }\n this.filename = this.tempFilename\n this.addToRecent(this.filename)\n }\n }\n }\n this.showSave = true\n await Api.post(`/script-api/scripts/${this.filename}`, {\n data: {\n text: this.editor.getValue(), // Pass in the raw file text\n breakpoints,\n },\n })\n .then((response) => {\n if (response.status == 200) {\n if (response.data.suites) {\n this.startOrGoDisabled = true\n this.suiteRunner = true\n this.suiteMap = JSON.parse(response.data.suites)\n } else {\n this.startOrGoDisabled = false\n this.suiteRunner = false\n this.suiteMap = {}\n }\n if (response.data.error) {\n this.suiteError = response.data.error\n this.showSuiteError = true\n }\n this.fileModified = ''\n setTimeout(() => {\n this.showSave = false\n }, 2000)\n } else {\n this.showSave = false\n this.alertType = 'error'\n this.alertText = `Error saving file. Code: ${response.status} Text: ${response.statusText}`\n this.showAlert = true\n }\n this.lockFile() // Ensure this file is locked for editing\n this.doResize()\n })\n .catch(({ response }) => {\n this.showSave = false\n // 422 error means we couldn't parse the script file into Suites\n // response.data.suites holds the parse result\n if (response.status == 422) {\n this.alertType = 'error'\n this.alertText = response.data.suites\n } else {\n this.alertType = 'error'\n this.alertText = `Error saving file. Code: ${response.status} Text: ${response.statusText}`\n }\n this.showAlert = true\n })\n } else {\n this.setError('Attempt to save file when not allowed')\n }\n },\n saveAs() {\n this.showSaveAs = true\n },\n async saveAsFilename(filename) {\n this.filename = filename.split('*')[0]\n this.currentFilename = null\n if (this.tempFilename) {\n Api.post(`/script-api/scripts/${this.tempFilename}/delete`)\n this.tempFilename = null\n }\n await this.saveFile('menu')\n },\n delete() {\n let filename = this.filename\n if (this.tempFilename) {\n filename = this.tempFilename\n }\n this.$dialog\n .confirm(`Permanently delete file: ${filename}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n return Api.post(`/script-api/scripts/${filename}/delete`, {\n data: {},\n })\n })\n .then((response) => {\n this.removeFromRecent(filename)\n this.newFile()\n })\n .catch((error) => {\n if (error !== true) {\n const alertObject = {\n text: `Failed Multi-Delete. ${error}`,\n type: 'error',\n }\n this.$emit('alert', alertObject)\n }\n })\n },\n download() {\n const blob = new Blob([this.editor.getValue()], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', this.filename)\n link.click()\n },\n // ScriptRunner Script menu actions\n syntaxCheck() {\n Api.post(`/script-api/scripts/${this.filename}/syntax`, {\n data: this.editor.getValue(),\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'plain/text',\n },\n }).then((response) => {\n this.information.title = response.data.title\n this.information.text = JSON.parse(response.data.description)\n this.information.show = true\n })\n },\n showInstrumented() {\n Api.post(`/script-api/scripts/${this.filename}/instrumented`, {\n data: this.editor.getValue(),\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'plain/text',\n },\n }).then((response) => {\n this.information.title = response.data.title\n this.information.text = JSON.parse(response.data.description)\n this.information.show = true\n })\n },\n showCallStack() {\n Api.post(`/script-api/running-script/${this.scriptId}/backtrace`)\n },\n toggleDebug() {\n this.showDebug = !this.showDebug\n },\n toggleDisconnect() {\n this.showDisconnect = !this.showDisconnect\n },\n debugKeydown(event) {\n if (event.key === 'Escape') {\n this.debug = ''\n this.debugHistoryIndex = this.debugHistory.length\n } else if (event.key === 'Enter') {\n this.debugHistory.push(this.debug)\n this.debugHistoryIndex = this.debugHistory.length\n // Post the code to /debug, output is processed by receive()\n Api.post(`/script-api/running-script/${this.scriptId}/debug`, {\n data: {\n args: this.debug,\n },\n })\n this.debug = ''\n } else if (event.key === 'ArrowUp') {\n this.debugHistoryIndex -= 1\n if (this.debugHistoryIndex < 0) {\n this.debugHistoryIndex = this.debugHistory.length - 1\n }\n this.debug = this.debugHistory[this.debugHistoryIndex]\n // Prevent the cursor/caret from moving to the front\n event.preventDefault()\n } else if (event.key === 'ArrowDown') {\n this.debugHistoryIndex += 1\n if (this.debugHistoryIndex >= this.debugHistory.length) {\n this.debugHistoryIndex = 0\n }\n this.debug = this.debugHistory[this.debugHistoryIndex]\n }\n },\n removeAllMarkers: function () {\n const allMarkers = this.editor.session.getMarkers()\n Object.keys(allMarkers)\n .filter((key) => allMarkers[key].type === 'fullLine')\n .forEach((marker) => this.editor.session.removeMarker(marker))\n },\n confirmLocalUnlock: function () {\n this.$dialog\n .confirm(\n 'Are you sure you want to unlock this script for editing? If another user is editing this script, 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 if (!this.readOnlyUser) {\n return Api.post(`/script-api/scripts/${this.filename}/lock`)\n }\n },\n unlockFile: function () {\n if (\n this.filename !== NEW_FILENAME &&\n !this.readOnly &&\n !this.readOnlyUser\n ) {\n Api.post(`/script-api/scripts/${this.filename}/unlock`)\n }\n },\n screenId(id) {\n return 'scriptRunnerScreen' + id\n },\n closeScreen(id) {\n let index = 0\n for (screen of this.screens) {\n if (screen.id == id) {\n this.screens.splice(index, 1)\n break\n }\n index += 1\n }\n },\n },\n}\n<\/script>\n\n<style scoped>\n#sr-controls {\n padding: 0px;\n}\n.editorbox {\n height: 40vh;\n}\n.editor {\n height: 100%;\n width: 100%;\n position: relative;\n font-size: 16px;\n}\nhr {\n pointer-events: none;\n position: relative;\n top: 7px;\n background-color: grey;\n height: 3px;\n width: 5%;\n margin: auto;\n}\n.script-state {\n background-color: var(--color-background-base-default);\n}\n.script-state :deep(input) {\n text-transform: capitalize;\n}\n</style>\n<style>\n.runningMarker {\n position: absolute;\n background: rgba(0, 255, 0, 0.5);\n z-index: 20;\n}\n.waitingMarker {\n position: absolute;\n background: rgba(0, 155, 0, 1);\n z-index: 20;\n}\n.breakpointMarker {\n position: absolute;\n border-style: solid;\n border-color: red;\n background: rgba(0, 255, 0, 0.5);\n z-index: 20;\n}\n.pausedMarker {\n position: absolute;\n background: rgba(0, 140, 255, 0.5);\n z-index: 20;\n}\n.errorMarker {\n position: absolute;\n background: rgba(255, 0, 119, 0.5);\n z-index: 20;\n}\n.fatalMarker {\n position: absolute;\n background: rgba(255, 0, 0, 0.5);\n z-index: 20;\n}\n.saving {\n z-index: 20;\n opacity: 0.35;\n}\n.ace_gutter-cell.ace_breakpoint {\n border-radius: 20px 0px 0px 20px;\n box-shadow: 0px 0px 1px 1px red inset;\n}\n.grid {\n position: relative;\n}\n.item {\n position: absolute;\n display: block;\n margin: 5px;\n z-index: 1;\n}\n.item-content {\n position: relative;\n cursor: pointer;\n border-radius: 6px;\n}\n</style>\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"d7e42db43330b1853f33cb69f891394878fe8106"},s=t[l]||(t[l]={});s[e]&&s[e].hash===n||(s[e]=i);var o=s[e];return Al=function(){return o},o}Al();const pl=(Al().s[0]++,"__TEMP__"),hl=(Al().s[1]++,"<Untitled>"),vl=(Al().s[2]++,"Start"),fl=(Al().s[3]++,"Go"),gl=(Al().s[4]++,"Pause"),Cl=(Al().s[5]++,"Retry"),bl={components:{FileOpenSaveDialog:C,Openc3Screen:xt,EnvironmentDialog:k,Multipane:d.S,MultipaneResizer:d.M,TopBar:F,AskDialog:q,FileDialog:ee,InformationDialog:re,EventListDialog:rn,OverridesDialog:vn,PromptDialog:xn,ResultsDialog:Rn,ScriptEnvironmentDialog:Hn,SimpleTextDialog:D,SuiteRunner:Yn,RunningScripts:ml,ScriptLogMessages:tt},data(){return Al().f[0]++,Al().s[6]++,{title:"Script Runner",suiteRunner:!1,disableSuiteButtons:!1,suiteMap:{},filenameSelect:null,currentFilename:null,showSave:!1,showAlert:!1,alertType:null,alertText:"",state:null,scriptId:null,startOrGoButton:vl,startOrGoDisabled:!1,envDisabled:!1,pauseOrRetryButton:gl,pauseOrRetryDisabled:!1,stopDisabled:!1,showEnvironment:!1,showDebug:!1,debug:"",debugHistory:[],debugHistoryIndex:0,showDisconnect:!1,files:{},breakpoints:{},enableStackTraces:!1,filename:hl,readOnlyUser:!1,executeUser:!0,saveAllowed:!0,tempFilename:null,fileModified:"",fileOpen:!1,lockedBy:null,showEditingToast:!1,showSaveAs:!1,areYouSure:!1,subscription:null,cable:null,fatal:!1,updateInterval:null,receivedEvents:[],messages:[],messagesNewestOnTop:!0,maxArrayLength:200,Range:c.require("ace/range").Range,ask:{show:!1,question:"",default:null,password:!1,answerRequired:!0,callback:()=>{Al().f[1]++}},file:{show:!1,message:"",directory:null,filter:"*",multiple:!1,callback:()=>{Al().f[2]++}},prompt:{show:!1,title:"",subtitle:"",message:"",details:"",buttons:null,layout:"horizontal",callback:()=>{Al().f[3]++}},information:{show:!1,title:"",text:[]},inputMetadata:{show:!1,events:[],callback:()=>{Al().f[4]++}},results:{show:!1,text:""},scriptEnvironment:{show:!1,env:[]},showSuiteError:!1,suiteError:"",executeSelectionMenu:!1,menuX:0,menuY:0,mnemonicChecker:new Ht,showScripts:!1,showOverrides:!1,activePromptId:"",api:null,timeZone:"local",screens:[],screenKeywords:null,idCounter:0,updateCounter:0,recent:[]}},computed:{fileList:function(){Al().f[5]++;const e=(Al().s[7]++,Object.keys(this.files));return Al().s[8]++,e.push(this.fullFilename),Al().s[9]++,[...new Set(e)]},environmentIcon:function(){return Al().f[6]++,Al().s[10]++,this.scriptEnvironment.env.length>0?(Al().b[0][0]++,"mdi-bookmark"):(Al().b[0][1]++,"mdi-bookmark-outline")},environmentIconColor:function(){return Al().f[7]++,Al().s[11]++,this.scriptEnvironment.env.length>0?(Al().b[1][0]++,"primary"):(Al().b[1][1]++,"")},isLocked:function(){return Al().f[8]++,Al().s[12]++,!!this.lockedBy},fullFilename:function(){return Al().f[9]++,Al().s[13]++,this.currentFilename?(Al().b[2][0]++,Al().s[14]++,this.currentFilename):(Al().b[2][1]++,Al().s[15]++,this.filename===hl?(Al().b[3][0]++,Al().s[16]++,hl):(Al().b[3][1]++,Al().s[17]++,`${this.filename} ${this.fileModified}`.trim()))},filenameOrBlank:function(){return Al().f[10]++,Al().s[18]++,this.filename===hl?(Al().b[4][0]++,""):(Al().b[4][1]++,this.filename)},menus:function(){return Al().f[11]++,Al().s[19]++,[{label:"File",items:[{label:"New File",icon:"mdi-file-plus",disabled:(Al().b[5][0]++,this.scriptId||(Al().b[5][1]++,this.readOnlyUser)),command:()=>{Al().f[12]++,Al().s[20]++,this.newFile()}},{label:"New Suite",icon:"mdi-file-document-plus",disabled:(Al().b[6][0]++,this.scriptId||(Al().b[6][1]++,this.readOnlyUser)),subMenu:[{label:"Ruby",icon:"mdi-language-ruby",command:()=>{Al().f[13]++,Al().s[21]++,this.newRubyTestSuite()}},{label:"Python",icon:"mdi-language-python",command:()=>{Al().f[14]++,Al().s[22]++,this.newPythonTestSuite()}}]},{label:"Open File",icon:"mdi-folder-open",disabled:this.scriptId,command:()=>{Al().f[15]++,Al().s[23]++,this.openFile()}},{label:"Open Recent",icon:"mdi-folder-open",disabled:this.scriptId,subMenu:this.recent},{divider:!0},{label:"Save File",icon:"mdi-content-save",disabled:(Al().b[7][0]++,this.scriptId||(Al().b[7][1]++,this.readOnlyUser)),command:()=>{Al().f[16]++,Al().s[24]++,this.saveFile()}},{label:"Save As...",icon:"mdi-content-save",disabled:(Al().b[8][0]++,this.scriptId||(Al().b[8][1]++,this.readOnlyUser)),command:()=>{Al().f[17]++,Al().s[25]++,this.saveAs()}},{divider:!0},{label:"Download",icon:"mdi-cloud-download",disabled:this.scriptId,command:()=>{Al().f[18]++,Al().s[26]++,this.download()}},{divider:!0},{label:"Delete File",icon:"mdi-delete",disabled:(Al().b[9][0]++,this.scriptId||(Al().b[9][1]++,this.readOnlyUser)),command:()=>{Al().f[19]++,Al().s[27]++,this.delete()}}]},{label:"Edit",items:[{label:"Find",icon:"mdi-magnify",command:()=>{Al().f[20]++,Al().s[28]++,this.editor.execCommand("find")}},{label:"Replace",icon:"mdi-find-replace",disabled:this.scriptId,command:()=>{Al().f[21]++,Al().s[29]++,this.editor.execCommand("replace")}},{label:"Set Line Delay",icon:"mdi-invoice-text-clock",disabled:this.scriptId,command:()=>{Al().f[22]++,Al().s[30]++,this.$dialog.open({title:"Info",text:"You can set the line delay in seconds using the api method set_line_delay().<br/><br/>The default line delay is 0.1 seconds between lines. Adding set_line_delay(0) to the top of your script will execute the script at maximum speed. However, this can make it difficult to see and pause the script. Executing set_line_delay(1) will cause a 1 second delay between lines.",okText:"OK",okClass:"primary",validateText:null,cancelText:null,html:!0})}}]},{label:"Script",items:[{label:"Execution Status",icon:"mdi-run",command:()=>{Al().f[23]++,Al().s[31]++,this.showScripts=!0}},{divider:!0},{label:"Global Environment",icon:"mdi-library",disabled:this.scriptId,command:()=>{Al().f[24]++,Al().s[32]++,this.showEnvironment=!this.showEnvironment}},{label:"Metadata",icon:"mdi-calendar",disabled:this.scriptId,command:()=>{Al().f[25]++,Al().s[33]++,this.inputMetadata.callback=()=>{Al().f[26]++},Al().s[34]++,this.showMetadata()}},{label:"Overrides",icon:"mdi-swap-horizontal",command:()=>{Al().f[27]++,Al().s[35]++,this.showOverrides=!0}},{divider:!0},{label:"Syntax Check",icon:"mdi-file-check",disabled:this.scriptId,command:()=>{Al().f[28]++,Al().s[36]++,this.syntaxCheck()}},{label:"Mnemonic Check",icon:"mdi-spellcheck",disabled:this.scriptId,command:()=>{Al().f[29]++,Al().s[37]++,this.checkMnemonics()}},{label:"Instrumented Script",icon:"mdi-code-braces-box",disabled:this.scriptId,command:()=>{Al().f[30]++,Al().s[38]++,this.showInstrumented()}},{label:"Call Stack",icon:"mdi-format-list-numbered",disabled:!this.scriptId,command:()=>{Al().f[31]++,Al().s[39]++,this.showCallStack()}},{divider:!0},{label:"Toggle Debug",icon:"mdi-bug",command:()=>{Al().f[32]++,Al().s[40]++,this.toggleDebug()}},{label:"Toggle Disconnect",icon:"mdi-connection",disabled:this.scriptId,command:()=>{Al().f[33]++,Al().s[41]++,this.toggleDisconnect()}},{label:"Enable Stack Traces",checkbox:!0,checked:!1,disabled:this.scriptId,command:e=>{Al().f[34]++,Al().s[42]++,this.enableStackTraces=e.checked}},{divider:!0},{label:"Delete All Breakpoints",icon:"mdi-delete-circle-outline",disabled:this.scriptId,command:()=>{Al().f[35]++,Al().s[43]++,this.deleteAllBreakpoints()}}]}]},executeSelectionMenuItems:function(){return Al().f[36]++,Al().s[44]++,[{label:"Execute selection",command:this.executeSelection},{label:"Run from here",command:this.runFromCursor},{label:"Clear local breakpoints",command:this.clearBreakpoints}]}},watch:{isLocked:function(e){Al().f[37]++,Al().s[45]++,this.showEditingToast=e,Al().s[46]++,this.suiteRunner?Al().b[10][1]++:(Al().b[10][0]++,Al().s[47]++,this.startOrGoDisabled=e),Al().s[48]++,Al().b[12][0]++,0==this.readOnlyUser&&(Al().b[12][1]++,0==e)?(Al().b[11][0]++,Al().s[49]++,this.editor.setReadOnly(e)):(Al().b[11][1]++,Al().s[50]++,this.editor.setReadOnly(!0))},fullFilename:function(e){Al().f[38]++,Al().s[51]++,this.filenameSelect=e,Al().s[52]++,e===hl?(Al().b[13][0]++,Al().s[53]++,localStorage.removeItem("script_runner__filename")):(Al().b[13][1]++,Al().s[54]++,localStorage["script_runner__filename"]=e)}},created:async function(){Al().f[39]++,Al().s[55]++,this.api=new P.x,Al().s[56]++,this.api.ensure_offline_access(),Al().s[57]++,this.api.get_setting("time_zone").then((e=>{Al().f[40]++,Al().s[58]++,e?(Al().b[14][0]++,Al().s[59]++,this.timeZone=e):Al().b[14][1]++})).catch((e=>{Al().f[41]++})),Al().s[60]++,this.NEW_FILENAME=hl,Al().s[61]++,window.onbeforeunload=this.unlockFile;let e=(Al().s[62]++,OpenC3Auth.user()),n=(Al().s[63]++,OpenC3Auth.userroles());Al().s[64]++,this.readOnlyUser=!0,Al().s[65]++,this.executeUser=!1,Al().s[66]++;for(let t of n)Al().s[67]++,"viewer"!=t?(Al().b[15][1]++,Al().s[69]++,Al().b[17][0]++,"admin"==t||(Al().b[17][1]++,"operator"==t)?(Al().b[16][0]++,Al().s[70]++,this.readOnlyUser=!1,Al().s[71]++,this.executeUser=!0):(Al().b[16][1]++,Al().s[72]++,"runner"==t?(Al().b[18][0]++,Al().s[73]++,this.executeUser=!0):(Al().b[18][1]++,Al().s[74]++,await r.A.get(`/openc3-api/roles/${t}`).then((e=>{Al().f[42]++,Al().s[75]++,void 0!==e.data.permissions?(Al().b[19][0]++,Al().s[76]++,e.data.permissions.some((e=>(Al().f[43]++,Al().s[77]++,"script_edit"==e.permission)))?(Al().b[20][0]++,Al().s[78]++,this.readOnlyUser=!1):Al().b[20][1]++,Al().s[79]++,e.data.permissions.some((e=>(Al().f[44]++,Al().s[80]++,"script_run"==e.permission)))?(Al().b[21][0]++,Al().s[81]++,this.executeUser=!0):Al().b[21][1]++):Al().b[19][1]++}))))):(Al().b[15][0]++,Al().s[68]++);if(Al().s[82]++,localStorage["script_runner__userinfo"]=JSON.stringify({name:e["preferred_username"],readOnly:this.readOnlyUser,execute:this.executeUser}),Al().s[83]++,1==this.readOnlyUser){Al().b[22][0]++,Al().s[84]++,this.alertType="info";let n=(Al().s[85]++,`User ${e["preferred_username"]} is read only`);Al().s[86]++,this.executeUser?(Al().b[23][0]++,Al().s[87]++,n+=" but can execute scripts"):Al().b[23][1]++,Al().s[88]++,this.alertText=n,Al().s[89]++,this.showAlert=!0}else Al().b[22][1]++;Al().s[90]++,r.A.get("/openc3-api/autocomplete/keywords/screen").then((e=>{Al().f[45]++,Al().s[91]++,this.screenKeywords=e.data}))},mounted:async function(){Al().f[46]++,Al().s[92]++,this.editor=c.edit(this.$refs.editor),Al().s[93]++,this.editor.setTheme("ace/theme/twilight");const e=(Al().s[94]++,["check","check_raw","check_formatted","check_with_units","check_exception","check_tolerance","check_expression","wait","wait_tolerance","wait_expression","wait_check","wait_check_tolerance","wait_check_expression","wait_packet","wait_check_packet","disable_instrumentation","set_line_delay","get_line_delay","set_max_output","get_max_output"]),n=(Al().s[95]++,this.buildOpenC3RubyMode(e)),t=(Al().s[96]++,this.buildOpenC3PythonMode(e));Al().s[97]++,this.openC3RubyMode=new n,Al().s[98]++,this.openC3PythonMode=new t,Al().s[99]++,this.editor.session.setMode(this.openC3RubyMode),Al().s[100]++,this.editor.session.setTabSize(2),Al().s[101]++,this.editor.session.setUseWrapMode(!0),Al().s[102]++,this.editor.$blockScrolling=1/0,Al().s[103]++,this.editor.setOption("enableBasicAutocompletion",!0),Al().s[104]++,this.editor.setOption("enableLiveAutocompletion",!0),Al().s[105]++,this.editor.completers=[new $t,new Nt],Al().s[106]++,this.editor.setHighlightActiveLine(!1),Al().s[107]++,this.editor.focus(),Al().s[108]++,this.editor.on("guttermousedown",this.toggleBreakpoint),Al().s[109]++,this.editor.session.on("tokenizerUpdate",this.onChange),Al().s[110]++,this.readOnlyUser?(Al().b[24][0]++,Al().s[111]++,this.editor.setReadOnly(!0),Al().s[112]++,this.editor.renderer.$cursorLayer.element.style.display="none"):Al().b[24][1]++;const l=(Al().s[113]++,new ll(this.editor));Al().s[114]++,this.editor.session.on("change",((e,n)=>{Al().f[47]++,Al().s[115]++,l.annotate(e,n),Al().s[116]++,this.updateBreakpoints(e,n)})),Al().s[117]++,this.editor.container.addEventListener("resize",this.doResize),Al().s[118]++,this.editor.container.addEventListener("keydown",this.keydown),Al().s[119]++,this.doResize(),Al().s[120]++,this.cable=new a.A("/script-api/cable"),Al().s[121]++,localStorage["script_runner__recent"]?(Al().b[25][0]++,Al().s[122]++,this.recent=JSON.parse(localStorage["script_runner__recent"]),Al().s[123]++,this.recent=this.recent.map((e=>(Al().f[48]++,Al().s[124]++,{...e,command:async e=>{Al().f[49]++,Al().s[125]++,this.filename=e.label,Al().s[126]++,await this.reloadFile()}})))):Al().b[25][1]++,Al().s[127]++,this.$route.query?.file?(Al().b[26][0]++,Al().s[128]++,this.filename=this.$route.query.file,Al().s[129]++,await this.reloadFile()):(Al().b[26][1]++,Al().s[130]++,this.$route.params?.id?(Al().b[27][0]++,Al().s[131]++,await this.tryLoadRunningScript(this.$route.params.id)):(Al().b[27][1]++,Al().s[132]++,localStorage["script_runner__filename"]?(Al().b[28][0]++,Al().s[133]++,this.filename=localStorage["script_runner__filename"],Al().s[134]++,await this.reloadFile(!1)):Al().b[28][1]++)),Al().s[135]++,this.updateInterval=setInterval((async()=>{Al().f[50]++,Al().s[136]++,this.processReceived()}),100)},beforeDestroy(){Al().f[51]++,Al().s[137]++,this.editor.destroy(),Al().s[138]++,this.editor.container.remove()},destroyed(){Al().f[52]++,Al().s[139]++,this.unlockFile(),Al().s[140]++,null!=this.updateInterval?(Al().b[29][0]++,Al().s[141]++,clearInterval(this.updateInterval)):Al().b[29][1]++,Al().s[142]++,this.subscription?(Al().b[30][0]++,Al().s[143]++,this.subscription.unsubscribe(),Al().s[144]++,this.subscription=null):Al().b[30][1]++,Al().s[145]++,this.cable.disconnect()},beforeRouteUpdate:function(e,n,t){Al().f[53]++,Al().s[146]++,e.params.id?(Al().b[31][0]++,Al().s[147]++,this.tryLoadRunningScript(e.params.id).then(t)):(Al().b[31][1]++,Al().s[148]++,t())},methods:{doResize(){Al().f[54]++,Al().s[149]++,this.editor.resize(),Al().s[150]++,this.$nextTick((()=>{Al().f[55]++,Al().s[151]++,this.calcHeight()}))},calcHeight(){Al().f[56]++;var e=(Al().s[152]++,document.getElementsByClassName("editorbox")[0]),n=(Al().s[153]++,Math.max(document.documentElement.offsetHeight,(Al().b[32][0]++,window.innerHeight||(Al().b[32][1]++,0)))),t=(Al().s[154]++,0);Al().s[155]++,e?(Al().b[33][0]++,Al().s[156]++,t=e.offsetHeight):Al().b[33][1]++;var l=(Al().s[157]++,0),i=(Al().s[158]++,document.getElementsByClassName("suite-runner")[0]);Al().s[159]++,i?(Al().b[34][0]++,Al().s[160]++,l=i.offsetHeight):Al().b[34][1]++;var s=(Al().s[161]++,document.getElementById("script-log-messages"));Al().s[162]++,s?(Al().b[35][0]++,Al().s[163]++,s.style.height=n-t-l-292+"px"):Al().b[35][1]++},scriptDisconnect(){Al().f[57]++,Al().s[164]++,this.subscription?(Al().b[36][0]++,Al().s[165]++,this.subscription.unsubscribe(),Al().s[166]++,this.subscription=null):Al().b[36][1]++,Al().s[167]++,this.receivedEvents.length=0},showMetadata(){Al().f[58]++,Al().s[168]++,r.A.get("/openc3-api/metadata").then((e=>{Al().f[59]++,Al().s[169]++,this.inputMetadata.events=e.data.map((e=>(Al().f[60]++,Al().s[170]++,{name:"Metadata",start:new Date(1e3*e.start),end:new Date(1e3*e.start),color:e.color,type:e.type,timed:!0,metadata:e}))),Al().s[171]++,this.inputMetadata.show=!0}))},buildOpenC3RubyMode(e){Al().f[61]++;var n=(Al().s[172]++,c.require("ace/lib/oop")),t=(Al().s[173]++,c.require("ace/mode/ruby_highlight_rules").RubyHighlightRules);let l=(Al().s[174]++,Object.getOwnPropertyNames(P.x.prototype).filter((e=>(Al().f[62]++,Al().s[175]++,"constructor"!==e))).filter((e=>(Al().f[63]++,Al().s[176]++,"exec"!==e))).concat(e)),i=(Al().s[177]++,new RegExp(`(\\b${l.join("\\b|\\b")}\\b)`));Al().s[178]++;var s=function(){for(var e in Al().f[64]++,Al().s[179]++,t.call(this),Al().s[180]++,this.$rules)Al().s[181]++,this.$rules[e].unshift({regex:i,token:"support.function"})};Al().s[182]++,n.inherits(s,t);var o=(Al().s[183]++,c.require("ace/mode/matching_brace_outdent").MatchingBraceOutdent),a=(Al().s[184]++,c.require("ace/mode/behaviour/cstyle").CstyleBehaviour),r=(Al().s[185]++,c.require("ace/mode/folding/ruby").FoldMode);Al().s[186]++;var u=function(){Al().f[65]++,Al().s[187]++,this.HighlightRules=s,Al().s[188]++,this.$outdent=new o,Al().s[189]++,this.$behaviour=new a,Al().s[190]++,this.foldingRules=new r,Al().s[191]++,this.indentKeywords=this.foldingRules.indentKeywords},d=(Al().s[192]++,c.require("ace/mode/ruby").Mode);return Al().s[193]++,n.inherits(u,d),Al().s[194]++,function(){Al().f[66]++,Al().s[195]++,this.$id="ace/mode/openc3"}.call(u.prototype),Al().s[196]++,u},buildOpenC3PythonMode(e){Al().f[67]++;var n=(Al().s[197]++,c.require("ace/lib/oop")),t=(Al().s[198]++,c.require("ace/mode/python_highlight_rules").PythonHighlightRules);let l=(Al().s[199]++,Object.getOwnPropertyNames(P.x.prototype).filter((e=>(Al().f[68]++,Al().s[200]++,"constructor"!==e))).filter((e=>(Al().f[69]++,Al().s[201]++,"exec"!==e))).concat(e)),i=(Al().s[202]++,new RegExp(`(\\b${l.join("\\b|\\b")}\\b)`));Al().s[203]++;var s=function(){for(var e in Al().f[70]++,Al().s[204]++,t.call(this),Al().s[205]++,this.$rules)Al().s[206]++,this.$rules[e].unshift({regex:i,token:"support.function"})};Al().s[207]++,n.inherits(s,t);var o=(Al().s[208]++,c.require("ace/mode/matching_brace_outdent").MatchingBraceOutdent),a=(Al().s[209]++,c.require("ace/mode/behaviour/cstyle").CstyleBehaviour),r=(Al().s[210]++,c.require("ace/mode/folding/pythonic").FoldMode);Al().s[211]++;var u=function(){Al().f[71]++,Al().s[212]++,this.HighlightRules=s,Al().s[213]++,this.$outdent=new o,Al().s[214]++,this.$behaviour=new a,Al().s[215]++,this.foldingRules=new r,Al().s[216]++,this.indentKeywords=this.foldingRules.indentKeywords},d=(Al().s[217]++,c.require("ace/mode/python").Mode);return Al().s[218]++,n.inherits(u,d),Al().s[219]++,function(){Al().f[72]++,Al().s[220]++,this.$id="ace/mode/openc3"}.call(u.prototype),Al().s[221]++,u},messageSortOrder(e){Al().f[73]++,Al().s[222]++,Al().b[38][0]++,"Newest on Top"===e&&(Al().b[38][1]++,!1===this.messagesNewestOnTop)?(Al().b[37][0]++,Al().s[223]++,this.messagesNewestOnTop=!0,Al().s[224]++,this.messages.reverse()):(Al().b[37][1]++,Al().s[225]++,Al().b[40][0]++,"Newest on Bottom"===e&&(Al().b[40][1]++,!0===this.messagesNewestOnTop)?(Al().b[39][0]++,Al().s[226]++,this.messagesNewestOnTop=!1,Al().s[227]++,this.messages.reverse()):Al().b[39][1]++)},fileNameChanged(e){Al().f[74]++,Al().s[228]++,e=e.split("*")[0],Al().s[229]++,this.editor.setValue(this.files[e].content),Al().s[230]++,this.restoreBreakpoints(e),Al().s[231]++,this.editor.clearSelection(),Al().s[232]++,this.removeAllMarkers(),Al().s[233]++,this.editor.session.addMarker(new this.Range(this.files[e].lineNo-1,0,this.files[e].lineNo-1,1),`${this.state}Marker`,"fullLine"),Al().s[234]++,this.editor.gotoLine(this.files[e].lineNo)},tryLoadRunningScript:function(e){return Al().f[75]++,Al().s[235]++,r.A.get("/script-api/running-script").then((n=>{Al().f[76]++;const t=(Al().s[236]++,n.data.find((n=>(Al().f[77]++,Al().s[237]++,`${n.id}`===`${e}`))));Al().s[238]++,t?(Al().b[41][0]++,Al().s[239]++,this.filename=t.name,Al().s[240]++,this.tryLoadSuites(),Al().s[241]++,this.initScriptStart(),Al().s[242]++,this.scriptStart(t.id)):(Al().b[41][1]++,Al().s[243]++,this.$notify.caution({title:`Running Script ${e} not found`,body:"Check the Completed Scripts below ..."}),Al().s[244]++,this.showScripts=!0)}))},tryLoadSuites:function(){Al().f[78]++,Al().s[245]++,r.A.get(`/script-api/scripts/${this.filename}`).then((e=>{Al().f[79]++,Al().s[246]++,e.data.suites?(Al().b[42][0]++,Al().s[247]++,this.startOrGoDisabled=!0,Al().s[248]++,this.suiteRunner=!0,Al().s[249]++,this.suiteMap=JSON.parse(e.data.suites)):Al().b[42][1]++,Al().s[250]++,e.data.error?(Al().b[43][0]++,Al().s[251]++,this.suiteError=e.data.error,Al().s[252]++,this.showSuiteError=!0):Al().b[43][1]++,Al().s[253]++,this.disableSuiteButtons=0==e.data.success,Al().s[254]++,this.doResize()}))},showExecuteSelectionMenu:function(e){Al().f[80]++,Al().s[255]++,this.menuX=e.pageX,Al().s[256]++,this.menuY=e.pageY,Al().s[257]++,this.executeSelectionMenu=!0},runFromCursor:function(){Al().f[81]++;const e=(Al().s[258]++,this.editor.getCursorPosition().row),n=(Al().s[259]++,this.editor.session.doc.getLines(e,this.editor.session.doc.getLength()).join("\n")),t=(Al().s[260]++,this.getBreakpointRows().filter((n=>(Al().f[82]++,Al().s[261]++,n>=e))).map((n=>(Al().f[83]++,Al().s[262]++,n-e))));Al().s[263]++,this.executeText(n,t)},executeSelection:function(){Al().f[84]++;const e=(Al().s[264]++,this.editor.getSelectedText()),n=(Al().s[265]++,this.editor.getSelectionRange()),t=(Al().s[266]++,this.getBreakpointRows().filter((e=>(Al().f[85]++,Al().s[267]++,Al().b[44][0]++,e<=n.end.row&&(Al().b[44][1]++,e>=n.start.row)))).map((e=>(Al().f[86]++,Al().s[268]++,e-n.start.row))));Al().s[269]++,this.executeText(e,t)},async executeText(e,n=(Al().b[45][0]++,[])){Al().f[87]++;let t=(Al().s[270]++,this.fullFilename.split(".").pop());const l=(Al().s[271]++,pl+"/"+(0,u.GP)(Date.now(),"yyyy_MM_dd_HH_mm_ss_SSS")+`_temp.${t}`);Al().s[272]++,await r.A.post(`/script-api/scripts/${l}`,{data:{text:e,breakpoints:n}}).then((e=>{Al().f[88]++;let n=(Al().s[273]++,this.scriptEnvironment.env);return Al().s[274]++,this.enableStackTraces?(Al().b[46][0]++,Al().s[275]++,n=n.concat({key:"OPENC3_FULL_BACKTRACE",value:"1"})):Al().b[46][1]++,Al().s[276]++,r.A.post(`/script-api/scripts/${l}/run`,{data:{environment:n}})})).then((e=>{Al().f[89]++,Al().s[277]++,window.open(`/tools/scriptrunner/${e.data}`)}))},clearBreakpoints:function(){Al().f[90]++,Al().s[278]++,this.editor.session.clearBreakpoints()},toggleBreakpoint:function(e){if(Al().f[91]++,Al().s[279]++,this.scriptId)Al().b[47][1]++;else{Al().b[47][0]++;const n=(Al().s[280]++,e.getDocumentPosition().row);Al().s[281]++,e.editor.session.getBreakpoints(n,0)[n]?(Al().b[48][0]++,Al().s[282]++,e.editor.session.clearBreakpoint(n)):(Al().b[48][1]++,Al().s[283]++,e.editor.session.setBreakpoint(n))}},updateBreakpoints:function(e,n){if(Al().f[92]++,Al().s[284]++,e.lines.length<=1)return Al().b[49][0]++,void Al().s[285]++;Al().b[49][1]++;const t=(Al().s[286]++,this.getBreakpointRows(n).filter((n=>(Al().f[93]++,Al().s[287]++,Al().b[50][0]++,0===e.start.column&&(Al().b[50][1]++,n===e.start.row)||(Al().b[50][2]++,n>e.start.row)))));let l=(Al().s[288]++,[]),i=(Al().s[289]++,0);switch(Al().s[290]++,e.action){case"insert":Al().b[51][0]++,Al().s[291]++,i=e.lines.length-1,Al().s[292]++,t.reverse(),Al().s[293]++;break;case"remove":Al().b[51][1]++,Al().s[294]++,i=1-e.lines.length,Al().s[295]++,l=[...Array(e.lines.length).keys()].map((n=>(Al().f[94]++,Al().s[296]++,n+e.start.row))),Al().s[297]++;break}Al().s[298]++,t.forEach((e=>{Al().f[95]++,Al().s[299]++,n.clearBreakpoint(e),Al().s[300]++,l.includes(e)?Al().b[52][1]++:(Al().b[52][0]++,Al().s[301]++,n.setBreakpoint(e+i))}))},getBreakpointRows:function(e=(Al().b[53][0]++,this.editor.session)){return Al().f[96]++,Al().s[302]++,e.getBreakpoints().map(((e,n)=>(Al().f[97]++,Al().s[303]++,Al().b[54][0]++,e&&(Al().b[54][1]++,n)))).filter(Number.isInteger)},restoreBreakpoints:function(e){Al().f[98]++,Al().s[304]++,this.clearBreakpoints(),Al().s[305]++,this.breakpoints[e]?.forEach((e=>{Al().f[99]++,Al().s[306]++,this.editor.session.setBreakpoint(e)}))},deleteAllBreakpoints:function(){Al().f[100]++,Al().s[307]++,this.$dialog.confirm("Permanently delete all breakpoints for ALL scripts?",{okText:"Delete",cancelText:"Cancel"}).then((e=>(Al().f[101]++,Al().s[308]++,r.A.delete("/script-api/breakpoints/delete/all")))).then((e=>{Al().f[102]++,Al().s[309]++,this.clearBreakpoints()}))},suiteRunnerButton(e){Al().f[103]++,Al().s[310]++,this.startOrGoButton===vl?(Al().b[55][0]++,Al().s[311]++,this.start(e,"suiteRunner")):(Al().b[55][1]++,Al().s[312]++,this.go(e,"suiteRunner"))},async keydown(e){if(Al().f[104]++,Al().s[313]++,Al().b[57][0]++,this.scriptId||(Al().b[57][1]++,!0===this.editor.getReadOnly()))return Al().b[56][0]++,void Al().s[314]++;Al().b[56][1]++,Al().s[315]++,Al().b[59][0]++,(e.metaKey||(Al().b[59][1]++,e.ctrlKey))&&(Al().b[59][2]++,e.keyCode==="S".charCodeAt(0))?(Al().b[58][0]++,Al().s[316]++,e.shiftKey?(Al().b[60][0]++,Al().s[317]++,e.preventDefault(),Al().s[318]++,this.saveAs()):(Al().b[60][1]++,Al().s[319]++,e.preventDefault(),Al().s[320]++,await this.saveFile())):Al().b[58][1]++},onChange(e){if(Al().f[105]++,Al().s[321]++,Al().b[62][0]++,this.scriptId||(Al().b[62][1]++,!0===this.editor.getReadOnly()))return Al().b[61][0]++,void Al().s[322]++;Al().b[61][1]++,Al().s[323]++,this.editor.session.getUndoManager().canUndo()?(Al().b[63][0]++,Al().s[324]++,this.fileModified="*"):(Al().b[63][1]++,Al().s[325]++,this.fileModified="")},checkMnemonics:function(){Al().f[106]++,Al().s[326]++,this.mnemonicChecker.checkText(this.editor.getValue()).then((({skipped:e,problems:n})=>{Al().f[107]++;let t=(Al().s[327]++,"");if(Al().s[328]++,n.length){Al().b[64][0]++;const e=(Al().s[329]++,n.map((e=>(Al().f[108]++,Al().s[330]++,`${e.lineNumber}: ${e.error}`))).join("<br/>"));Al().s[331]++,t+=`<strong>The following lines have problems:</strong><br/>${e}<br/><br/>`}else Al().b[64][1]++;Al().s[332]++,e.length?(Al().b[65][0]++,Al().s[333]++,t+="<strong>Mnemonics with string interpolation were not checked.</strong>"):Al().b[65][1]++,Al().s[334]++,""===t?(Al().b[66][0]++,Al().s[335]++,t="<strong>Everything looks good!</strong>"):Al().b[66][1]++,Al().s[336]++,this.$dialog.alert(t.trim(),{html:!0})}))},initScriptStart(){Al().f[109]++,Al().s[337]++,this.disableSuiteButtons=!0,Al().s[338]++,this.startOrGoDisabled=!0,Al().s[339]++,this.envDisabled=!0,Al().s[340]++,this.pauseOrRetryDisabled=!0,Al().s[341]++,this.stopDisabled=!0,Al().s[342]++,this.state="Connecting...",Al().s[343]++,this.startOrGoButton=fl,Al().s[344]++,this.editor.setReadOnly(!0)},scriptStart(e){Al().f[110]++,Al().s[345]++,this.scriptId=e,Al().s[346]++,this.cable.createSubscription("RunningScriptChannel",window.openc3Scope,{received:e=>(Al().f[111]++,Al().s[347]++,this.received(e))},{id:this.scriptId}).then((e=>{Al().f[112]++,Al().s[348]++,this.subscription=e}))},async scriptComplete(){Al().f[113]++,Al().s[349]++,this.state="stopped",Al().s[350]++,this.fatal=!1,Al().s[351]++,this.scriptId=null,Al().s[352]++,this.currentFilename=null,Al().s[353]++,this.files={},Al().s[354]++,this.subscription?(Al().b[67][0]++,Al().s[355]++,await this.subscription.unsubscribe(),Al().s[356]++,this.subscription=null):Al().b[67][1]++,Al().s[357]++,this.receivedEvents.length=0,Al().s[358]++,await this.reloadFile(),Al().s[359]++,this.editor.session.getUndoManager().reset(),Al().s[360]++,0==this.readOnlyUser?(Al().b[68][0]++,Al().s[361]++,this.editor.setReadOnly(!1)):Al().b[68][1]++,Al().s[362]++,this.disableSuiteButtons=!1,Al().s[363]++,this.startOrGoButton=vl,Al().s[364]++,this.pauseOrRetryButton=gl,Al().s[365]++,this.startOrGoDisabled=this.suiteRunner,Al().s[366]++,this.envDisabled=!1,Al().s[367]++,this.pauseOrRetryDisabled=!0,Al().s[368]++,this.stopDisabled=!0},environmentHandler:function(e){Al().f[114]++,Al().s[369]++,this.scriptEnvironment.env=e},startHandler:function(){Al().f[115]++,Al().s[370]++,this.start()},async start(e,n=(Al().b[69][0]++,null)){Al().f[116]++,Al().s[371]++,this.initScriptStart(),Al().s[372]++,await this.saveFile("start"),Al().s[373]++,this.saveAllowed=!1;let t=(Al().s[374]++,this.filename);Al().s[375]++,this.filename===hl?(Al().b[70][0]++,Al().s[376]++,t=this.tempFilename):Al().b[70][1]++;let l=(Al().s[377]++,`/script-api/scripts/${t}/run`);Al().s[378]++,this.showDisconnect?(Al().b[71][0]++,Al().s[379]++,l+="/disconnect"):Al().b[71][1]++;let i=(Al().s[380]++,this.scriptEnvironment.env);Al().s[381]++,this.enableStackTraces?(Al().b[72][0]++,Al().s[382]++,i=i.concat({key:"OPENC3_FULL_BACKTRACE",value:"1"})):Al().b[72][1]++;let s=(Al().s[383]++,{environment:i});Al().s[384]++,n?(Al().b[73][0]++,Al().s[385]++,s["suiteRunner"]=e):Al().b[73][1]++,Al().s[386]++,r.A.post(l,{data:s}).then((e=>{Al().f[117]++,Al().s[387]++,this.scriptStart(e.data)})).catch((e=>{Al().f[118]++,Al().s[388]++,this.scriptComplete()}))},go(){Al().f[119]++,Al().s[389]++,this.filenameSelect=this.currentFilename,Al().s[390]++,this.fileNameChanged(this.currentFilename),Al().s[391]++,r.A.post(`/script-api/running-script/${this.scriptId}/go`)},pauseOrRetry(){Al().f[120]++,Al().s[392]++,this.pauseOrRetryButton===gl?(Al().b[74][0]++,Al().s[393]++,r.A.post(`/script-api/running-script/${this.scriptId}/pause`)):(Al().b[74][1]++,Al().s[394]++,this.pauseOrRetryButton=gl,Al().s[395]++,r.A.post(`/script-api/running-script/${this.scriptId}/retry`))},stop(){Al().f[121]++,Al().s[396]++,this.fatal?(Al().b[75][0]++,Al().s[397]++,this.removeAllMarkers(),Al().s[398]++,this.scriptComplete()):(Al().b[75][1]++,Al().s[399]++,r.A.post(`/script-api/running-script/${this.scriptId}/stop`))},step(){Al().f[122]++,Al().s[400]++,r.A.post(`/script-api/running-script/${this.scriptId}/step`)},processLine(e){Al().f[123]++,Al().s[401]++,Al().b[77][0]++,e.filename&&(Al().b[77][1]++,e.filename!==this.currentFilename)?(Al().b[76][0]++,Al().s[402]++,this.files[e.filename]?(Al().b[78][1]++,Al().s[410]++,this.currentFilename=e.filename,Al().s[411]++,this.editor.setValue(this.files[e.filename].content),Al().s[412]++,this.restoreBreakpoints(e.filename),Al().s[413]++,this.editor.clearSelection()):(Al().b[78][0]++,Al().s[403]++,this.files[e.filename]={content:"",lineNo:0},Al().s[404]++,r.A.get(`/script-api/scripts/${e.filename}`).then((n=>{Al().f[124]++,Al().s[405]++,this.files[e.filename]={content:n.data.contents,lineNo:0},Al().s[406]++,this.breakpoints[e.filename]=n.data.breakpoints,Al().s[407]++,this.restoreBreakpoints(e.filename),Al().s[408]++,this.currentFilename=null})).catch((n=>{Al().f[125]++,Al().s[409]++,this.files[e.filename]=null})))):Al().b[76][1]++,Al().s[414]++,this.state=e.state;const n=(Al().s[415]++,this.editor.session.getMarkers());switch(Al().s[416]++,this.state){case"running":Al().b[79][0]++,Al().s[417]++,this.startOrGoDisabled=!1,Al().s[418]++,this.pauseOrRetryDisabled=!1,Al().s[419]++,this.stopDisabled=!1,Al().s[420]++,this.pauseOrRetryButton=gl,Al().s[421]++,this.removeAllMarkers(),Al().s[422]++,this.editor.session.addMarker(new this.Range(e.line_no-1,0,e.line_no-1,1),"runningMarker","fullLine"),Al().s[423]++,this.editor.gotoLine(e.line_no),Al().s[424]++,this.files[e.filename].lineNo=e.line_no,Al().s[425]++;break;case"fatal":Al().b[79][1]++,Al().s[426]++,this.fatal=!0;case"error":Al().b[79][2]++,Al().s[427]++,this.pauseOrRetryButton=Cl;case"breakpoint":Al().b[79][3]++;case"waiting":Al().b[79][4]++;case"paused":Al().b[79][5]++,Al().s[428]++,"fatal"==this.state?(Al().b[80][0]++,Al().s[429]++,this.startOrGoDisabled=!0,Al().s[430]++,this.pauseOrRetryDisabled=!0):(Al().b[80][1]++,Al().s[431]++,this.startOrGoDisabled=!1,Al().s[432]++,this.pauseOrRetryDisabled=!1),Al().s[433]++,this.stopDisabled=!1;let t=(Al().s[434]++,Object.keys(n).filter((e=>(Al().f[126]++,Al().s[435]++,n[e].clazz===`${this.state}Marker`))));if(Al().s[436]++,0===t.length){Al().b[81][0]++,Al().s[437]++,this.removeAllMarkers();let n=(Al().s[438]++,e.line_no>0?(Al().b[82][0]++,e.line_no):(Al().b[82][1]++,1));Al().s[439]++,this.editor.session.addMarker(new this.Range(n-1,0,n-1,1),`${this.state}Marker`,"fullLine"),Al().s[440]++,this.editor.gotoLine(n),Al().s[441]++,e.filename?(Al().b[83][0]++,Al().s[442]++,this.files[e.filename].lineNo=n):Al().b[83][1]++}else Al().b[81][1]++;Al().s[443]++;break;default:Al().b[79][6]++,Al().s[444]++;break}},processReceived(){Al().f[127]++;let e=(Al().s[445]++,0);Al().s[446]++;for(let n of this.receivedEvents){Al().s[447]++,e+=1;let t=(Al().s[448]++,0);switch(Al().s[449]++,n.type){case"file":Al().b[84][0]++,Al().s[450]++,this.files[n.filename]={content:n.text,lineNo:0},Al().s[451]++,this.breakpoints[n.filename]=n.breakpoints,Al().s[452]++,this.currentFilename===n.filename?(Al().b[85][0]++,Al().s[453]++,this.restoreBreakpoints(n.filename)):Al().b[85][1]++,Al().s[454]++;break;case"line":Al().b[84][1]++,Al().s[455]++,this.processLine(n),Al().s[456]++;break;case"output":Al().b[84][2]++,Al().s[457]++;for(const t of n.line.split("\n"))Al().s[458]++,t?(Al().b[86][0]++,Al().s[459]++,this.messagesNewestOnTop?(Al().b[87][0]++,Al().s[460]++,this.messages.unshift({message:t})):(Al().b[87][1]++,Al().s[461]++,this.messages.push({message:t}))):Al().b[86][1]++;Al().s[462]++;while(this.messages.length>this.maxArrayLength)Al().s[463]++,this.messages.pop();Al().s[464]++;break;case"script":Al().b[84][3]++,Al().s[465]++,this.handleScript(n),Al().s[466]++;break;case"report":Al().b[84][4]++,Al().s[467]++,this.results.text=n.report,Al().s[468]++,this.results.show=!0,Al().s[469]++;break;case"complete":Al().b[84][5]++,Al().s[470]++,this.fatal?Al().b[88][1]++:(Al().b[88][0]++,Al().s[471]++,this.removeAllMarkers(),Al().s[472]++,this.scriptComplete()),Al().s[473]++;break;case"step":Al().b[84][6]++,Al().s[474]++,this.showDebug=!0,Al().s[475]++;break;case"screen":Al().b[84][7]++;let e=(Al().s[476]++,!1),l=(Al().s[477]++,{});for(screen of(Al().s[478]++,this.screens)){if(Al().s[479]++,Al().b[90][0]++,screen.target==n.target_name&&(Al().b[90][1]++,screen.screen==n.screen_name)){Al().b[89][0]++,Al().s[480]++,l=screen,Al().s[481]++,e=!0,Al().s[482]++;break}Al().b[89][1]++,Al().s[483]++,t+=1}Al().s[484]++,this.$set(l,"target",n.target_name),Al().s[485]++,this.$set(l,"screen",n.screen_name),Al().s[486]++,this.$set(l,"definition",n.definition),Al().s[487]++,n.x?(Al().b[91][0]++,Al().s[488]++,this.$set(l,"left",n.x)):(Al().b[91][1]++,Al().s[489]++,this.$set(l,"left",0)),Al().s[490]++,n.y?(Al().b[92][0]++,Al().s[491]++,this.$set(l,"top",n.y)):(Al().b[92][1]++,Al().s[492]++,this.$set(l,"top",0)),Al().s[493]++,this.$set(l,"count",this.updateCounter++),Al().s[494]++,e?(Al().b[93][1]++,Al().s[497]++,this.$set(this.screens,t,l)):(Al().b[93][0]++,Al().s[495]++,this.$set(l,"id",this.idCounter++),Al().s[496]++,this.$set(this.screens,this.screens.length,l)),Al().s[498]++;break;case"clearscreen":for(screen of(Al().b[84][8]++,Al().s[499]++,this.screens)){if(Al().s[500]++,Al().b[95][0]++,screen.target==n.target_name&&(Al().b[95][1]++,screen.screen==n.screen_name)){Al().b[94][0]++,Al().s[501]++,this.screens.splice(t,1),Al().s[502]++;break}Al().b[94][1]++,Al().s[503]++,t+=1}Al().s[504]++;break;case"clearallscreens":Al().b[84][9]++,Al().s[505]++,this.screens=[],Al().s[506]++;break;case"downloadfile":Al().b[84][10]++;const i=(Al().s[507]++,document.createElement("a"));Al().s[508]++,i.href=window.location.origin+n.url,Al().s[509]++,i.setAttribute("download",n.filename),Al().s[510]++,i.click(),Al().s[511]++;break;default:Al().b[84][11]++,Al().s[512]++;break}}Al().s[513]++,this.receivedEvents.splice(0,e)},received(e){Al().f[128]++,Al().s[514]++,this.cable.recordPing(),Al().s[515]++,this.receivedEvents.push(e)},promptDialogCallback(e){Al().f[129]++,Al().s[516]++,this.prompt.show=!1,Al().s[517]++,r.A.post(`/script-api/running-script/${this.scriptId}/prompt`,{data:{method:this.prompt.method,answer:e,prompt_id:this.activePromptId,multiple:this.prompt.multiple}})},handleScript(e){if(Al().f[130]++,Al().s[518]++,e.prompt_complete)return Al().b[96][0]++,Al().s[519]++,this.activePromptId="",Al().s[520]++,this.prompt.show=!1,Al().s[521]++,this.ask.show=!1,void Al().s[522]++;switch(Al().b[96][1]++,Al().s[523]++,this.activePromptId=e.prompt_id,Al().s[524]++,this.prompt.method=e.method,Al().s[525]++,this.prompt.layout="horizontal",Al().s[526]++,this.prompt.title="Prompt",Al().s[527]++,this.prompt.subtitle="",Al().s[528]++,this.prompt.details="",Al().s[529]++,this.prompt.buttons=[],Al().s[530]++,this.prompt.multiple=null,Al().s[531]++,e.method){case"ask":Al().b[97][0]++;case"ask_string":Al().b[97][1]++,Al().s[532]++,this.ask.default=null,Al().s[533]++,this.ask.answerRequired=!0,Al().s[534]++,this.ask.password=!1,Al().s[535]++,this.ask.question=e.args[0],Al().s[536]++,Al().b[99][0]++,e.args[1]&&(Al().b[99][1]++,!0!==e.args[1])&&(Al().b[99][2]++,!1!==e.args[1])?(Al().b[98][0]++,Al().s[537]++,this.ask.default=e.args[1].toString()):(Al().b[98][1]++,Al().s[538]++,!0===e.args[1]?(Al().b[100][0]++,Al().s[539]++,this.ask.answerRequired=!1):Al().b[100][1]++),Al().s[540]++,!0===e.args[2]?(Al().b[101][0]++,Al().s[541]++,this.ask.password=!0):Al().b[101][1]++,Al().s[542]++,this.ask.callback=n=>{Al().f[131]++,Al().s[543]++,this.ask.show=!1,Al().s[544]++,this.ask.password?(Al().b[102][0]++,Al().s[545]++,r.A.post(`/script-api/running-script/${this.scriptId}/prompt`,{data:{method:e.method,password:n,prompt_id:this.activePromptId}})):(Al().b[102][1]++,Al().s[546]++,r.A.post(`/script-api/running-script/${this.scriptId}/prompt`,{data:{method:e.method,answer:n,prompt_id:this.activePromptId}}))},Al().s[547]++,this.ask.show=!0,Al().s[548]++;break;case"prompt_for_hazardous":Al().b[97][2]++,Al().s[549]++,this.prompt.title="Hazardous Command",Al().s[550]++,this.prompt.message=`Warning: Command ${e.args[0]} ${e.args[1]} is Hazardous. `,Al().s[551]++,e.args[2]?(Al().b[103][0]++,Al().s[552]++,this.prompt.message+=e.args[2]+" "):Al().b[103][1]++,Al().s[553]++,this.prompt.message+="Send?",Al().s[554]++,this.prompt.buttons=[{text:"Send",value:"Send"}],Al().s[555]++,this.prompt.callback=this.promptDialogCallback,Al().s[556]++,this.prompt.show=!0,Al().s[557]++;break;case"prompt":Al().b[97][3]++,Al().s[558]++,Al().b[105][0]++,e.kwargs&&(Al().b[105][1]++,e.kwargs.informative)?(Al().b[104][0]++,Al().s[559]++,this.prompt.subtitle=e.kwargs.informative):Al().b[104][1]++,Al().s[560]++,Al().b[107][0]++,e.kwargs&&(Al().b[107][1]++,e.kwargs.details)?(Al().b[106][0]++,Al().s[561]++,this.prompt.details=e.kwargs.details):Al().b[106][1]++,Al().s[562]++,this.prompt.message=e.args[0],Al().s[563]++,this.prompt.buttons=[{text:"Ok",value:"Ok"}],Al().s[564]++,this.prompt.callback=this.promptDialogCallback,Al().s[565]++,this.prompt.show=!0,Al().s[566]++;break;case"combo_box":Al().b[97][4]++,Al().s[567]++,Al().b[109][0]++,e.kwargs&&(Al().b[109][1]++,e.kwargs.informative)?(Al().b[108][0]++,Al().s[568]++,this.prompt.subtitle=e.kwargs.informative):Al().b[108][1]++,Al().s[569]++,Al().b[111][0]++,e.kwargs&&(Al().b[111][1]++,e.kwargs.details)?(Al().b[110][0]++,Al().s[570]++,this.prompt.details=e.kwargs.details):Al().b[110][1]++,Al().s[571]++,Al().b[113][0]++,e.kwargs&&(Al().b[113][1]++,e.kwargs.multiple)?(Al().b[112][0]++,Al().s[572]++,this.prompt.multiple=!0):Al().b[112][1]++,Al().s[573]++,this.prompt.message=e.args[0],Al().s[574]++,e.args.slice(1).forEach((e=>{Al().f[132]++,Al().s[575]++,this.prompt.buttons.push({text:e,value:e})})),Al().s[576]++,this.prompt.layout="combo",Al().s[577]++,this.prompt.callback=this.promptDialogCallback,Al().s[578]++,this.prompt.show=!0,Al().s[579]++;break;case"message_box":Al().b[97][5]++;case"vertical_message_box":Al().b[97][6]++,Al().s[580]++,Al().b[115][0]++,e.kwargs&&(Al().b[115][1]++,e.kwargs.informative)?(Al().b[114][0]++,Al().s[581]++,this.prompt.subtitle=e.kwargs.informative):Al().b[114][1]++,Al().s[582]++,Al().b[117][0]++,e.kwargs&&(Al().b[117][1]++,e.kwargs.details)?(Al().b[116][0]++,Al().s[583]++,this.prompt.details=e.kwargs.details):Al().b[116][1]++,Al().s[584]++,this.prompt.message=e.args[0],Al().s[585]++,e.args.slice(1).forEach((e=>{Al().f[133]++,Al().s[586]++,this.prompt.buttons.push({text:e,value:e})})),Al().s[587]++,e.method.includes("vertical")?(Al().b[118][0]++,Al().s[588]++,this.prompt.layout="vertical"):Al().b[118][1]++,Al().s[589]++,this.prompt.callback=this.promptDialogCallback,Al().s[590]++,this.prompt.show=!0,Al().s[591]++;break;case"backtrace":Al().b[97][7]++,Al().s[592]++,this.information.title="Call Stack",Al().s[593]++,this.information.text=e.args,Al().s[594]++,this.information.show=!0,Al().s[595]++;break;case"metadata_input":Al().b[97][8]++,Al().s[596]++,this.inputMetadata.callback=n=>{Al().f[134]++,Al().s[597]++,this.inputMetadata.show=!1,Al().s[598]++,r.A.post(`/script-api/running-script/${this.scriptId}/prompt`,{data:{method:e.method,answer:n,prompt_id:this.activePromptId}})},Al().s[599]++,this.showMetadata(),Al().s[600]++;break;case"open_file_dialog":Al().b[97][9]++;case"open_files_dialog":Al().b[97][10]++,Al().s[601]++,this.file.title=e.args[0],Al().s[602]++,this.file.message=e.args[1],Al().s[603]++,Al().b[120][0]++,e.kwargs&&(Al().b[120][1]++,e.kwargs.filter)?(Al().b[119][0]++,Al().s[604]++,this.file.filter=e.kwargs.filter):Al().b[119][1]++,Al().s[605]++,"open_files_dialog"==e.method?(Al().b[121][0]++,Al().s[606]++,this.file.multiple=!0):Al().b[121][1]++,Al().s[607]++,this.file.show=!0,Al().s[608]++;break;default:Al().b[97][11]++,Al().s[609]++;break}},async fileDialogCallback(e){Al().f[135]++;let n=(Al().s[610]++,"Cancel"),t=(Al().s[611]++,[]);Al().s[612]++,"Cancel"!=e?(Al().b[122][0]++,Al().s[613]++,n=[],Al().s[614]++,e.forEach((e=>{Al().f[136]++,Al().s[615]++,n.push(e.name),Al().s[616]++,t.push(r.A.get(`/openc3-api/storage/upload/${encodeURIComponent(`${window.openc3Scope}/tmp/${e.name}`)}?bucket=OPENC3_CONFIG_BUCKET`).then((n=>{Al().f[137]++,Al().s[617]++,t.push((0,o.A)({...n.data,data:e}))})))}))):Al().b[122][1]++,Al().s[618]++,Promise.all(t).then((e=>{Al().f[138]++,Al().s[619]++,r.A.post(`/script-api/running-script/${this.scriptId}/prompt`,{data:{method:this.file.multiple?(Al().b[123][0]++,"open_files_dialog"):(Al().b[123][1]++,"open_file_dialog"),answer:n,prompt_id:this.activePromptId}}).then((e=>{Al().f[139]++,Al().s[620]++,this.file.show=!1}))}))},setError(e){Al().f[140]++,Al().s[621]++,this.alertType="error",Al().s[622]++,this.alertText=`Error: ${e}`,Al().s[623]++,this.showAlert=!0},newFile(){Al().f[141]++,Al().s[624]++,this.unlockFile(),Al().s[625]++,this.filename=hl,Al().s[626]++,this.currentFilename=null,Al().s[627]++,this.tempFilename=null,Al().s[628]++,this.files={},Al().s[629]++,this.editor.session.setValue(""),Al().s[630]++,this.saveAllowed=!0,Al().s[631]++,this.fileModified="",Al().s[632]++,this.suiteRunner=!1,Al().s[633]++,this.startOrGoDisabled=!1,Al().s[634]++,this.envDisabled=!1,Al().s[635]++,this.$router.replace({name:"ScriptRunner"}).catch((e=>{Al().f[142]++})),Al().s[636]++,document.title="Script Runner",Al().s[637]++,this.doResize()},async newRubyTestSuite(){Al().f[143]++,Al().s[638]++,this.newFile(),Al().s[639]++,this.editor.session.setValue("require 'openc3/script/suite.rb'\n\n# Group class name should indicate what the scripts are testing\nclass Power < OpenC3::Group\n # Methods beginning with script_ are added to Script dropdown\n def script_power_on\n # Using OpenC3::Group.puts adds the output to the Test Report\n # This can be useful for requirements verification, QA notes, etc\n OpenC3::Group.puts \"Verifying requirement SR-1\"\n configure()\n end\n\n # Other methods are not added to Script dropdown\n def configure\n end\n\n def setup\n # Run when Group Setup button is pressed\n # Run before all scripts when Group Start is pressed\n end\n\n def teardown\n # Run when Group Teardown button is pressed\n # Run after all scripts when Group Start is pressed\n end\nend\n\nclass TestSuite < OpenC3::Suite\n def initialize\n add_group('Power')\n end\n def setup\n # Run when Suite Setup button is pressed\n # Run before all groups when Suite Start is pressed\n end\n def teardown\n # Run when Suite Teardown button is pressed\n # Run after all groups when Suite Start is pressed\n end\nend\n"),Al().s[640]++,await this.saveFile("auto")},async newPythonTestSuite(){Al().f[144]++,Al().s[641]++,this.newFile(),Al().s[642]++,this.editor.session.setValue('from openc3.script.suite import Suite, Group\n\n# Group class name should indicate what the scripts are testing\nclass Power(Group):\n # Methods beginning with script_ are added to Script dropdown\n def script_power_on(self):\n # Using Group.print adds the output to the Test Report\n # This can be useful for requirements verification, QA notes, etc\n Group.print("Verifying requirement SR-1")\n self.configure()\n\n # Other methods are not added to Script dropdown\n def configure(self):\n pass\n\n def setup(self):\n # Run when Group Setup button is pressed\n # Run before all scripts when Group Start is pressed\n pass\n\n def teardown(self):\n # Run when Group Teardown button is pressed\n # Run after all scripts when Group Start is pressed\n pass\n\nclass TestSuite(Suite):\n def __init__(self):\n self.add_group(Power)\n\n def setup(self):\n # Run when Suite Setup button is pressed\n # Run before all groups when Suite Start is pressed\n pass\n\n def teardown(self):\n # Run when Suite Teardown button is pressed\n # Run after all groups when Suite Start is pressed\n pass\n'),Al().s[643]++,await this.saveFile("auto")},addToRecent(e){Al().f[145]++;let n=(Al().s[644]++,this.recent.findIndex((n=>(Al().f[146]++,Al().s[645]++,n.label===e))));Al().s[646]++,-1!==n?(Al().b[124][0]++,Al().s[647]++,this.recent.splice(n,1)):Al().b[124][1]++,Al().s[648]++,this.recent.unshift({label:e,icon:p(e),command:async e=>{Al().f[147]++,Al().s[649]++,this.filename=e.label,Al().s[650]++,await this.reloadFile()}}),Al().s[651]++,this.recent.length>8?(Al().b[125][0]++,Al().s[652]++,this.recent.pop()):Al().b[125][1]++,Al().s[653]++,localStorage["script_runner__recent"]=JSON.stringify(this.recent)},removeFromRecent(e){Al().f[148]++,Al().s[654]++,this.recent=this.recent.filter((n=>(Al().f[149]++,Al().s[655]++,n.label!==e))),Al().s[656]++,localStorage["script_runner__recent"]=JSON.stringify(this.recent),Al().s[657]++,localStorage["script_runner__filename"]===e?(Al().b[126][0]++,Al().s[658]++,localStorage.removeItem("script_runner__filename")):Al().b[126][1]++},openFile(){Al().f[150]++,Al().s[659]++,this.fileOpen=!0},async reloadFile(e=(Al().b[127][0]++,!0)){Al().f[151]++,Al().s[660]++,this.saveAllowed=!1,Al().s[661]++,this.startOrGoDisabled=!0,Al().s[662]++,await r.A.get(`/script-api/scripts/${this.filename}`,{headers:{Accept:"application/json","Ignore-Errors":"404"}}).then((e=>{Al().f[152]++;const n=(Al().s[663]++,{name:this.filename,contents:e.data.contents});Al().s[664]++,e.data.suites?(Al().b[128][0]++,Al().s[665]++,n["suites"]=JSON.parse(e.data.suites)):Al().b[128][1]++,Al().s[666]++,e.data.error?(Al().b[129][0]++,Al().s[667]++,n["error"]=e.data.error):Al().b[129][1]++,Al().s[668]++,e.data.success?(Al().b[130][0]++,Al().s[669]++,n["success"]=e.data.success):Al().b[130][1]++;const t=(Al().s[670]++,e.data.locked),l=(Al().s[671]++,e.data.breakpoints);Al().s[672]++,this.setFile({file:n,locked:t,breakpoints:l},!0),Al().s[673]++,this.saveAllowed=!0})).catch((n=>{Al().f[153]++,Al().s[674]++,!0===e?(Al().b[131][0]++,Al().s[675]++,this.$notify.caution({title:"File Open Error",body:`Failed to open ${this.filename} due to ${n}`})):Al().b[131][1]++,Al().s[676]++,this.removeFromRecent(this.filename),Al().s[677]++,this.newFile()}))},setFile({file:e,locked:n,breakpoints:t},l=(Al().b[132][0]++,!1)){Al().f[154]++,Al().s[678]++,this.files={};let i=(Al().s[679]++,e.name.split("*")[0]);Al().s[680]++,!1===l?(Al().b[133][0]++,Al().s[681]++,this.filename!==i?(Al().b[134][0]++,Al().s[682]++,this.unlockFile(),Al().s[683]++,this.lockedBy=n):Al().b[134][1]++):Al().b[133][1]++,Al().s[684]++,this.filename=i,Al().s[685]++,this.$router.replace({name:"ScriptRunner",query:{file:this.filename}}).catch((e=>{Al().f[155]++}));let s=(Al().s[686]++,this.filename.split("/"));Al().s[687]++,document.title=`${s.pop()} (${s.join("/")})`,Al().s[688]++,"py"===this.filename.split(".").pop()?(Al().b[135][0]++,Al().s[689]++,this.editor.session.setMode(this.openC3PythonMode)):(Al().b[135][1]++,Al().s[690]++,this.editor.session.setMode(this.openC3RubyMode)),Al().s[691]++,this.currentFilename=null,Al().s[692]++,this.editor.session.setValue(e.contents),Al().s[693]++,this.breakpoints[filename]=t,Al().s[694]++,this.restoreBreakpoints(filename),Al().s[695]++,this.fileModified="",Al().s[696]++,this.envDisabled=!1,Al().s[697]++,this.addToRecent(this.filename),Al().s[698]++,e.suites?(Al().b[136][0]++,Al().s[699]++,this.suiteRunner=!0,Al().s[700]++,this.suiteMap=e.suites,Al().s[701]++,this.startOrGoDisabled=!0):(Al().b[136][1]++,Al().s[702]++,this.suiteRunner=!1,Al().s[703]++,this.startOrGoDisabled=!1),Al().s[704]++,e.error?(Al().b[137][0]++,Al().s[705]++,this.suiteError=e.error,Al().s[706]++,this.showSuiteError=!0):Al().b[137][1]++,Al().s[707]++,this.disableSuiteButtons=0==e.success,Al().s[708]++,this.doResize()},clearTemp(){Al().f[156]++,Al().s[709]++,this.recent=this.recent.filter((e=>(Al().f[157]++,Al().s[710]++,!e.label.includes("__TEMP__")))),Al().s[711]++,localStorage["script_runner__recent"]=JSON.stringify(this.recent)},detectLanguage(){Al().f[158]++;let e=(Al().s[712]++,new RegExp("^\\s*(require|load|puts) ")),n=(Al().s[713]++,new RegExp("^\\s*(import|from) ")),t=(Al().s[714]++,new RegExp("^\\s*end\\s*$")),l=(Al().s[715]++,new RegExp("^\\s*(if|def|while|else|elif|class).*:\\s*$")),i=(Al().s[716]++,new RegExp('\\(f"')),s=(Al().s[717]++,this.editor.getValue()),o=(Al().s[718]++,s.split("\n"));Al().s[719]++;for(let a of o){if(Al().s[720]++,a.match(e))return Al().b[138][0]++,Al().s[721]++,"ruby";if(Al().b[138][1]++,Al().s[722]++,a.match(n))return Al().b[139][0]++,Al().s[723]++,"python";if(Al().b[139][1]++,Al().s[724]++,a.match(t))return Al().b[140][0]++,Al().s[725]++,"ruby";if(Al().b[140][1]++,Al().s[726]++,a.match(l))return Al().b[141][0]++,Al().s[727]++,"python";if(Al().b[141][1]++,Al().s[728]++,a.match(i))return Al().b[142][0]++,Al().s[729]++,"python";Al().b[142][1]++}return Al().s[730]++,"unknown"},async saveFile(e=(Al().b[143][0]++,"menu")){if(Al().f[159]++,Al().s[731]++,this.readOnlyUser)return Al().b[144][0]++,void Al().s[732]++;if(Al().b[144][1]++,Al().s[733]++,this.saveAllowed){Al().b[145][0]++;const n=(Al().s[734]++,this.getBreakpointRows());if(Al().s[735]++,this.filename===hl){if(Al().b[146][0]++,Al().s[736]++,"menu"===e)return Al().b[147][0]++,Al().s[737]++,this.saveAs(),void Al().s[738]++;if(Al().b[147][1]++,Al().s[739]++,null===this.tempFilename){Al().b[148][0]++;let n=(Al().s[740]++,this.detectLanguage());if(Al().s[741]++,Al().b[150][0]++,"ruby"===n||(Al().b[150][1]++,"auto"!==e&&(Al().b[150][2]++,"unknown"==n)))Al().b[149][0]++,Al().s[742]++,this.tempFilename=pl+"/"+(0,u.GP)(Date.now(),"yyyy_MM_dd_HH_mm_ss_SSS")+"_temp.rb";else{if(Al().b[149][1]++,Al().s[743]++,"python"!==n)return Al().b[151][1]++,void Al().s[745]++;Al().b[151][0]++,Al().s[744]++,this.tempFilename=pl+"/"+(0,u.GP)(Date.now(),"yyyy_MM_dd_HH_mm_ss_SSS")+"_temp.py"}Al().s[746]++,this.filename=this.tempFilename,Al().s[747]++,this.addToRecent(this.filename)}else Al().b[148][1]++}else Al().b[146][1]++;Al().s[748]++,this.showSave=!0,Al().s[749]++,await r.A.post(`/script-api/scripts/${this.filename}`,{data:{text:this.editor.getValue(),breakpoints:n}}).then((e=>{Al().f[160]++,Al().s[750]++,200==e.status?(Al().b[152][0]++,Al().s[751]++,e.data.suites?(Al().b[153][0]++,Al().s[752]++,this.startOrGoDisabled=!0,Al().s[753]++,this.suiteRunner=!0,Al().s[754]++,this.suiteMap=JSON.parse(e.data.suites)):(Al().b[153][1]++,Al().s[755]++,this.startOrGoDisabled=!1,Al().s[756]++,this.suiteRunner=!1,Al().s[757]++,this.suiteMap={}),Al().s[758]++,e.data.error?(Al().b[154][0]++,Al().s[759]++,this.suiteError=e.data.error,Al().s[760]++,this.showSuiteError=!0):Al().b[154][1]++,Al().s[761]++,this.fileModified="",Al().s[762]++,setTimeout((()=>{Al().f[161]++,Al().s[763]++,this.showSave=!1}),2e3)):(Al().b[152][1]++,Al().s[764]++,this.showSave=!1,Al().s[765]++,this.alertType="error",Al().s[766]++,this.alertText=`Error saving file. Code: ${e.status} Text: ${e.statusText}`,Al().s[767]++,this.showAlert=!0),Al().s[768]++,this.lockFile(),Al().s[769]++,this.doResize()})).catch((({response:e})=>{Al().f[162]++,Al().s[770]++,this.showSave=!1,Al().s[771]++,422==e.status?(Al().b[155][0]++,Al().s[772]++,this.alertType="error",Al().s[773]++,this.alertText=e.data.suites):(Al().b[155][1]++,Al().s[774]++,this.alertType="error",Al().s[775]++,this.alertText=`Error saving file. Code: ${e.status} Text: ${e.statusText}`),Al().s[776]++,this.showAlert=!0}))}else Al().b[145][1]++,Al().s[777]++,this.setError("Attempt to save file when not allowed")},saveAs(){Al().f[163]++,Al().s[778]++,this.showSaveAs=!0},async saveAsFilename(e){Al().f[164]++,Al().s[779]++,this.filename=e.split("*")[0],Al().s[780]++,this.currentFilename=null,Al().s[781]++,this.tempFilename?(Al().b[156][0]++,Al().s[782]++,r.A.post(`/script-api/scripts/${this.tempFilename}/delete`),Al().s[783]++,this.tempFilename=null):Al().b[156][1]++,Al().s[784]++,await this.saveFile("menu")},delete(){Al().f[165]++;let e=(Al().s[785]++,this.filename);Al().s[786]++,this.tempFilename?(Al().b[157][0]++,Al().s[787]++,e=this.tempFilename):Al().b[157][1]++,Al().s[788]++,this.$dialog.confirm(`Permanently delete file: ${e}`,{okText:"Delete",cancelText:"Cancel"}).then((n=>(Al().f[166]++,Al().s[789]++,r.A.post(`/script-api/scripts/${e}/delete`,{data:{}})))).then((n=>{Al().f[167]++,Al().s[790]++,this.removeFromRecent(e),Al().s[791]++,this.newFile()})).catch((e=>{if(Al().f[168]++,Al().s[792]++,!0!==e){Al().b[158][0]++;const n=(Al().s[793]++,{text:`Failed Multi-Delete. ${e}`,type:"error"});Al().s[794]++,this.$emit("alert",n)}else Al().b[158][1]++}))},download(){Al().f[169]++;const e=(Al().s[795]++,new Blob([this.editor.getValue()],{type:"text/plain"})),n=(Al().s[796]++,document.createElement("a"));Al().s[797]++,n.href=URL.createObjectURL(e),Al().s[798]++,n.setAttribute("download",this.filename),Al().s[799]++,n.click()},syntaxCheck(){Al().f[170]++,Al().s[800]++,r.A.post(`/script-api/scripts/${this.filename}/syntax`,{data:this.editor.getValue(),headers:{Accept:"application/json","Content-Type":"plain/text"}}).then((e=>{Al().f[171]++,Al().s[801]++,this.information.title=e.data.title,Al().s[802]++,this.information.text=JSON.parse(e.data.description),Al().s[803]++,this.information.show=!0}))},showInstrumented(){Al().f[172]++,Al().s[804]++,r.A.post(`/script-api/scripts/${this.filename}/instrumented`,{data:this.editor.getValue(),headers:{Accept:"application/json","Content-Type":"plain/text"}}).then((e=>{Al().f[173]++,Al().s[805]++,this.information.title=e.data.title,Al().s[806]++,this.information.text=JSON.parse(e.data.description),Al().s[807]++,this.information.show=!0}))},showCallStack(){Al().f[174]++,Al().s[808]++,r.A.post(`/script-api/running-script/${this.scriptId}/backtrace`)},toggleDebug(){Al().f[175]++,Al().s[809]++,this.showDebug=!this.showDebug},toggleDisconnect(){Al().f[176]++,Al().s[810]++,this.showDisconnect=!this.showDisconnect},debugKeydown(e){Al().f[177]++,Al().s[811]++,"Escape"===e.key?(Al().b[159][0]++,Al().s[812]++,this.debug="",Al().s[813]++,this.debugHistoryIndex=this.debugHistory.length):(Al().b[159][1]++,Al().s[814]++,"Enter"===e.key?(Al().b[160][0]++,Al().s[815]++,this.debugHistory.push(this.debug),Al().s[816]++,this.debugHistoryIndex=this.debugHistory.length,Al().s[817]++,r.A.post(`/script-api/running-script/${this.scriptId}/debug`,{data:{args:this.debug}}),Al().s[818]++,this.debug=""):(Al().b[160][1]++,Al().s[819]++,"ArrowUp"===e.key?(Al().b[161][0]++,Al().s[820]++,this.debugHistoryIndex-=1,Al().s[821]++,this.debugHistoryIndex<0?(Al().b[162][0]++,Al().s[822]++,this.debugHistoryIndex=this.debugHistory.length-1):Al().b[162][1]++,Al().s[823]++,this.debug=this.debugHistory[this.debugHistoryIndex],Al().s[824]++,e.preventDefault()):(Al().b[161][1]++,Al().s[825]++,"ArrowDown"===e.key?(Al().b[163][0]++,Al().s[826]++,this.debugHistoryIndex+=1,Al().s[827]++,this.debugHistoryIndex>=this.debugHistory.length?(Al().b[164][0]++,Al().s[828]++,this.debugHistoryIndex=0):Al().b[164][1]++,Al().s[829]++,this.debug=this.debugHistory[this.debugHistoryIndex]):Al().b[163][1]++)))},removeAllMarkers:function(){Al().f[178]++;const e=(Al().s[830]++,this.editor.session.getMarkers());Al().s[831]++,Object.keys(e).filter((n=>(Al().f[179]++,Al().s[832]++,"fullLine"===e[n].type))).forEach((e=>(Al().f[180]++,Al().s[833]++,this.editor.session.removeMarker(e))))},confirmLocalUnlock:function(){Al().f[181]++,Al().s[834]++,this.$dialog.confirm("Are you sure you want to unlock this script for editing? If another user is editing this script, your changes might conflict with each other.",{okText:"Force Unlock",cancelText:"Cancel"}).then((()=>(Al().f[182]++,Al().s[835]++,this.lockedBy=null,Al().s[836]++,this.lockFile())))},lockFile:function(){if(Al().f[183]++,Al().s[837]++,!this.readOnlyUser)return Al().b[165][0]++,Al().s[838]++,r.A.post(`/script-api/scripts/${this.filename}/lock`);Al().b[165][1]++},unlockFile:function(){Al().f[184]++,Al().s[839]++,Al().b[167][0]++,this.filename===hl||(Al().b[167][1]++,this.readOnly)||(Al().b[167][2]++,this.readOnlyUser)?Al().b[166][1]++:(Al().b[166][0]++,Al().s[840]++,r.A.post(`/script-api/scripts/${this.filename}/unlock`))},screenId(e){return Al().f[185]++,Al().s[841]++,"scriptRunnerScreen"+e},closeScreen(e){Al().f[186]++;let n=(Al().s[842]++,0);for(screen of(Al().s[843]++,this.screens)){if(Al().s[844]++,screen.id==e){Al().b[168][0]++,Al().s[845]++,this.screens.splice(n,1),Al().s[846]++;break}Al().b[168][1]++,Al().s[847]++,n+=1}}}},_l=bl;t(4230),t(7750);var yl=(0,f.A)(_l,i,s,!1,null,"2925bee8",null);const wl=yl.exports},3720:(e,n,t)=>{"use strict";t.d(n,{A:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{width:"600"},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v(" Details ")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card-title",[e._v("\n "+e._s(e.targetName)+" "+e._s(e.packetName)+" "+e._s(e.itemName)+"\n ")]),e._v(" "),n("v-card-subtitle",[e._v(e._s(e.details.description))]),e._v(" "),n("v-card-text",[n("v-container",{attrs:{fluid:""}},["tlm"===e.type?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Item Values")]),e._v(" "),n("v-col"),e._v(" "),n("v-container",{staticClass:"ml-5 pa-0",attrs:{fluid:""}},[n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v("Raw Value")]),e._v(" "),n("v-col",[e._v(e._s(e.rawValue))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v("Converted Value")]),e._v(" "),n("v-col",[e._v(e._s(e.convertedValue))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v("Formatted Value")]),e._v(" "),n("v-col",[e._v(e._s(e.formattedValue))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v("With Units Value")]),e._v(" "),n("v-col",[e._v(e._s(e.unitsValue))])],1)],1)],1):e._e(),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Bit Offset")]),e._v(" "),n("v-col",[e._v(e._s(e.details.bit_offset))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Bit Size")]),e._v(" "),n("v-col",[e._v(e._s(e.details.bit_size))])],1),e._v(" "),e.details.array_size?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Array Size")]),e._v(" "),n("v-col",[e._v(e._s(e.details.array_size))])],1):e._e(),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Data Type")]),e._v(" "),n("v-col",[e._v(e._s(e.details.data_type))])],1),e._v(" "),"cmd"===e.type?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Minimum")]),e._v(" "),n("v-col",[e._v(e._s(e.details.minimum))])],1):e._e(),e._v(" "),"cmd"===e.type?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Maximum")]),e._v(" "),n("v-col",[e._v(e._s(e.details.maximum))])],1):e._e(),e._v(" "),"cmd"===e.type?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Default")]),e._v(" "),n("v-col",[e._v(e._s(e.details.default))])],1):e._e(),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Format String")]),e._v(" "),n("v-col",[e._v(e._s(e.details.format_string))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Read Conversion")]),e._v(" "),e.details.read_conversion?n("v-col",[e._v("\n Class: "+e._s(e.details.read_conversion.class)+"\n "),n("br"),e._v("\n Params:\n "+e._s(e.details.read_conversion.params)+"\n ")]):n("v-col")],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Write Conversion")]),e._v(" "),e.details.write_conversion?n("v-col",[e._v("\n Class: "+e._s(e.details.write_conversion.class)+"\n "),n("br"),e._v("\n Params:\n "+e._s(e.details.write_conversion.params)+"\n ")]):n("v-col")],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Id Value")]),e._v(" "),n("v-col",[e._v(e._s(e.details.id_value))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Units Full")]),e._v(" "),n("v-col",[e._v(e._s(e.details.units_full))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Units Abbr")]),e._v(" "),n("v-col",[e._v(e._s(e.details.units))])],1),e._v(" "),n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Endianness")]),e._v(" "),n("v-col",[e._v(e._s(e.details.endianness))])],1),e._v(" "),e.details.states?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("States")]),e._v(" "),n("v-col"),e._v(" "),n("v-container",{staticClass:"ml-5 pa-0",attrs:{fluid:""}},e._l(e.details.states,(function(t,l){return n("v-row",{key:l,attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v(e._s(l))]),e._v(" "),n("v-col",[e._v(e._s(t.value))])],1)})),1)],1):n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("States")]),e._v(" "),n("v-col",[e._v("None")])],1),e._v(" "),e.details.limits?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Limits")]),e._v(" "),n("v-col"),e._v(" "),n("v-container",{staticClass:"ml-5 pa-0",attrs:{fluid:""}},e._l(e.details.limits,(function(t,l){return n("v-row",{key:l,attrs:{"no-gutters":""}},["enabled"===l?n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v("Enabled")]):e._e(),e._v(" "),"enabled"===l?n("v-switch",{attrs:{dense:"","hide-details":""},on:{change:e.changeLimitsEnabled},model:{value:e.details.limits.enabled,callback:function(n){e.$set(e.details.limits,"enabled",n)},expression:"details.limits.enabled"}}):e._e(),e._v(" "),"enabled"!==l?n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v(e._s(l))]):e._e(),e._v(" "),"enabled"!==l?n("div",[e._v(e._s(e.formatLimit(t)))]):e._e(),e._v(" "),n("v-col")],1)})),1)],1):n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Limits")]),e._v(" "),n("v-col",[e._v("None")])],1),e._v(" "),e.details.meta?n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Meta")]),e._v(" "),n("v-col"),e._v(" "),n("v-container",{staticClass:"ml-5 pa-0",attrs:{fluid:""}},e._l(e.details.meta,(function(t,l){return n("v-row",{key:l,attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"4"}},[e._v(e._s(l))]),e._v(" "),n("v-col",[e._v(e._s(t))])],1)})),1)],1):n("v-row",{attrs:{"no-gutters":""}},[n("v-col",{staticClass:"label",attrs:{cols:"3"}},[e._v("Meta")]),e._v(" "),n("v-col",[e._v("None")])],1)],1)],1)],1)],1)},i=[],s=t(4364);const o={props:{type:{default:"tlm",validator:function(e){return-1!==["cmd","tlm"].indexOf(e)}},targetName:String,packetName:String,itemName:String,value:Boolean},data(){return{details:Object,updater:null,rawValue:null,convertedValue:null,formattedValue:null,unitsValue:null}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}}},created(){this.api=new s.x},beforeDestroy(){clearInterval(this.updater),this.updater=null},watch:{value:function(e,n){e?(this.requestDetails(),"tlm"===this.type&&(this.updater=setInterval((()=>{this.api.get_tlm_values([`${this.targetName}__${this.packetName}__${this.itemName}__RAW`,`${this.targetName}__${this.packetName}__${this.itemName}__CONVERTED`,`${this.targetName}__${this.packetName}__${this.itemName}__FORMATTED`,`${this.targetName}__${this.packetName}__${this.itemName}__WITH_UNITS`]).then((e=>{for(var n=0;n<e.length;n++){let t=null;if("String"===e[n][0]["json_class"]&&void 0!==e[n][0]["raw"]?t=e[n][0]["raw"]:"BLOCK"===this.details.data_type&&(t=e[n][0]),null!==t){t=t.slice(0,parseInt(this.details.bit_size)/8);let l=!1;t.length>64&&(l=!0),e[n][0]=Array.from(t.slice(0,64),(function(e){return" "===e?"20":("0"+(255&e).toString(16)).slice(-2)})).join(" ").toUpperCase(),l&&(e[n][0]+="...")}}this.details.data_type.includes("INT")&&!this.details.array_size?this.rawValue=`${e[0][0]} (0x${e[0][0].toString(16).toUpperCase()})`:this.rawValue=e[0][0],this.convertedValue=e[1][0],this.formattedValue=e[2][0],this.unitsValue=e[3][0]}))}),1e3))):(clearInterval(this.updater),this.updater=null)}},methods:{async requestDetails(){"tlm"===this.type?await this.api.get_item(this.targetName,this.packetName,this.itemName).then((e=>{if(this.details=e,0===Object.keys(e.limits).length)this.details.limits=null;else{let n=!1;e.limits.enabled&&(n=!0,delete e.limits.enabled),this.details.limits={enabled:n,...e.limits}}})):await this.api.get_parameter(this.targetName,this.packetName,this.itemName).then((e=>{this.details=e}))},async changeLimitsEnabled(){this.details.limits.enabled?await this.api.enable_limits(this.targetName,this.packetName,this.itemName):await this.api.disable_limits(this.targetName,this.packetName,this.itemName)},formatLimit(e){return e.hasOwnProperty("green_low")?"RL/"+e.red_low+" YL/"+e.yellow_low+" YH/"+e.yellow_high+" RH/"+e.red_high+" GL/"+e.green_low+" GH/"+e.green_high:e.hasOwnProperty("red_low")?"RL/"+e.red_low+" YL/"+e.yellow_low+" YH/"+e.yellow_high+" RH/"+e.red_high:e}}},a=o;t(4849);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"18fc7350",null);const u=c.exports},4342:(e,n,t)=>{"use strict";t.d(n,{A:()=>I});var l=function(){var e=this,n=e._self._c;return n("div",[n("v-card",{nativeOn:{click:function(n){return e.$emit("click")}}},[n("v-system-bar",{directives:[{name:"show",rawName:"v-show",value:!e.hideSystemBar,expression:"!hideSystemBar"}],class:e.selectedGraphId===e.id?"active":"inactive"},[n("div",{directives:[{name:"show",rawName:"v-show",value:0!==e.errors.length,expression:"errors.length !== 0"}],staticClass:"mx-2"},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"error-graph-icon"},on:{click:function(n){e.errorDialog=!0}}},[e._v("mdi-alert")])],1)]}}])},[e._v(" "),n("span",[e._v("Errors")])])],1),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"edit-graph-icon"},on:{click:function(n){e.editGraph=!0}}},[e._v("\n mdi-pencil\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Edit ")])]),e._v(" "),n("v-spacer"),e._v(" "),n("span",[e._v(e._s(e.title))]),e._v(" "),n("v-spacer"),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}]},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.calcFullSize,expression:"calcFullSize"}],attrs:{"data-test":"collapse-all"},on:{click:e.collapseAll}},[e._v("\n mdi-arrow-collapse\n ")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.calcFullSize,expression:"!calcFullSize"}],attrs:{"data-test":"expand-all"},on:{click:e.expandAll}},[e._v("\n mdi-arrow-expand\n ")])],1)]}}])},[e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.calcFullSize,expression:"calcFullSize"}]},[e._v(" Collapse ")]),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:!e.calcFullSize,expression:"!calcFullSize"}]},[e._v(" Expand ")])])],1),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}]},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.fullWidth,expression:"fullWidth"}],attrs:{"data-test":"collapse-width"},on:{click:e.collapseWidth}},[e._v("\n mdi-arrow-collapse-horizontal\n ")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.fullWidth,expression:"!fullWidth"}],attrs:{"data-test":"expand-width"},on:{click:e.expandWidth}},[e._v("\n mdi-arrow-expand-horizontal\n ")])],1)]}}])},[e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.fullWidth,expression:"fullWidth"}]},[e._v(" Collapse Width ")]),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:!e.fullWidth,expression:"!fullWidth"}]},[e._v(" Expand Width ")])])],1),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}]},[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.fullHeight,expression:"fullHeight"}],attrs:{"data-test":"collapse-height"},on:{click:e.collapseHeight}},[e._v("\n mdi-arrow-collapse-vertical\n ")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.fullHeight,expression:"!fullHeight"}],attrs:{"data-test":"expand-height"},on:{click:e.expandHeight}},[e._v("\n mdi-arrow-expand-vertical\n ")])],1)]}}])},[e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.fullHeight,expression:"fullHeight"}]},[e._v(" Collapse Height ")]),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:!e.fullHeight,expression:"!fullHeight"}]},[e._v(" Expand Height ")])])],1),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}],attrs:{"data-test":"minimize-screen-icon"},on:{click:e.minMaxTransition}},[e._v("\n mdi-window-minimize\n ")]),e._v(" "),n("v-icon",{directives:[{name:"show",rawName:"v-show",value:!e.expand,expression:"!expand"}],attrs:{"data-test":"maximize-screen-icon"},on:{click:e.minMaxTransition}},[e._v("\n mdi-window-maximize\n ")])],1)]}}])},[e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}]},[e._v(" Minimize ")]),e._v(" "),n("span",{directives:[{name:"show",rawName:"v-show",value:!e.expand,expression:"!expand"}]},[e._v(" Maximize ")])]),e._v(" "),n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("div",e._g(e._b({},"div",l,!1),t),[n("v-icon",{attrs:{"data-test":"close-graph-icon"},on:{click:function(n){return e.$emit("close-graph")}}},[e._v("\n mdi-close-box\n ")])],1)]}}])},[e._v(" "),n("span",[e._v(" Close ")])])],1),e._v(" "),n("v-expand-transition",[n("div",{directives:[{name:"show",rawName:"v-show",value:e.expand,expression:"expand"}],ref:"chart",staticClass:"pa-1",attrs:{id:"chart"}},[n("div",{attrs:{id:`chart${e.id}`}}),e._v(" "),n("div",{attrs:{id:"betweenCharts"}}),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.showOverview,expression:"showOverview"}],attrs:{id:`overview${e.id}`}})])])],1),e._v(" "),e.editGraph?n("graph-edit-dialog",{attrs:{title:e.title,"legend-position":e.legendPosition,items:e.items,"graph-min-y":e.graphMinY,"graph-max-y":e.graphMaxY,lines:e.lines,colors:e.colors,"start-date-time":e.graphStartDateTime,"end-date-time":e.graphEndDateTime,"time-zone":e.timeZone},on:{remove:function(n){return e.removeItems([n])},ok:e.editGraphClose,cancel:function(n){e.editGraph=!1}},model:{value:e.editGraph,callback:function(n){e.editGraph=n},expression:"editGraph"}}):e._e(),e._v(" "),n("v-dialog",{attrs:{"max-width":"600"},model:{value:e.errorDialog,callback:function(n){e.errorDialog=n},expression:"errorDialog"}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v("Errors")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card",{staticClass:"pa-3"},[n("v-row",{attrs:{dense:""}},[n("v-text-field",{staticClass:"pb-2",attrs:{readonly:"","hide-details":"",label:"Graph Title"},model:{value:e.title,callback:function(n){e.title=n},expression:"title"}})],1),e._v(" "),n("v-row",{staticClass:"my-3"},[n("v-textarea",{attrs:{readonly:"",rows:"8",value:e.error}})],1),e._v(" "),n("v-row",[n("v-btn",{attrs:{block:""},on:{click:e.clearErrors}},[e._v(" Clear ")])],1)],1)],1),e._v(" "),e.editGraphMenu?n("v-menu",{attrs:{"position-x":e.editGraphMenuX,"position-y":e.editGraphMenuY,absolute:"","offset-y":""},model:{value:e.editGraphMenu,callback:function(n){e.editGraphMenu=n},expression:"editGraphMenu"}},[n("v-list",[n("v-list-item",{on:{click:function(n){e.editGraph=!0}}},[n("v-list-item-title",{staticStyle:{cursor:"pointer"}},[e._v("\n Edit "+e._s(e.title)+"\n ")])],1)],1)],1):e._e(),e._v(" "),e.editItem?n("graph-edit-item-dialog",{attrs:{colors:e.colors,item:e.selectedItem},on:{changeColor:e.changeColor,changeLimits:e.changeLimits,cancel:function(n){e.editItem=!1},close:e.closeEditItem},model:{value:e.editItem,callback:function(n){e.editItem=n},expression:"editItem"}}):e._e(),e._v(" "),e.itemMenu?n("v-menu",{attrs:{"position-x":e.itemMenuX,"position-y":e.itemMenuY,absolute:"","offset-y":""},model:{value:e.itemMenu,callback:function(n){e.itemMenu=n},expression:"itemMenu"}},[n("v-list",{attrs:{nav:"",dense:""}},[n("v-subheader",[e._v("\n "+e._s(e.selectedItem.targetName)+"\n "+e._s(e.selectedItem.packetName)+"\n "+e._s(e.selectedItem.itemName)+"\n ")]),e._v(" "),n("v-list-item",{on:{click:function(n){e.editItem=!0}}},[n("v-list-item-icon",[n("v-icon",[e._v("mdi-pencil")])],1),e._v(" "),n("v-list-item-content",[n("v-list-item-title",[e._v(" Edit ")])],1)],1),e._v(" "),n("v-list-item",{on:{click:function(n){return e.clearData([e.selectedItem])}}},[n("v-list-item-icon",[n("v-icon",[e._v("mdi-eraser")])],1),e._v(" "),n("v-list-item-content",[n("v-list-item-title",[e._v(" Clear ")])],1)],1),e._v(" "),n("v-list-item",{on:{click:function(n){return e.removeItems([e.selectedItem])}}},[n("v-list-item-icon",[n("v-icon",[e._v("mdi-delete")])],1),e._v(" "),n("v-list-item-content",[n("v-list-item-title",[e._v(" Delete ")])],1)],1)],1)],1):e._e(),e._v(" "),e.legendMenu?n("v-menu",{attrs:{"position-x":e.legendMenuX,"position-y":e.legendMenuY,absolute:"","offset-y":""},model:{value:e.legendMenu,callback:function(n){e.legendMenu=n},expression:"legendMenu"}},[n("v-list",[n("v-list-item",{on:{click:function(n){return e.moveLegend("top")}}},[n("v-list-item-title",{staticStyle:{cursor:"pointer"}},[e._v("Legend Top")])],1),e._v(" "),n("v-list-item",{on:{click:function(n){return e.moveLegend("bottom")}}},[n("v-list-item-title",{staticStyle:{cursor:"pointer"}},[e._v("Legend Bottom")])],1),e._v(" "),n("v-list-item",{on:{click:function(n){return e.moveLegend("left")}}},[n("v-list-item-title",{staticStyle:{cursor:"pointer"}},[e._v("Legend Left")])],1),e._v(" "),n("v-list-item",{on:{click:function(n){return e.moveLegend("right")}}},[n("v-list-item-title",{staticStyle:{cursor:"pointer"}},[e._v("Legend RIght")])],1)],1)],1):e._e()],1)},i=[],s=(t(9375),t(8605),function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{"max-width":"700"},on:{keydown:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"esc",27,n.key,["Esc","Escape"])?null:e.$emit("cancel")}},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-system-bar",[n("v-spacer"),e._v(" "),n("span",[e._v("Edit Graph")]),e._v(" "),n("v-spacer")],1),e._v(" "),n("v-card",{staticClass:"pa-3"},[n("v-tabs",{staticClass:"ml-3",model:{value:e.tab,callback:function(n){e.tab=n},expression:"tab"}},[n("v-tab",{key:0},[e._v(" Settings ")]),e._v(" "),n("v-tab",{key:1},[e._v(" Scale / Lines ")]),e._v(" "),n("v-tab",{key:1},[e._v(" Items ")])],1),e._v(" "),n("v-tabs-items",{model:{value:e.tab,callback:function(n){e.tab=n},expression:"tab"}},[n("v-tab-item",{key:0,staticClass:"tab",attrs:{eager:"true"}},[n("div",{staticClass:"edit-box"},[n("v-row",[n("v-col",[n("v-card-text",{staticClass:"pa-0"},[n("v-text-field",{staticClass:"pb-2",attrs:{label:"Title","hide-details":"","data-test":"edit-graph-title"},model:{value:e.graph.title,callback:function(n){e.$set(e.graph,"title",n)},expression:"graph.title"}})],1)],1),e._v(" "),n("v-col",[n("v-select",{staticStyle:{"max-width":"280px"},attrs:{label:"Legend Position",dense:"",outlined:"","hide-details":"",items:e.legendPositions,"data-test":"edit-legend-position"},model:{value:e.graph.legendPosition,callback:function(n){e.$set(e.graph,"legendPosition",n)},expression:"graph.legendPosition"}})],1)],1)],1),e._v(" "),n("div",{staticClass:"edit-box"},[n("v-card-text",{staticClass:"pa-0"},[e._v("\n Select a start date/time for the graph. Leave blank for start now.\n ")]),e._v(" "),n("v-row",[n("v-col",[n("v-menu",{attrs:{"close-on-content-click":"",transition:"scale-transition","offset-y":"","max-width":"290px","min-width":"290px"},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return[n("v-text-field",e._g({attrs:{label:"Start Date",name:`date${Date.now()}`,rules:[e.rules.date],type:"date"},model:{value:e.startDate,callback:function(n){e.startDate=n},expression:"startDate"}},t))]}}])})],1),e._v(" "),n("v-col",[n("v-text-field",{attrs:{label:"Start Time",name:`time${Date.now()}`,rules:[e.rules.time],type:"time",step:"1"},model:{value:e.startTime,callback:function(n){e.startTime=n},expression:"startTime"}})],1)],1),e._v(" "),n("v-card-text",{staticClass:"pa-0"},[e._v("\n Select a end date/time for the graph. Leave blank for continuous\n real-time graphing.\n ")]),e._v(" "),n("v-row",[n("v-col",[n("v-menu",{attrs:{"close-on-content-click":"",transition:"scale-transition","offset-y":"","max-width":"290px","min-width":"290px"},scopedSlots:e._u([{key:"activator",fn:function({on:t}){return[n("v-text-field",e._g({attrs:{label:"End Date",name:`date${Date.now()}`,rules:[e.rules.date],type:"date"},model:{value:e.endDate,callback:function(n){e.endDate=n},expression:"endDate"}},t))]}}])})],1),e._v(" "),n("v-col",[n("v-text-field",{attrs:{label:"End Time",name:`time${Date.now()}`,rules:[e.rules.time],type:"time",step:"1"},model:{value:e.endTime,callback:function(n){e.endTime=n},expression:"endTime"}})],1)],1)],1)]),e._v(" "),n("v-tab-item",{key:1,staticClass:"tab",attrs:{eager:"true"}},[n("div",{staticClass:"edit-box"},[n("v-card-text",{staticClass:"pa-0"},[e._v("\n Set a min or max Y value to override automatic scaling\n ")]),e._v(" "),n("v-row",{attrs:{dense:""}},[n("v-col",{staticClass:"px-2"},[n("v-text-field",{attrs:{"hide-details":"",label:"Min Y Axis (Optional)",type:"number","data-test":"edit-graph-min-y"},model:{value:e.graph.graphMinY,callback:function(n){e.$set(e.graph,"graphMinY",n)},expression:"graph.graphMinY"}})],1),e._v(" "),n("v-col",{staticClass:"px-2"},[n("v-text-field",{attrs:{"hide-details":"",label:"Max Y Axis (Optional)",type:"number","data-test":"edit-graph-max-y"},model:{value:e.graph.graphMaxY,callback:function(n){e.$set(e.graph,"graphMaxY",n)},expression:"graph.graphMaxY"}})],1)],1)],1),e._v(" "),n("div",{staticClass:"edit-box"},[n("v-card-text",{staticClass:"pa-0"},[e._v("Add horizontal lines to the graph")]),e._v(" "),n("v-data-table",{attrs:{"item-key":"lineId","data-test":"edit-graph-lines",headers:e.lineHeaders,items:e.graph.lines,"items-per-page":5,"footer-props":{itemsPerPageOptions:[5]}},scopedSlots:e._u([{key:"item.yValue",fn:function({item:t}){return[n("v-edit-dialog",{attrs:{"return-value":t.yValue},on:{"update:returnValue":function(n){return e.$set(t,"yValue",n)},"update:return-value":function(n){return e.$set(t,"yValue",n)}},scopedSlots:e._u([{key:"input",fn:function(){return[n("v-text-field",{attrs:{label:"Edit","single-line":"",counter:""},model:{value:t.yValue,callback:function(n){e.$set(t,"yValue",n)},expression:"item.yValue"}})]},proxy:!0}],null,!0)},[e._v("\n "+e._s(t.yValue)+"\n ")])]}},{key:"item.color",fn:function({item:t}){return[n("v-edit-dialog",{attrs:{"return-value":t.color},on:{"update:returnValue":function(n){return e.$set(t,"color",n)},"update:return-value":function(n){return e.$set(t,"color",n)}},scopedSlots:e._u([{key:"input",fn:function(){return[n("v-select",{attrs:{outlined:"","hide-details":"",label:"Color",items:e.colors},model:{value:t.color,callback:function(n){e.$set(t,"color",n)},expression:"item.color"}})]},proxy:!0}],null,!0)},[e._v("\n "+e._s(t.color)+"\n ")])]}},{key:"footer.prepend",fn:function(){return[n("v-btn",{staticStyle:{"margin-top":"3px"},attrs:{small:""},on:{click:e.addLine}},[e._v("\n New Horizontal Line\n ")]),e._v("\n   Click to edit values, Enter to save\n "),n("v-spacer")]},proxy:!0},{key:"item.actions",fn:function({item:t}){return[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:l,attrs:i}){return[n("div",e._g(e._b({},"div",i,!1),l),[n("v-btn",{attrs:{icon:"","data-test":`delete-line-icon${t.lineId}`},on:{click:()=>e.removeLine(t)}},[n("v-icon",[e._v("mdi-delete")])],1)],1)]}}],null,!0)},[e._v(" "),n("span",[e._v("Remove")])])]}},{key:"no-data",fn:function(){return[n("span",[e._v("Currently no horizontal lines on this graph")])]},proxy:!0}])})],1)]),e._v(" "),n("v-tab-item",{key:2,staticClass:"tab",attrs:{eager:"true"}},[n("v-data-table",{staticClass:"elevation-1 my-2",attrs:{"item-key":"itemId","data-test":"edit-graph-items",headers:e.itemHeaders,items:e.editItems,"items-per-page":5,"footer-props":{"items-per-page-options":[5]}},scopedSlots:e._u([{key:"item.actions",fn:function({item:t}){return[n("v-tooltip",{attrs:{top:""},scopedSlots:e._u([{key:"activator",fn:function({on:l,attrs:i}){return[n("div",e._g(e._b({},"div",i,!1),l),[n("v-btn",{attrs:{icon:"","data-test":`delete-item-icon${t.itemId}`},on:{click:()=>e.$emit("remove",t)}},[n("v-icon",[e._v("mdi-delete")])],1)],1)]}}],null,!0)},[e._v(" "),n("span",[e._v("Remove")])])]}},{key:"no-data",fn:function(){return[n("span",[e._v("Currently no items on this graph")])]},proxy:!0}])})],1)],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:""},on:{click:function(n){return e.$emit("cancel")}}},[e._v(" Cancel ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:e.closeOk}},[e._v(" Ok ")])],1)],1)],1)}),o=[],a=t(7903),r=t(3221),c=t(2266),u=t(8494);const d={props:{value:Boolean,title:{type:String,required:!0},legendPosition:{type:String,required:!0},items:{type:Array,required:!0},graphMinY:{type:Number,required:!0},graphMaxY:{type:Number,required:!0},lines:{type:Array,required:!0},colors:{type:Array,required:!0},startDateTime:{type:Number,required:!0},endDateTime:{type:Number,required:!0},timeZone:{type:String,required:!0}},mixins:[a.A],data:function(){return{tab:0,graph:{},legendPositions:["top","bottom","left","right"],startDate:null,startTime:null,endDate:null,endTime:null,lineHeaders:[{text:"Y Value",value:"yValue"},{text:"Color",value:"color"},{text:"Actions",value:"actions",sortable:!1}],itemHeaders:[{text:"Target Name",value:"targetName"},{text:"Packet Name",value:"packetName"},{text:"Item Name",value:"itemName"},{text:"Actions",value:"actions",sortable:!1}],rules:{date:e=>{if(!e)return!0;try{return(0,r.f)((0,c.qg)(e,"yyyy-MM-dd",new Date))||"Invalid date (YYYY-MM-DD)"}catch(n){return"Invalid date (YYYY-MM-DD)"}},time:e=>{if(!e)return!0;try{return(0,r.f)((0,c.qg)(e,"HH:mm:ss",new Date))||"Invalid time (HH:MM:SS)"}catch(n){return"Invalid time (HH:MM:SS)"}}}}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}},editItems:function(){if(!this.items)return[];let e=0;return this.items.map((n=>(e+=1,{...n,itemId:e})))}},created(){if(this.graph={title:this.title,legendPosition:this.legendPosition,items:this.items,graphMinY:this.graphMinY,graphMaxY:this.graphMaxY,lines:[...this.lines]},this.startDateTime){let e=(0,u.a)(this.startDateTime/1e6);this.startDate=this.formatDate(e,this.timeZone),this.startTime=this.formatTimeHMS(e,this.timeZone)}else{let e=new Date-36e5;this.startDate=this.formatDate(e,this.timeZone),this.startTime=this.formatTimeHMS(e,this.timeZone)}if(this.endDateTime){let e=(0,u.a)(this.endDateTime/1e6);this.endDate=this.formatDate(e,this.timeZone),this.endTime=this.formatTimeHMS(e,this.timeZone)}},methods:{closeOk(){this.startDate&&this.startTime?this.graph.startDateTime=this.startDate+" "+this.startTime:this.graph.startDateTime=null,this.endDate&&this.endTime?this.graph.endDateTime=this.endDate+" "+this.endTime:this.graph.endDateTime=null,this.$emit("ok",this.graph)},addLine(){this.graph.lines.push({yValue:0,color:"white"})},removeLine(e){let n=this.lines.indexOf(e);this.graph.lines.splice(n,1)}}},m=d;t(9883);var A=t(2401),p=(0,A.A)(m,s,o,!1,null,null,null);const h=p.exports;var v=function(){var e=this,n=e._self._c;return n("v-dialog",{attrs:{width:"400"},on:{keydown:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.success()}},model:{value:e.show,callback:function(n){e.show=n},expression:"show"}},[n("v-card",[n("v-card-title",{staticClass:"mb-2"},[e._v("Edit Item")]),e._v(" "),n("v-card-text",[n("v-select",{staticClass:"mb-2",attrs:{outlined:"","hide-details":"",label:"Value Type",items:e.valueTypes},model:{value:e.editItem.valueType,callback:function(n){e.$set(e.editItem,"valueType",n)},expression:"editItem.valueType"}}),e._v(" "),n("v-select",{staticClass:"mb-2",attrs:{outlined:"","hide-details":"",label:"Reduction",items:e.reduction},model:{value:e.editItem.reduced,callback:function(n){e.$set(e.editItem,"reduced",n)},expression:"editItem.reduced"}}),e._v(" "),n("v-select",{staticClass:"mb-2",attrs:{outlined:"","hide-details":"",label:"Reduced Type",items:e.reducedTypes,disabled:"DECOM"===e.currentReduced},model:{value:e.editItem.reducedType,callback:function(n){e.$set(e.editItem,"reducedType",n)},expression:"editItem.reducedType"}}),e._v(" "),n("v-select",{staticClass:"mb-2",attrs:{outlined:"","hide-details":"",label:"Color",items:e.colors},on:{change:function(n){return e.$emit("changeColor",n)}},model:{value:e.editItem.color,callback:function(n){e.$set(e.editItem,"color",n)},expression:"editItem.color"}}),e._v(" "),e.limitsNames.length>1?n("div",[n("v-select",{attrs:{outlined:"","hide-details":"",label:"Display Limits",items:e.limitsNames},on:{change:function(n){return e.$emit("changeLimits",e.limits[e.limitsName])}},model:{value:e.limitsName,callback:function(n){e.limitsName=n},expression:"limitsName"}}),e._v(" "),n("div",{staticClass:"pa-3"},[e._v(e._s(e.limitsName)+": "+e._s(e.limits[e.limitsName]))])],1):e._e()],1),e._v(" "),n("v-card-actions",[n("v-spacer"),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{outlined:""},on:{click:function(n){return e.$emit("cancel")}}},[e._v(" Cancel ")]),e._v(" "),n("v-btn",{staticClass:"mx-2",attrs:{color:"primary"},on:{click:function(n){return e.$emit("close",e.editItem)}}},[e._v("\n Ok\n ")])],1)],1)],1)},f=[],g=t(4364);const C={props:{value:Boolean,item:{type:Object,required:!0},colors:{type:Array,required:!0}},data:function(){return{editItem:null,limitsName:"NONE",limits:{NONE:[]},valueTypes:["CONVERTED","RAW"],reduction:[{text:"NONE",value:"DECOM"},{text:"REDUCED_MINUTE",value:"REDUCED_MINUTE"},{text:"REDUCED_HOUR",value:"REDUCED_HOUR"},{text:"REDUCED_DAY",value:"REDUCED_DAY"}],reducedTypes:["MIN","MAX","AVG","STDDEV"]}},computed:{show:{get(){return this.value},set(e){this.$emit("input",e)}},limitsNames(){return Object.keys(this.limits)}},async created(){this.editItem={...this.item},await this.api,this.api=(new g.x).get_item(this.item.targetName,this.item.packetName,this.item.itemName).then((e=>{for(const[n,t]of Object.entries(e.limits))Object.keys(t).includes("red_low")&&this.$set(this.limits,n,Object.values(t));this.limitsName=Object.keys(this.limits).find((e=>this.limits[e]+""===this.editItem.limits+""))}))}},b=C;var _=(0,A.A)(b,v,f,!1,null,null,null);const y=_.exports;var w=t(458),x=t(5914),k=t.n(x),S=t(2702);t(9037);const T={components:{GraphEditDialog:h,GraphEditItemDialog:y},props:{id:{type:Number,required:!0},selectedGraphId:{type:Number},state:{type:String,required:!0},startTime:{type:Number},secondsGraphed:{type:Number,required:!0},pointsSaved:{type:Number,required:!0},pointsGraphed:{type:Number,required:!0},refreshIntervalMs:{type:Number,default:200},hideSystemBar:{type:Boolean,default:!1},hideOverview:{type:Boolean,default:!1},sparkline:{type:Boolean,default:!1},initialItems:{type:Array},height:{type:Number},width:{type:Number},timeZone:{type:String,default:"local"}},mixins:[a.A],data(){return{lines:[],active:!0,expand:!0,fullWidth:!0,fullHeight:!0,graph:null,editGraph:!1,editGraphMenu:!1,editGraphMenuX:0,editGraphMenuY:0,editItem:!1,itemMenu:!1,itemMenuX:0,itemMenuY:0,legendMenu:!1,legendMenuX:0,legendMenuY:0,legendPosition:"bottom",selectedItem:null,showOverview:!this.hideOverview,title:"",overview:null,data:[[]],dataChanged:!1,timeout:null,graphMinY:"",graphMaxY:"",graphStartDateTime:null,graphEndDateTime:null,indexes:{},items:this.initialItems||[],limitsValues:[],drawInterval:null,zoomChart:!1,zoomOverview:!1,cable:new S.A,subscription:null,needToUpdate:!1,errorDialog:!1,errors:[],colorIndex:0,colors:["#00c7cb","#938bdb","#4dacff","lime","darkorange","red","gold","hotpink","tan","cyan","maroon","blue","teal","purple","green","brown","lightblue","white","black"]}},computed:{calcFullSize:function(){return this.fullWidth||this.fullHeight},error:function(){return this.errorDialog&&this.errors.length>0?JSON.stringify(this.errors,null,4):null}},created(){this.title=`Graph ${this.id}`;for(const[e,n]of this.items.entries())this.data.push([]),this.indexes[this.subscriptionKey(n)]=e+1,void 0===n.color&&(n.color=this.colors[this.colorIndex]),this.colorIndex++,this.colorIndex===this.colors.length&&(this.colorIndex=0)},mounted(){const{chartSeries:e,overviewSeries:n}=this.items.reduce(((e,n)=>{const t={spanGaps:!0};return e.chartSeries.push({...t,item:n,label:this.formatLabel(n),stroke:(e,n)=>this.items[n-1].color,width:2,value:(e,n)=>"string"===typeof n||isNaN(n)?"NaN":null==n?"--":n.toFixed(3)}),e.overviewSeries.push({...t}),e}),{chartSeries:[],overviewSeries:[]});let t={};if(this.sparkline)this.hideSystemBar=!0,this.hideOverview=!0,this.showOverview=!1,t={width:this.width,height:this.height,pxAlign:!1,cursor:{show:!1},select:{show:!1},legend:{show:!1},scales:{x:{time:!1}},axes:[{show:!1},{show:!1}],series:[{},{stroke:"white"}]},this.graph=new w.A(t,this.data,document.getElementById(`chart${this.id}`));else{let l=Intl.DateTimeFormat().resolvedOptions().timeZone;this.timeZone&&"local"!==this.timeZone&&(l=this.timeZone),t={...this.getSize("chart"),...this.getScales(),...this.getAxes("chart"),plugins:[this.linesPlugin()],tzDate:e=>w.A.tzDate(new Date(1e3*e),l),series:[{label:"Time",value:(e,n)=>null==n?"--":this.formatSeconds(n,this.timeZone)},...e],cursor:{drag:{x:!0,y:!1},sync:{key:"openc3"},bind:{mouseup:(e,n,t)=>n=>{"pause"===this.state&&0===e.select.width&&this.$emit("start"),t(n)}}},hooks:{setScale:[(e,n)=>{if("x"===n&&!this.zoomOverview&&this.overview){this.zoomChart=!0;let n=Math.round(this.overview.valToPos(e.scales.x.min,"x")),t=Math.round(this.overview.valToPos(e.scales.x.max,"x"));this.overview.setSelect({left:n,width:t-n}),this.zoomChart=!1}}],setSelect:[e=>{"start"===this.state&&e.select.width>0&&this.$emit("pause")}],ready:[e=>{let n=e.root.querySelector(".u-over");n.addEventListener("contextmenu",(e=>{e.preventDefault(),this.itemMenu=!1,this.legendMenu=!1,this.editGraphMenuX=e.clientX,this.editGraphMenuY=e.clientY,this.editGraphMenu=!0})),n.addEventListener("mouseenter",(e=>{this.$emit("resize")})),n.addEventListener("mouseleave",(e=>{this.$emit("resize")}));let t=e.root.querySelector(".u-legend");t.addEventListener("contextmenu",(n=>{n.preventDefault(),this.editGraphMenu=!1,this.legendMenu=!1,this.itemMenuX=n.clientX,this.itemMenuY=n.clientY;let l=n.target.closest(".u-series"),i=Array.prototype.slice.call(t.childNodes[0].childNodes).indexOf(l),s=e.series[i];s.item?(this.selectedItem=s.item,this.itemMenu=!0):(this.itemMenu=!1,this.legendMenuX=n.clientX,this.legendMenuY=n.clientY,this.legendMenu=!0)}))}]}},this.graph=new w.A(t,this.data,document.getElementById(`chart${this.id}`));const i={...this.getSize("overview"),...this.getScales(),...this.getAxes("overview"),tzDate:e=>w.A.tzDate(new Date(1e3*e),l),series:[...n],cursor:{y:!1,drag:{setScale:!1,x:!0,y:!1}},legend:{show:!1},hooks:{setSelect:[e=>{if(!this.zoomChart){"start"===this.state&&e.select.width>0&&this.$emit("pause"),this.zoomOverview=!0;let n=e.posToVal(e.select.left,"x"),t=e.posToVal(e.select.left+e.select.width,"x");this.graph.setScale("x",{min:n,max:t}),this.zoomOverview=!1}}]}};this.overview=new w.A(i,this.data,document.getElementById(`overview${this.id}`)),this.moveLegend(this.legendPosition),window.addEventListener("resize",this.handleResize)}"stop"!==this.state&&this.startGraph()},beforeDestroy:function(){this.stopGraph(),this.cable.disconnect(),window.removeEventListener("resize",this.handleResize)},watch:{state:function(e,n){switch(e){case"start":"stop"===n&&this.startGraph();break;case"stop":this.stopGraph();break}},data:function(e,n){this.dataChanged=!0},graphMinY:function(e,n){let t=parseFloat(e);isNaN(t)||(this.graphMinY=t),this.setGraphRange()},graphMaxY:function(e,n){let t=parseFloat(e);isNaN(t)||(this.graphMaxY=t),this.setGraphRange()},graphStartDateTime:function(e,n){e&&"string"===typeof e&&(this.graphStartDateTime=1e6*new Date(this.graphStartDateTime).getTime(),this.graphStartDateTime!==n&&(this.needToUpdate=!0))},graphEndDateTime:function(e,n){e&&"string"===typeof e&&(this.graphEndDateTime=1e6*new Date(this.graphEndDateTime).getTime(),this.graphEndDateTime!==n&&(this.needToUpdate=!0))}},methods:{startGraph:function(){this.subscribe(),this.timeout=setTimeout((()=>{this.updateTimeout()}),this.refreshIntervalMs)},stopGraph:function(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=null),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},updateTimeout:function(){this.updateGraphData(),this.timeout=setTimeout((()=>{this.updateTimeout()}),this.refreshIntervalMs)},updateGraphData:function(){if("pause"===this.state||!this.dataChanged)return;this.graph.setData(this.data),this.overview&&this.overview.setData(this.data);let e=this.data[0][this.data[0].length-1],n=this.data[0][this.data[0].length-this.pointsGraphed],t=this.data[0][0];t<e-this.secondsGraphed&&(t=e-this.secondsGraphed),n>t&&(t=n),this.graph.setScale("x",{min:t,max:e}),this.dataChanged=!1},formatLabel(e){if("CONVERTED"===e.valueType&&"DECOM"===e.reduced)return e.itemName;{let n="";return"CONVERTED"!==e.valueType&&(n+=e.valueType),"DECOM"!==e.reduced&&(""!==n&&(n+=" "),n+=`${e.reduced.split("_")[1]} ${e.reducedType}`),`${e.itemName} (${n})`}},moveLegend:function(e){switch(e){case"bottom":this.graph.root.classList.remove("side-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.remove("top-legend");break;case"top":this.graph.root.classList.remove("side-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.add("top-legend");break;case"left":this.graph.root.classList.remove("top-legend"),this.graph.root.classList.add("side-legend"),this.graph.root.classList.add("left-legend");break;case"right":this.graph.root.classList.remove("top-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.add("side-legend");break}this.legendPosition=e,this.resize()},clearErrors:function(){this.errors=[]},editGraphClose:function(e){this.editGraph=!1,this.title=e.title,this.legendPosition=e.legendPosition,this.graphMinY=e.graphMinY,this.graphMaxY=e.graphMaxY,this.lines=[...e.lines],this.graphStartDateTime=e.startDateTime,this.graphEndDateTime=e.endDateTime,this.$nextTick((()=>{if(this.needToUpdate){if(null==this.subscription)this.startGraph();else{let e=JSON.parse(JSON.stringify(this.items));this.removeItems(e),setTimeout((()=>{this.addItems(e)}),0)}this.needToUpdate=!1}})),this.moveLegend(this.legendPosition),this.$emit("edit")},handleResize:function(){this.graph.setSize(this.getSize("chart")),this.overview&&this.overview.setSize(this.getSize("overview"))},resize:function(){this.graph.setSize(this.getSize("chart")),this.overview&&this.overview.setSize(this.getSize("overview")),this.$emit("resize",this.id)},expandAll:function(){this.fullWidth=!0,this.fullHeight=!0,this.resize()},collapseAll:function(){this.fullWidth=!1,this.fullHeight=!1,this.resize()},expandWidth:function(){this.fullWidth=!0,this.resize()},collapseWidth:function(){this.fullWidth=!1,this.resize()},expandHeight:function(){this.fullHeight=!0,this.resize()},collapseHeight:function(){this.fullHeight=!1,this.resize()},minMaxTransition:function(){this.expand=!this.expand,this.$emit("min-max-graph",this.id)},setGraphRange:function(){let e=.1;(this.graphMinY||0===this.graphMinY||this.graphMaxY||0===this.graphMaxY)&&(e=0),this.graph.scales.y.range=(n,t,l)=>{let i=t;(this.graphMinY||0===this.graphMinY)&&(i=this.graphMinY);let s=l;return(this.graphMaxY||0===this.graphMaxY)&&(s=this.graphMaxY),w.A.rangeNum(i,s,e,!0)}},subscribe:function(){this.cable.createSubscription("StreamingChannel",window.openc3Scope,{received:e=>this.received(e),connected:()=>{this.addItemsToSubscription(this.items)},disconnected:()=>{this.errors.push({type:"disconnected",message:"OpenC3 backend connection disconnected",time:(new Date).getTime()})},rejected:()=>{this.errors.push({type:"rejected",message:"OpenC3 backend connection rejected",time:(new Date).getTime()})}}).then((e=>{this.subscription=e}))},getSize:function(e){let n=0;const t=document.getElementById("openc3-nav-drawer");t&&(n=t.classList.contains("v-navigation-drawer--open")?t.clientWidth:0);let l=0;if("right"===this.legendPosition||"left"===this.legendPosition){const e=document.getElementsByClassName("u-legend")[0];l=e.clientWidth}const i=Math.max(document.documentElement.clientWidth,window.innerWidth||0)-n-l,s=Math.max(document.documentElement.clientHeight,window.innerHeight||0),o=document.getElementsByClassName("tgt-pkt-item-chooser")[0];let a=100;"overview"===e?this.fullHeight&&!this.hideOverview?this.showOverview=!0:this.showOverview=!1:o&&(a=s-o.clientHeight-a-250,this.fullHeight||(a=a/2+10));let r=i-62;return this.fullWidth||(r=r/2-10),{width:this.width||r,height:this.height||a}},getScales:function(){return{scales:{x:{range(e,n,t){return null==n?[1566453600,1566497660]:[n,t]}},y:{range(e,n,t){return null==n?[-100,100]:w.A.rangeNum(n,t,.1,!0)}}}}},getAxes:function(e){let n="rgba(0, 0, 0, .1)",t="black";return this.$vuetify.theme.dark&&(n="rgba(255, 255, 255, .1)",t="white"),{axes:[{stroke:t,grid:{show:!0,stroke:n,width:2}},{size:80,stroke:t,grid:{show:"overview"!==e,stroke:n,width:2},values(e,n){return(n.some((e=>e>=1e7))||n.every((e=>e<.01)))&&(n=n.map((e=>e.toExponential(3)))),n}}]}},closeEditItem:function(e){this.editItem=!1,(null!==this.graphEndDateTime&&this.selectedItem!==e||this.selectedItem.valueType!==e.valueType||this.selectedItem.reduced!==e.reduced||this.selectedItem.reducedType!==e.reducedType)&&this.changeItem(e)},changeColor:function(e){let n=this.subscriptionKey(this.selectedItem),t=this.indexes[n];this.items[t-1].color=e,this.selectedItem.color=e,this.graph.root.querySelectorAll(".u-marker")[t].style.borderColor=e},changeLimits:function(e){let n=this.subscriptionKey(this.selectedItem),t=this.indexes[n];this.items[t-1].limits=e,this.selectedItem.limits=e,this.limitsValues=e},linesPlugin:function(){return{hooks:{draw:e=>{const{ctx:n,bbox:t}=e,l=e.valToPos(e.scales.y.min,"y",!0),i=e.valToPos(e.scales.y.max,"y",!0),s=e.valToPos(this.limitsValues[0],"y",!0),o=e.valToPos(this.limitsValues[1],"y",!0),a=e.valToPos(this.limitsValues[2],"y",!0),r=e.valToPos(this.limitsValues[3],"y",!0);if(this.lines.forEach((l=>{e.scales.y.min<=l.yValue&&l.yValue<=e.scales.y.max&&(n.save(),n.beginPath(),n.strokeStyle=l.color,n.lineWidth=2,n.moveTo(t.left,e.valToPos(l.yValue,"y",!0)),n.lineTo(t.left+t.width,e.valToPos(l.yValue,"y",!0)),n.stroke(),n.restore())})),n.save(),n.beginPath(),n.fillStyle="rgba(255,0,0,0.15)",e.scales.y.min<this.limitsValues[0]){let e=s<i?i:s;n.fillRect(t.left,s,t.width,l-e)}if(e.scales.y.max>this.limitsValues[3]){let e=l<r?l:r;n.fillRect(t.left,i,t.width,e-i)}if(n.fillStyle="rgba(255,255,0,0.15)",e.scales.y.min<this.limitsValues[1]&&e.scales.y.max>this.limitsValues[0]){let e=o<i?i:o;n.fillRect(t.left,e,t.width,s-e)}if(e.scales.y.max>this.limitsValues[2]&&e.scales.y.min<this.limitsValues[3]){let e=l<r?l:r,i=l<a?l:a;n.fillRect(t.left,e,t.width,i-e)}if(n.fillStyle="rgba(0,255,0,0.15)",4===this.limitsValues.length){if(e.scales.y.min<this.limitsValues[2]&&e.scales.y.max>this.limitsValues[1]){let e=a<i?i:a,s=l<o?l:o;n.fillRect(t.left,e,t.width,s-e)}}else{const s=e.valToPos(this.limitsValues[4],"y",!0),r=e.valToPos(this.limitsValues[5],"y",!0);if(e.scales.y.min<this.limitsValues[4]&&e.scales.y.max>this.limitsValues[1]){let e=s<i?i:s;n.fillRect(t.left,e,t.width,o-e)}if(e.scales.y.max>this.limitsValues[5]&&e.scales.y.min<this.limitsValues[2]){let e=l<a?l:a,i=l<r?l:r;n.fillRect(t.left,e,t.width,i-e)}n.fillStyle="rgba(0,0,255,0.15)";let c=r<i?i:r,u=l<s?l:s;n.fillRect(t.left,c,t.width,u-c)}n.stroke(),n.restore()}}}},changeItem:function(e){this.removeItems([this.selectedItem]),this.selectedItem.valueType=e.valueType,this.selectedItem.reduced=e.reduced,this.selectedItem.reducedType=e.reducedType,setTimeout((()=>{this.addItems([this.selectedItem])}),0)},addItems:function(e,n="CONVERTED"){for(const l of e){l.valueType||(l.valueType=n),void 0===l.color&&(l.color=this.colors[this.colorIndex]),void 0===l.limits?l.limits=[]:l.limits.length>0&&(this.limitsValues=l.limits),this.colorIndex++,this.colorIndex===this.colors.length&&(this.colorIndex=0),this.items.push(l);const e=this.data.length;this.graph.addSeries({spanGaps:!0,item:l,label:this.formatLabel(l),stroke:(e,n)=>this.items[n-1].color,width:2,value:(e,n)=>"string"===typeof n||isNaN(n)?"NaN":null==n?"--":Math.abs(n)<.01||Math.abs(n)>=1e7?n.toExponential(6):n.toFixed(6)},e),this.overview&&this.overview.addSeries({spanGaps:!0,stroke:(e,n)=>this.items[n-1].color},e);let t=Array(this.data[0].length);this.data.splice(e,0,t),this.indexes[this.subscriptionKey(l)]=e}let t=this.colors.indexOf(e[e.length-1].color);t&&(this.colorIndex=t+1),this.addItemsToSubscription(e),this.$emit("edit")},addItemsToSubscription:function(e=this.items){let n=this.startTime;this.graphStartDateTime&&(n=this.graphStartDateTime),this.subscription&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then((t=>{t&&OpenC3Auth.setTokens(),this.subscription.perform("add",{scope:window.openc3Scope,token:localStorage.openc3Token,items:e.map(this.subscriptionKey),start_time:n,end_time:this.graphEndDateTime})}))},clearAllData:function(){this.data[0]=[],this.clearData(this.items)},clearData:function(e){for(const n of e.map(this.subscriptionKey)){let e=this.indexes[n];this.data[e]=Array(this.data[0].length).fill(null),this.graph.setData(this.data),this.overview&&this.overview.setData(this.data)}2===this.data.length&&(this.data[0]=[],this.graph.setData(this.data),this.overview.setData(this.data))},removeItems:function(e){this.removeItemsFromSubscription(e);for(const n of e.map(this.subscriptionKey)){const e=this.reorderIndexes(n);this.items.splice(e-1,1),this.data.splice(e,1),this.graph.delSeries(e),this.graph.setData(this.data),this.overview&&(this.overview.delSeries(e),this.overview.setData(this.data))}1===this.data.length&&(this.data[0]=[],this.graph.setData(this.data),this.overview.setData(this.data)),this.$emit("edit")},removeItemsFromSubscription:function(e=this.items){this.subscription&&this.subscription.perform("remove",{scope:window.openc3Scope,token:localStorage.openc3Token,items:e.map(this.subscriptionKey)})},reorderIndexes:function(e){let n=this.indexes[e];for(var t in delete this.indexes[e],this.indexes)this.indexes[t]>n&&(this.indexes[t]-=1);return n},received:function(e){this.cable.recordPing();for(let n=0;n<e.length;n++){let t=e[n].__time/1e9,l=e[0].length;if(0===l||t>e[0][l-1]){for(let e=0;e<this.data.length;e++)this.data[e].push(null);this.set_data_at_index(this.data[0].length-1,t,e[n])}else{let l=k()(this.data[0],t,this.bs_comparator);if(l>=0)this.set_data_at_index(l,t,e[n]);else{let i=-l-1;for(let e=0;e<this.data.length;e++)this.data[e].splice(i,0,null);this.set_data_at_index(i,t,e[n])}}}if(null==this.startTime&&this.data[0][0]){let e=1e9*this.data[0][0];this.$emit("started",e)}this.dataChanged=!0},bs_comparator:function(e,n){return e-n},set_data_at_index:function(e,n,t){this.data[0][e]=n;for(const[l,i]of Object.entries(t)){if("time"===l)continue;let n=this.indexes[l];if(n){let t=this.data[n];if(i?.raw)t[e]=null;else if("string"===typeof i){if(t[e]=null,!l.includes("__RAW")){for(let e of this.items)if(this.subscriptionKey(e)===l){this.selectedItem=e;break}this.changeItem({valueType:"RAW",reduced:this.selectedItem.reduced,reducedType:this.selectedItem.reducedType})}}else t[e]=i}}},subscriptionKey:function(e){let n=`${e.reduced}__TLM__${e.targetName}__${e.packetName}__${e.itemName}__${e.valueType}`;return"REDUCED_MINUTE"!==e.reduced&&"REDUCED_HOUR"!==e.reduced&&"REDUCED_DAY"!==e.reduced||(n+=`__${e.reducedType}`),n}}},E=T;t(3046),t(6470);var M=(0,A.A)(E,l,i,!1,null,"0369d26c",null);const I=M.exports},1951:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"array-widget-container"},[n("v-textarea",{class:e.valueClass,style:[e.computedStyle,e.aging],attrs:{solo:"",dense:"",readonly:"","hide-details":"",height:e.height,value:e._value,"data-test":"array-widget"},on:{contextmenu:e.showContextMenu}}),e._v(" "),n("v-menu",{attrs:{"position-x":e.x,"position-y":e.y,absolute:"","offset-y":""},model:{value:e.contextMenuShown,callback:function(n){e.contextMenuShown=n},expression:"contextMenuShown"}},[n("v-list",e._l(e.contextMenuOptions,(function(t,l){return n("v-list-item",{key:l,on:{click:function(e){return e.stopPropagation(),t.action.apply(null,arguments)}}},[n("v-list-item-title",[e._v(e._s(t.title))])],1)})),1)],1),e._v(" "),n("details-dialog",{attrs:{"target-name":e.parameters[0],"packet-name":e.parameters[1],"item-name":e.parameters[2]},model:{value:e.viewDetails,callback:function(n){e.viewDetails=n},expression:"viewDetails"}})],1)},i=[],s=t(2967),o=t(3720);t(9471);const a={components:{DetailsDialog:o.A},data:function(){return{width:200,height:100,itemsPerRow:4,formatter:null}},mixins:[s.A],computed:{aging(){return{"--aging":this.grayLevel}}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height),this.parameters[5]&&(this.formatter=this.parameters[5]),this.parameters[6]&&(this.itemsPerRow=parseInt(this.parameters[6]))},methods:{getType:function(){var e="CONVERTED";return this.parameters[7]&&(e=this.parameters[7]),e},formatValue:function(e){var n="",t=" ",l="\n",i=0;if(Array.isArray(e)){for(const s of e)this.formatter&&"nil"!==this.formatter?.toLowerCase()?n+=sprintf(this.formatter,s):n+=s,i+=1,i%this.itemsPerRow===0?(i=0,n+=l):n+=t;return n.trim()}return e}}},r=a;t(6251);var c=t(2401),u=(0,c.A)(r,l,i,!1,null,"4c83f4c3",null);const d=u.exports},9312:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"block-widget-container"},[n("v-textarea",{class:e.valueClass,style:[e.computedStyle,e.aging],attrs:{solo:"",dense:"",readonly:"","no-resize":"","hide-details":"",width:e.width,height:e.height,value:e._value,"data-test":"valueText"},on:{contextmenu:e.showContextMenu}}),e._v(" "),n("v-menu",{attrs:{"position-x":e.x,"position-y":e.y,absolute:"","offset-y":""},model:{value:e.contextMenuShown,callback:function(n){e.contextMenuShown=n},expression:"contextMenuShown"}},[n("v-list",e._l(e.contextMenuOptions,(function(t,l){return n("v-list-item",{key:l,on:{click:function(e){return e.stopPropagation(),t.action.apply(null,arguments)}}},[n("v-list-item-title",[e._v(e._s(t.title))])],1)})),1)],1),e._v(" "),n("details-dialog",{attrs:{"target-name":e.parameters[0],"packet-name":e.parameters[1],"item-name":e.parameters[2]},model:{value:e.viewDetails,callback:function(n){e.viewDetails=n},expression:"viewDetails"}})],1)},i=[],s=t(2967),o=t(3720);t(9471);const a={components:{DetailsDialog:o.A},data:function(){return{width:400,height:400,bytesPerWord:4,wordsPerRow:4,addrFormat:null,formatter:"%02X"}},mixins:[s.A],computed:{aging(){return{"--aging":this.grayLevel}}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height),this.parameters[5]&&(this.formatter=this.parameters[5]),this.parameters[6]&&(this.bytesPerWord=parseInt(this.parameters[6])),this.parameters[7]&&(this.wordsPerRow=parseInt(this.parameters[7])),this.parameters[8]&&(this.addrFormat=this.parameters[8])},methods:{getType:function(){var e="RAW";return this.parameters[9]&&(e=this.parameters[9]),e},formatValue:function(e){var n="";if(e&&e.raw){var t=" ",l="\n",i=0,s=0;const o=this.bytesPerWord*this.wordsPerRow;for(const a of e.raw)this.addrFormat&&0===i&&(n+=sprintf(this.addrFormat,s),s+=o),n+=sprintf(this.formatter,a),i+=1,i%o===0?(i=0,n+=l):i%this.bytesPerWord===0&&(n+=t)}else n=e;return n}}},r=a;t(2272);var c=t(2401),u=(0,c.A)(r,l,i,!1,null,"42f141dc",null);const d=u.exports},4814:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>c});var l=function(){var e=this,n=e._self._c;return n("div",[n("v-btn",{staticClass:"ma-1",style:e.computedStyle,attrs:{color:"primary"},on:{click:e.onClick}},[e._v("\n "+e._s(e.buttonText)+"\n ")]),e._v(" "),n("v-dialog",{attrs:{"max-width":"300"},model:{value:e.displaySendHazardous,callback:function(n){e.displaySendHazardous=n},expression:"displaySendHazardous"}},[n("v-card",[n("v-card-title",[e._v("Hazardous")]),e._v(" "),n("v-card-text",[n("div",{staticClass:"mx-1"},[n("v-row",{staticClass:"my-2"},[n("span",[e._v(" Warning: Command is Hazardous. Send? ")])]),e._v(" "),n("v-row",[n("v-spacer"),e._v(" "),n("v-btn",{attrs:{outlined:""},on:{click:e.cancelHazardousCmd}},[e._v(" Cancel ")]),e._v(" "),n("v-btn",{staticClass:"primary mx-1",on:{click:e.sendHazardousCmd}},[e._v("\n Send\n ")])],1)],1)])],1)],1)],1)},i=[],s=t(47);const o=s.A;var a=t(2401),r=(0,a.A)(o,l,i,!1,null,null,null);const c=r.exports},2430:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("svg",{attrs:{id:"canvas",width:e.width,height:e.height}},e._l(e.widgets,(function(t,l){return n(t.type,e._g({key:l,tag:"component",attrs:{target:t.target,parameters:t.parameters,settings:t.settings,widgets:t.widgets,name:t.name,line:t.line,lineNumber:t.lineNumber}},e.$listeners))})),1)},i=[],s=t(9843);const o={mixins:[s.A],computed:{width(){return this.parameters[0]+"px"},height(){return this.parameters[1]+"px"}}},a=o;t(1497);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"17947dc7",null);const u=c.exports},6614:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("circle",{attrs:{cx:e.parameters[0],cy:e.parameters[1],r:e.parameters[3],fill:e.parameters[2]}})},i=[],s=t(9729);const o={mixins:[s.A]},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},8239:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return e.imageUrl?n("image",{attrs:{href:e.imageUrl,x:e.parameters[1],y:e.parameters[2],width:e.width,height:e.height},on:{click:e.clickHandler}}):e._e()},i=[],s=t(9729),o=t(7163);const a={mixins:[s.A,o.A],data:function(){return{imageUrl:null,screenTarget:null,screenName:null}},computed:{width:function(){return this.parameters[3]?`${this.parameters[3]}px`:"100%"},height:function(){return this.parameters[4]?`${this.parameters[4]}px`:"100%"}},created:function(){this.settings.forEach((e=>{"SCREEN"===e[0]&&(this.screenTarget=e[1],this.screenName=e[2])})),this.parameters[0].startsWith("http")?this.imageUrl=this.parameters[0]:this.getPresignedUrl(this.parameters[0]).then((e=>{this.imageUrl=e}))},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.screen.open(this.screenTarget,this.screenName)}}},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},4653:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("g",[e._l(e.images,(function(t){return n("image",{directives:[{name:"show",rawName:"v-show",value:t.value==e.selectedValue,expression:"image.value == selectedValue"}],key:t.value,attrs:{href:t.url,x:t.x,y:t.y,width:t.width,height:t.height},on:{click:e.clickHandler}})})),e._v(" "),e.defaultImage?n("image",{directives:[{name:"show",rawName:"v-show",value:e.showDefault,expression:"showDefault"}],attrs:{href:e.defaultImage.url,x:e.defaultImage.x,y:e.defaultImage.y,width:e.defaultImage.width,height:e.defaultImage.height},on:{click:e.clickHandler}}):e._e()],2)},i=[],s=t(9729),o=t(7163);const a={mixins:[s.A,o.A],data:function(){return{images:[],defaultImage:null,screenTarget:null,screenName:null}},computed:{selectedValue:function(){return this.screen&&this.screen.screenValues[this.valueId]?this.screen.screenValues[this.valueId][0]:null},showDefault:function(){return!this.images.some((e=>e.value==this.selectedValue))}},created:function(){this.settings.forEach((e=>{"SCREEN"===e[0]&&(this.screenTarget=e[1],this.screenName=e[2])})),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${this.parameters[3]||"RAW"}`,this.screen&&this.screen.addItem(this.valueId);const e=this.settings.filter((e=>"IMAGE"===e[0])).map((async e=>{let n=e[2];return n.startsWith("http")||(n=await this.getPresignedUrl(n)),{url:n,value:e[1],x:e[3],y:e[4],width:e[5],height:e[6]}}));if(Promise.all(e).then((e=>{this.images=e})),this.parameters[4]){const e={x:this.parameters[5],y:this.parameters[6],width:this.parameters[7]?`${this.parameters[7]}px`:"100%",height:this.parameters[8]?`${this.parameters[8]}px`:"100%"};let n=this.parameters[4];n.startsWith("http")?this.defaultImage={...e,url:n}:this.getPresignedUrl(n).then((n=>{this.defaultImage={...e,url:n}}))}},destroyed:function(){this.screen&&this.screen.deleteItem(this.valueId)},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.screen.open(this.screenTarget,this.screenName)}}},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},6631:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("text",{attrs:{x:e.parameters[0],y:e.parameters[1],fill:e.fillColor}},[e._v("\n "+e._s(e.parameters[2])+"\n")])},i=[],s=t(9729);const o={mixins:[s.A],computed:{fillColor(){return this.parameters[3]?this.parameters[3]:"black"}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},8211:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("text",{attrs:{x:e.parameters[3],y:e.parameters[4],"font-size":e.fontSize,fill:e.fillColor}},[e._v("\n "+e._s(e._value)+"\n")])},i=[],s=t(9729);const o={mixins:[s.A],data(){return{valueId:null}},computed:{_value(){return this.screen?this.screen.screenValues[this.valueId][0]:null},fontSize(){return this.parameters[5]?this.parameters[5]+"px":"14px"},fillColor(){return this.parameters[6]?this.parameters[6]:"black"}},created(){let e="CONVERTED";this.parameters[7]&&(e=this.parameters[7]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${e}`,this.screen&&this.screen.addItem(this.valueId)},destroyed(){this.screen&&this.screen.deleteItem(this.valueId)}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},4352:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("line",{style:e.calcStyle,attrs:{x1:e.parameters[0],y1:e.parameters[1],x2:e.parameters[2],y2:e.parameters[3]}})},i=[],s=t(9729);const o={mixins:[s.A],computed:{calcStyle(){let e="black";this.parameters[4]&&(e=this.parameters[4]);let n=1;return this.parameters[5]&&(n=this.parameters[5]),"stroke:"+e+";stroke-width:"+n}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},4291:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("line",{style:e.calcStyle,attrs:{x1:e.parameters[3],y1:e.parameters[4],x2:e.parameters[5],y2:e.parameters[6]}})},i=[],s=t(9729);const o={mixins:[s.A],data(){return{valueId:0,valueMap:{}}},computed:{calcStyle(){let e="black";this.screen&&this.screen.screenValues[this.valueId]&&(e=this.valueMap[this.screen.screenValues[this.valueId][0]]);let n=1;return this.parameters[7]&&(n=this.parameters[7]),"stroke:"+e+";stroke-width:"+n}},created(){this.settings.forEach((e=>{"VALUE_EQ"===e[0]&&(this.valueMap[e[1]]=e[2])}));let e="CONVERTED";this.parameters[8]&&(e=this.parameters[8]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${e}`,this.screen&&this.screen.addItem(this.valueId)},destroyed(){this.screen&&this.screen.deleteItem(this.valueId)}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},5733:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-checkbox",{style:e.computedStyle,attrs:{"hide-details":"",dense:"",label:e.label},model:{value:e.value,callback:function(n){e.value=n},expression:"value"}})},i=[],s=t(9729);const o={mixins:[s.A],data(){return{items:[],label:"Checkbox",value:!1}},created(){this.settings.forEach((e=>{"NAMED_WIDGET"===e[0]&&e[2].setNamedWidget(e[1],this)})),this.label=this.parameters[0]},methods:{checked(){return this.value}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},3835:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-select",{style:e.computedStyle,attrs:{"hide-details":"",dense:"",outlined:"",items:e.items},model:{value:e.value,callback:function(n){e.value=n},expression:"value"}})},i=[],s=t(9729);const o={mixins:[s.A],data(){return{items:[],value:null}},created(){this.settings.forEach((e=>{"NAMED_WIDGET"===e[0]&&e[2].setNamedWidget(e[1],this)})),this.value=this.parameters[0],this.items=this.parameters},methods:{text(){return this.value}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},3634:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>c});var l=function(){var e=this,n=e._self._c;return n(e.widgetType,e._b({tag:"component"},"component",{...e.$props,...e.$attrs},!1))},i=[];t(7107);const s={data(){return{widgetType:null}},props:{name:{default:null}},computed:{url:function(){return`${window.location.origin}/tools/widgets/${this.name}/${this.name}.umd.min.js`}},async mounted(){try{this.widgetType=await System.import(this.url)}catch(e){throw new Error(`Unknown widget: ${this.name}`)}}},o=s;var a=t(2401),r=(0,a.A)(o,l,i,!1,null,null,null);const c=r.exports},2656:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("value-widget",{attrs:{parameters:e.getParameters,settings:e.settings,"format-string":e.parameters[3]}})],1)},i=[],s=t(9729),o=t(2932);const a={mixins:[s.A],components:{ValueWidget:o["default"]},computed:{getParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[4]]}},created(){this.setWidth(this.parameters[5],"ch",12)}},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},2907:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},e._l(e.widgets,(function(t,l){return n(t.type,e._g({key:l,tag:"component",attrs:{target:t.target,parameters:t.parameters,settings:t.settings,widgets:t.widgets,name:t.name,line:t.line,lineNumber:t.lineNumber}},e.$listeners))})),1)},i=[],s=(t(9375),t(9843));const o={mixins:[s.A],created:function(){if(this.parameters[0]){let e=this.parameters[0];this.widgets.forEach((n=>{const t=n.settings.find((e=>"MARGIN"===e[0]||"RAW"===e[0]&&e[1].toUpperCase().includes("MARGIN")));void 0===t&&n.settings.push(["MARGIN",e])}))}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},4812:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",[n("v-banner",{staticClass:"boxbanner",style:e.computedStyle,attrs:{"single-line":""}},[e._v(e._s(e.parameters[0]))]),e._v(" "),n("horizontal-widget",e._g({attrs:{parameters:e.parameters.slice(1),settings:e.settings,widgets:e.widgets}},e.$listeners))],1)},i=[],s=t(2907),o=t(9843);const a={mixins:[o.A],components:{HorizontalWidget:s["default"]}},r=a;t(6395);var c=t(2401),u=(0,c.A)(r,l,i,!1,null,"7935dee2",null);const d=u.exports},9646:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=function(){var e=this,n=e._self._c;return n("hr")},i=[],s=t(2401),o={},a=(0,s.A)(o,l,i,!1,null,null,null);const r=a.exports},527:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("iframe",{style:e.computedStyle,attrs:{title:"IFrameWidget",src:e.parameters[0],width:e.width,height:e.height}})},i=[],s=t(9729);const o={mixins:[s.A],data:function(){return{width:800,height:600}},created:function(){this.setWidth(this.parameters[1],"px",this.width),this.setHeight(this.parameters[2],"px",this.height)}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},4259:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("img",{style:e.computedStyle,attrs:{src:e.src,alt:e.itemFullName,width:e.parameters[4],height:e.parameters[5]}})},i=[],s=t(9729);const o={mixins:[s.A],data:function(){return{valueId:null,imageData:""}},computed:{src:function(){return`data:image/${this.parameters[3]};base64, ${this.screen.screenValues[this.valueId][0]}`}},created:function(){this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__CONVERTED`,this.screen.addItem(this.valueId)},destroyed:function(){this.screen.deleteItem(this.valueId)}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},4858:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"pa-1 mt-1 label",style:[e.cssProps,e.computedStyle],attrs:{"data-test":"label"}},[e._v("\n "+e._s(e.labelText)+"\n")])},i=[],s=t(9729);const o={mixins:[s.A],data(){return{fontFamily:null,fontSize:null,fontWeight:"normal",fontStyle:"normal"}},computed:{labelText(){return this.parameters[0]},cssProps(){var e=null;return this.fontSize&&(e=this.fontSize+"px"),{"--font-family":this.fontFamily,"--font-size":e,"--font-weight":this.fontWeight,"--font-style":this.fontStyle}}},created(){this.verifyNumParams("LABEL",1,5,"LABEL <Text> <Font Family> <Font Size> <Font Weight> <Font Style>"),this.parameters[1]&&(this.fontFamily=this.parameters[1]),this.parameters[2]&&(this.fontSize=this.parameters[2]),this.parameters[3]&&(this.fontWeight=this.parameters[3]),this.parameters[4]&&(this.fontStyle=this.parameters[4])}},a=o;t(6074);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"19db816e",null);const u=c.exports},8195:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("label-widget",{attrs:{parameters:e.labelName,settings:[...e.settings],"widget-index":0}}),e._v(" "),n("led-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(9729),o=t(4858),a=t(8386);const r={mixins:[s.A],components:{LabelWidget:o["default"],LedWidget:a["default"]},computed:{labelName(){return[this.parameters[2]+":"]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},8207:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("label-widget",{attrs:{parameters:e.labelName,settings:[...e.settings],"widget-index":0}}),e._v(" "),n("progressbar-widget",{style:e.computedStyle,attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(9729),o=t(4858),a=t(6825);const r={mixins:[s.A],components:{LabelWidget:o["default"],ProgressbarWidget:a["default"]},computed:{labelName(){return[this.parameters[2]+":"]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},5162:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("label-widget",{attrs:{parameters:e.labelName,settings:[...e.settings],line:e.line,lineNumber:e.lineNumber,"widget-index":0}}),e._v(" "),n("sparkline-widget",{style:e.computedStyle,attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(9729),o=t(4858),a=t(6115);const r={mixins:[s.A],components:{LabelWidget:o["default"],SparklineWidget:a["default"]},computed:{labelName(){return[this.parameters[2]+":"]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},6543:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("label-widget",{attrs:{parameters:e.labelName,settings:[...e.settings],line:e.line,lineNumber:e.lineNumber,"widget-index":0}}),e._v(" "),n("value-widget",{attrs:{parameters:e.valueParameters,settings:[...e.settings],line:e.line,lineNumber:e.lineNumber,"widget-index":1}})],1)},i=[],s=(t(4293),t(9729)),o=t(4858),a=t(2932);const r={mixins:[s.A],components:{LabelWidget:o["default"],ValueWidget:a["default"]},computed:{labelName(){let e=this.parameters[2];return e.includes("[[")&&(e=e.replace("[[","[").replace("]]","]")),[e+":"]},valueParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[3],this.parameters[4]]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},7623:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>A});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("label-widget",{attrs:{parameters:e.labelName,settings:[...e.settings],line:e.line,lineNumber:e.lineNumber,"widget-index":0}}),e._v(" "),n("value-widget",{attrs:{parameters:e.valueParameters,settings:[...e.settings],line:e.line,lineNumber:e.lineNumber,"widget-index":1}})],1)},i=[],s=(t(9375),t(9729)),o=t(4858),a=t(2932),r=t(4364);const c={mixins:[s.A],data(){return{description:"",valueParameters:[]}},components:{LabelWidget:o["default"],ValueWidget:a["default"]},computed:{labelName(){return[this.description]}},created(){this.valueParameters=this.parameters.slice(0,3),void 0!=this.parameters[4]&&this.valueParameters.push(this.parameters[4]),void 0!=this.parameters[5]&&this.valueParameters.push(this.parameters[5]),this.parameters.length>3?this.description=this.parameters[3]:(new r.x).get_item(this.parameters[0],this.parameters[1],this.parameters[2]).then((e=>{this.description=e["description"]}))}},u=c;var d=t(2401),m=(0,d.A)(u,l,i,!1,null,null,null);const A=m.exports},1852:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("labelvalue-widget",{attrs:{parameters:e.parameters,settings:e.labelValueSettings}}),e._v(" "),n("limitsbar-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":2}})],1)},i=[],s=t(6543),o=t(2835),a=t(9729);const r={mixins:[a.A],components:{LabelvalueWidget:s["default"],LimitsbarWidget:o["default"]},computed:{labelValueSettings(){return[...this.settings.filter((e=>"__SCREEN__"===e[0])),...this.settings.filter((e=>0===parseInt(e[0])||1===parseInt(e[0])))]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},2766:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>A});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",style:e.computedStyle},[n("label-widget",{attrs:{parameters:[e.parameters[2]],settings:[...e.settings],"widget-index":0}}),e._v(" "),n("limitscolumn-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":2}}),e._v(" "),n("value-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(4858),o=t(2932),a=t(9178),r=t(9729);const c={mixins:[r.A],components:{LabelWidget:s["default"],ValueWidget:o["default"],LimitscolumnWidget:a["default"]}},u=c;var d=t(2401),m=(0,d.A)(u,l,i,!1,null,null,null);const A=m.exports},8756:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("labelvalue-widget",{attrs:{parameters:e.labelValueParameters,settings:e.labelValueSettings}}),e._v(" "),n("rangebar-widget",{attrs:{parameters:e.rangeBarParameters,settings:[...e.settings],"widget-index":2}})],1)},i=[],s=t(6543),o=t(5736),a=t(9729);const r={mixins:[a.A],components:{LabelvalueWidget:s["default"],RangebarWidget:o["default"]},computed:{labelValueSettings(){return[...this.settings.filter((e=>"__SCREEN__"===e[0])),...this.settings.filter((e=>0===parseInt(e[0])||1===parseInt(e[0])))]},labelValueParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[5],this.parameters[6]]},rangeBarParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[3],this.parameters[4],this.parameters[5],this.parameters[7],this.parameters[8]]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},8386:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"led mt-1",style:e.cssProps})},i=[],s=t(9729);const o={mixins:[s.A],data(){return{valueId:null,colors:{TRUE:"openc3-green",FALSE:"openc3-red"}}},computed:{width(){return this.parameters[4]?parseInt(this.parameters[4]):20},height(){return this.parameters[5]?parseInt(this.parameters[5]):20},cssProps(){let e=null;this.screen&&(e=this.screen.screenValues[this.valueId][0]);let n=this.colors[e];return n||(n=this.colors.ANY),n||(n="openc3-black"),{"--height":this.height+"px","--width":this.width+"px","--color":n}}},created(){this.settings.forEach((e=>{switch(e[0]){case"LED_COLOR":this.colors[e[1]]=e[2];break}})),this.parameters[3]||(this.parameters[3]="CONVERTED"),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${this.parameters[3]}`,this.screen&&this.screen.addItem(this.valueId)},destroyed(){this.screen&&this.screen.deleteItem(this.valueId)}},a=o;t(5318);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"62e9f342",null);const u=c.exports},2835:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"limitsbar",style:[e.cssProps,e.computedStyle]},[e._m(0)])},i=[function(){var e=this,n=e._self._c;return n("div",{staticClass:"limitsbar__container"},[n("div",{staticClass:"limitsbar__redlow"}),e._v(" "),n("div",{staticClass:"limitsbar__redhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__yellowlow"}),e._v(" "),n("div",{staticClass:"limitsbar__yellowhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__greenlow"}),e._v(" "),n("div",{staticClass:"limitsbar__greenhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__blue"}),e._v(" "),n("div",{staticClass:"limitsbar__line"}),e._v(" "),n("div",{staticClass:"limitsbar__arrow"})])}],s=t(2754);const o={mixins:[s.A],data(){return{width:160,height:22}}},a=o;t(9851);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"4b85d27c",null);const u=c.exports},8518:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("div",{staticClass:"led align-self-center",style:e.cssProps}),e._v(" "),n("label-widget",{style:e.computedStyle,attrs:{parameters:e.labelName,settings:e.settings,"widget-index":1}})],1)},i=[],s=t(2967);const o={mixins:[s.A],data(){return{radius:15,fullLabelDisplay:!1}},created(){this.parameters[4]&&(this.radius=parseInt(this.parameters[4])),this.parameters[5]&&"true"===this.parameters[5].toLowerCase()&&(this.fullLabelDisplay=!0)},computed:{labelName(){return this.fullLabelDisplay?[this.parameters[0]+" "+this.parameters[1]+" "+this.parameters[2]]:[this.parameters[2]]},cssProps(){let e=null;return this.screen&&(e=this.screen.screenValues[this.valueId][0]),{"--height":this.radius+"px","--width":this.radius+"px","--color":this.limitsColor}}},methods:{getType(){var e="CONVERTED";return this.parameters[3]&&(e=this.parameters[3]),e}}},a=o;t(8490);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"47f390ae",null);const u=c.exports},9178:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"limitsbar",style:[e.cssProps,e.computedStyle]},[e._m(0)])},i=[function(){var e=this,n=e._self._c;return n("div",{staticClass:"limitsbar__container"},[n("div",{staticClass:"limitsbar__redlow"}),e._v(" "),n("div",{staticClass:"limitsbar__redhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__yellowlow"}),e._v(" "),n("div",{staticClass:"limitsbar__yellowhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__greenlow"}),e._v(" "),n("div",{staticClass:"limitsbar__greenhigh"}),e._v(" "),n("div",{staticClass:"limitsbar__blue"}),e._v(" "),n("div",{staticClass:"limitsbar__line"}),e._v(" "),n("div",{staticClass:"limitsbar__arrow"})])}],s=t(2754);const o={mixins:[s.A],data(){return{width:22,height:120}},computed:{cssProps:function(){let e=null;this.screen&&(e=this.screen.screenValues[this.valueId][0]);let n=this.modifyLimits(this.limitsSettings[this.selectedLimitsSet]);return this.calcLimits(n),{"--height":this.height+"px","--width":this.width+"px","--container-width":this.width-5+"px","--position":this.calcPosition(e,n)+"%","--redlow-height":this.redLow+"%","--redhigh-height":this.redHigh+"%","--yellowlow-height":this.yellowLow+"%","--yellowhigh-height":this.yellowHigh+"%","--greenlow-height":this.greenLow+"%","--greenhigh-height":this.greenHigh+"%","--blue-height":this.blue+"%"}}}},a=o;t(1723);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"5a19801c",null);const u=c.exports},2653:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("graph",{ref:"graph"+e.id,style:e.computedStyle,attrs:{id:e.id,state:e.state,"selected-graph-id":e.id,startTime:e.startTime,"seconds-graphed":e.secondsGraphed,"points-saved":e.pointsSaved,"points-graphed":e.pointsGraphed,"initial-items":e.items,height:e.size.height,width:e.size.width,"hide-system-bar":"","hide-overview":""},on:{pause:()=>e.state="pause",start:()=>e.state="start"}})},i=[],s=t(1033),o=t(4342);const a={components:{Graph:o.A},mixins:[s.A]},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},5043:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("table",{style:e.computedStyle,attrs:{role:"presentation"}},e._l(e.widgetChunks,(function(t,l){return n("tr",{key:"r"+l},e._l(t,(function(t,l){return n("td",{key:"c"+l},[n(t.type,e._g({tag:"component",attrs:{target:t.target,parameters:t.parameters,settings:t.settings,widgets:t.widgets,name:t.name,line:t.line,lineNumber:t.lineNumber}},e.$listeners))],1)})),0)})),0)},i=[],s=(t(9375),t(9843)),o=t(5250),a=t.n(o);const r={mixins:[s.A],computed:{columns(){return parseInt(this.parameters[0])},widgetChunks(){return a().chunk(this.widgets,this.columns)}},created:function(){if(this.parameters[1]){let e=this.parameters[1];this.widgets.forEach((n=>{const t=n.settings.find((e=>"MARGIN"===e[0]||"RAW"===e[0]&&e[1].toUpperCase().includes("MARGIN")));void 0===t&&n.settings.push(["MARGIN",e])}))}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},6825:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("rux-progress",{staticClass:"progress",style:e.computedStyle,attrs:{value:e._value}})},i=[],s=t(9729);const o={mixins:[s.A],props:{value:{default:null}},data:function(){return{valueId:null,scaleFactor:1,width:150}},computed:{_value:function(){let e=this.value;return null===e&&this.screen&&(e=this.screen.screenValues[this.valueId][0]),parseInt(parseFloat(e)*this.scaleFactor)}},created:function(){if(this.parameters[3]&&(this.scaleFactor=parseFloat(this.parameters[3])),this.width=this.setWidth(this.parameters[4],"px",this.width),null===this.value){var e="CONVERTED";this.parameters[5]&&(e=this.parameters[5]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${e}`,this.screen&&this.screen.addItem(this.valueId)}},destroyed:function(){this.screen&&this.screen.deleteItem(this.valueId)}},a=o;t(3519);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"e34552b0",null);const u=c.exports},5993:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-radio",{style:e.computedStyle,attrs:{"hide-details":"",dense:"",label:e.label,value:e.value}})},i=[],s=t(9729);const o={props:{value:{type:Number}},mixins:[s.A],data(){return{label:"Radio"}},created(){this.label=this.parameters[0]}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},5758:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-radio-group",{style:e.computedStyle,attrs:{"hide-details":"",dense:""},model:{value:e.selectedIndex,callback:function(n){e.selectedIndex=n},expression:"selectedIndex"}},e._l(e.widgets,(function(t,l){return n(t.type,e._g({key:l,tag:"component",attrs:{value:l,target:t.target,parameters:t.parameters,settings:t.settings,name:t.name}},e.$listeners))})),1)},i=[],s=t(9843);const o={mixins:[s.A],data(){return{selectedIndex:0}},created(){this.settings.forEach((e=>{"NAMED_WIDGET"===e[0]&&e[2].setNamedWidget(e[1],this)})),this.parameters[0]&&(this.selectedIndex=parseInt(this.parameters[0]))},methods:{selected(){return this.selectedIndex}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},5736:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"rangebar",style:[e.cssProps,e.computedStyle]},[e._m(0)])},i=[function(){var e=this,n=e._self._c;return n("div",{staticClass:"rangebar__container"},[n("div",{staticClass:"rangebar__line"}),e._v(" "),n("div",{staticClass:"rangebar__arrow"})])}],s=t(9729);const o={mixins:[s.A],data(){return{width:160,height:22}},computed:{cssProps(){return{"--height":this.height+"px","--width":this.width+"px","--container-height":this.height-5+"px","--position":this.calcPosition()+"%"}},min(){return parseInt(this.parameters[3])},max(){return parseInt(this.parameters[4])},range(){return this.max-this.min}},created(){const e=this.parameters[5]?this.parameters[5]:"CONVERTED";this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${e}`,this.screen&&this.screen.addItem(this.valueId),this.width=this.setWidth(this.parameters[6],"px",this.width),this.height=this.setHeight(this.parameters[7],"px",this.height)},destroyed(){this.screen&&this.screen.deleteItem(this.valueId)},methods:{calcPosition(){let e=null;if(this.screen&&(e=this.screen.screenValues[this.valueId][0]),!e)return 0;if(e.raw)return"-Infinity"===e.raw?0:100;const n=(e-this.min)/this.range*100;return n>100?100:n<0?0:n}}},a=o;t(519);var r=t(2401),c=(0,r.A)(a,l,i,!1,null,"f50bb458",null);const u=c.exports},9517:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("rux-monitoring-icon",e._g(e._b({staticClass:"rux-icon",attrs:{icon:e.icon,status:e.status,label:e.label,sublabel:e.subLabel},on:{click:e.clickHandler}},"rux-monitoring-icon",e.attrs,!1),e.on))},i=[],s=(t(9375),t(9729));const o={mixins:[s.A],props:{value:{default:null}},data:function(){return{valueId:null,icon:"",label:"",subLabel:"",items:[]}},computed:{status:function(){let e="off";if(this.screen)for(const n of this.items){let t=this.screen.screenValues[n][1];t&&((t.includes("BLUE")||t.includes("GREEN"))&&"caution"!=e&&"critical"!=e&&(e="normal"),t.includes("YELLOW")&&"critical"!=e&&(e="caution"),t.includes("RED")&&(e="critical"))}else e="off";return e}},created:function(){this.icon=this.parameters[0],this.label=this.parameters[1],this.subLabel=this.parameters[2],this.settings.forEach((e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"TLM":let n="CONVERTED";e[4]&&(n=e[4]);let t=`${e[1]}__${e[2]}__${e[3]}__${n}`;this.items.push(t),this.screen&&this.screen.addItem(t);break}}))},destroyed:function(){this.screen&&this.items.forEach((e=>{this.screen.deleteItem(e)}))},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.screen.open(this.screenTarget,this.screenName)}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},9769:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("vertical-widget",e._g({staticClass:"overflow-y-auto",style:e.computedStyle,attrs:{settings:e.settings,parameters:e.parameters.slice(1),widgets:e.widgets}},e.$listeners))},i=[],s=t(9843),o=t(1629);const a={mixins:[s.A],components:{VerticalWidget:o["default"]},created:function(){this.setHeight(this.parameters[0],"px",200)}},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},2959:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-banner",{style:e.computedStyle,attrs:{"single-line":""}},[e._v(e._s(e.labelText))])},i=[],s=t(9729);const o={mixins:[s.A],computed:{labelText(){return this.parameters[0]}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},1533:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-icon",{on:{click:e.clickHandler}},[e._v(" "+e._s(e.displayedIcon)+" ")])},i=[],s=t(2967);const o={mixins:[s.A],props:{value:{default:null}},data:function(){return{item:null,oneBar:30,twoBar:60,threeBar:90}},computed:{displayedIcon:function(){let e="mdi-signal-cellular-outline";return this._value>=this.oneBar&&(e="mdi-signal-cellular-1"),this._value>=this.twoBar&&(e="mdi-signal-cellular-2"),this._value>=this.threeBar&&(e="mdi-signal-cellular-3"),e}},created(){this.settings.forEach((e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"VALUES":this.oneBar=parseFloat(e[1]),this.twoBar=parseFloat(e[2]),this.threeBar=parseFloat(e[3]);break}}))},methods:{getType(){var e="CONVERTED";return"RAW"==this.parameters[3]&&(e="RAW"),e},clickHandler(){this.screenTarget&&this.screenName&&this.screen.open(this.screenTarget,this.screenName)}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},773:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{style:e.computedStyle})},i=[],s=(t(9375),t(9729));const o={mixins:[s.A],created(){this.settings.push(["WIDTH",this.parameters[0]]),this.settings.push(["HEIGHT",this.parameters[1]])}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},6115:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("graph",{ref:"graph"+e.id,style:e.computedStyle,attrs:{id:e.id,state:e.state,"selected-graph-id":e.id,startTime:e.startTime,"seconds-graphed":e.secondsGraphed,"points-saved":e.pointsSaved,"points-graphed":e.pointsGraphed,"initial-items":e.items,height:e.size.height,width:e.size.width,sparkline:""}})},i=[],s=t(1033),o=t(4342);const a={components:{Graph:o.A},mixins:[s.A],data:function(){return{secondsGraphed:300,pointsSaved:300,pointsGraphed:300,size:{height:30,width:130}}}},r=a;var c=t(2401),u=(0,c.A)(r,l,i,!1,null,null,null);const d=u.exports},2926:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",[n("v-tabs",{style:e.computedStyle,model:{value:e.curTab,callback:function(n){e.curTab=n},expression:"curTab"}},e._l(e.widgets,(function(t,l){return n("v-tab",{key:l},[e._v("\n "+e._s(t.parameters[0])+"\n ")])})),1),e._v(" "),n("v-tabs-items",{model:{value:e.curTab,callback:function(n){e.curTab=n},expression:"curTab"}},e._l(e.widgets,(function(t,l){return n("v-tab-item",{key:l},e._l(t.widgets,(function(t,i){return n(t.type,e._g({key:`${l}-${i}`,tag:"component",attrs:{target:t.target,parameters:t.parameters,settings:t.settings,widgets:t.widgets,name:t.name,line:t.line,lineNumber:t.lineNumber}},e.$listeners))})),1)})),1)],1)},i=[],s=t(9843);const o={mixins:[s.A],data:function(){return{curTab:null}},watch:{curTab:function(){this.$emit("min-max-screen")}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},7462:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"textbox-widget-container"},[n("v-textarea",{class:e.valueClass,style:[e.computedStyle,e.aging],attrs:{solo:"",dense:"",readonly:"","hide-details":"",height:e.height,value:e._value,"data-test":"valueText"},on:{contextmenu:e.showContextMenu}}),e._v(" "),n("v-menu",{attrs:{"position-x":e.x,"position-y":e.y,absolute:"","offset-y":""},model:{value:e.contextMenuShown,callback:function(n){e.contextMenuShown=n},expression:"contextMenuShown"}},[n("v-list",e._l(e.contextMenuOptions,(function(t,l){return n("v-list-item",{key:l,on:{click:function(e){return e.stopPropagation(),t.action.apply(null,arguments)}}},[n("v-list-item-title",[e._v(e._s(t.title))])],1)})),1)],1),e._v(" "),n("details-dialog",{attrs:{"target-name":e.parameters[0],"packet-name":e.parameters[1],"item-name":e.parameters[2]},model:{value:e.viewDetails,callback:function(n){e.viewDetails=n},expression:"viewDetails"}})],1)},i=[],s=t(2967),o=t(3720);t(9471);const a={components:{DetailsDialog:o.A},data:function(){return{width:200,height:200}},mixins:[s.A],computed:{aging(){return{"--aging":this.grayLevel}}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height)},methods:{getType:function(){var e="CONVERTED";return this.parameters[5]&&(e=this.parameters[5]),e}}},r=a;t(6616);var c=t(2401),u=(0,c.A)(r,l,i,!1,null,"4cca914c",null);const d=u.exports},7540:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("v-text-field",{style:e.computedStyle,attrs:{solo:"",dense:"","single-line":"","hide-no-data":"","hide-details":""},model:{value:e.value,callback:function(n){e.value=n},expression:"value"}})},i=[],s=t(9729);const o={mixins:[s.A],data(){return{value:null}},created(){this.settings.forEach((e=>{"NAMED_WIDGET"===e[0]&&e[2].setNamedWidget(e[1],this)})),this.setWidth(this.parameters[0],"ch",12),this.parameters[1]&&(this.value=this.parameters[1])},methods:{text(){return this.value}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},6525:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("span",{staticClass:"text-h5 text-center pa-1 mt-1 label",style:e.computedStyle},[e._v("\n "+e._s(e.labelText)+"\n")])},i=[],s=(t(7107),t(9729));const o={mixins:[s.A],computed:{labelText(){return this.parameters[0]}},created(){if(this.parameters.length<1)throw new Error("Not enough parameters for TITLE.")}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},2932:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{staticClass:"value-widget-container",style:[e.computedStyle,e.aging]},[n("v-tooltip",{attrs:{bottom:""},scopedSlots:e._u([{key:"activator",fn:function({on:t,attrs:l}){return[n("v-text-field",e._g(e._b({class:e.valueClass,attrs:{solo:"",dense:"",readonly:"","single-line":"","hide-no-data":"","hide-details":"",value:e._value,"prepend-inner-icon":e.astroIcon,"data-test":"value"},on:{contextmenu:e.showContextMenu}},"v-text-field",l,!1),t))]}}])},[e._v(" "),n("span",[e._v(e._s(e.fullName))])]),e._v(" "),n("v-menu",{staticStyle:{"z-index":"10"},attrs:{"position-x":e.x,"position-y":e.y,absolute:"","offset-y":""},model:{value:e.contextMenuShown,callback:function(n){e.contextMenuShown=n},expression:"contextMenuShown"}},[n("v-list",e._l(e.contextMenuOptions,(function(t,l){return n("v-list-item",{key:l,on:{click:function(e){return e.stopPropagation(),t.action.apply(null,arguments)}}},[n("v-list-item-title",[e._v(e._s(t.title))])],1)})),1)],1),e._v(" "),n("details-dialog",{attrs:{"target-name":e.parameters[0],"packet-name":e.parameters[1],"item-name":e.parameters[2]},model:{value:e.viewDetails,callback:function(n){e.viewDetails=n},expression:"viewDetails"}})],1)},i=[],s=t(2967),o=t(3720);const a=4,r={components:{DetailsDialog:o.A},mixins:[s.A],data:function(){return{width:12+a}},computed:{fullName(){return this.parameters[0]+" "+this.parameters[1]+" "+this.parameters[2]},aging(){return{"--aging":this.grayLevel}}},created(){this.verifyNumParams("VALUE",3,5,"VALUE <TARGET> <PACKET> <ITEM> <TYPE> <WIDTH>"),this.setWidth(parseInt(this.parameters[4])+a,"ch",this.width)}},c=r;t(8299);var u=t(2401),d=(0,u.A)(c,l,i,!1,null,"21febbc3",null);const m=d.exports},3660:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("value-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":0}}),e._v(" "),n("limitsbar-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(2932),o=t(2835),a=t(9729);const r={mixins:[a.A],components:{ValueWidget:s["default"],LimitsbarWidget:o["default"]}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},4428:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",style:e.computedStyle},[n("limitscolumn-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":1}}),e._v(" "),n("value-widget",{attrs:{parameters:e.parameters,settings:[...e.settings],"widget-index":0}})],1)},i=[],s=t(2932),o=t(9178),a=t(9729);const r={mixins:[a.A],components:{ValueWidget:s["default"],LimitscolumnWidget:o["default"]}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},1616:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>m});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-row",style:e.computedStyle},[n("value-widget",{attrs:{parameters:e.valueParameters,settings:[...e.settings],"widget-index":0}}),e._v(" "),n("rangebar-widget",{attrs:{parameters:e.rangeBarParameters,settings:[...e.settings],"widget-index":1}})],1)},i=[],s=t(2932),o=t(5736),a=t(9729);const r={mixins:[a.A],components:{ValueWidget:s["default"],RangebarWidget:o["default"]},computed:{valueParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[5],this.parameters[6]]},rangeBarParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[3],this.parameters[4],this.parameters[5],this.parameters[7],this.parameters[8]]}}},c=r;var u=t(2401),d=(0,u.A)(c,l,i,!1,null,null,null);const m=d.exports},1629:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var l=function(){var e=this,n=e._self._c;return n("div",{ref:"container",staticClass:"d-flex flex-column",style:e.computedStyle},e._l(e.widgets,(function(t,l){return n(t.type,e._g({key:l,tag:"component",attrs:{target:t.target,parameters:t.parameters,settings:t.settings,widgets:t.widgets,name:t.name,line:t.line,lineNumber:t.lineNumber}},e.$listeners))})),1)},i=[],s=(t(9375),t(9843));const o={mixins:[s.A],created:function(){if(this.parameters[0]){let e=this.parameters[0];this.widgets.forEach((n=>{const t=n.settings.find((e=>"MARGIN"===e[0]||"RAW"===e[0]&&e[1].toUpperCase().includes("MARGIN")));void 0===t&&n.settings.push(["MARGIN",e])}))}}},a=o;var r=t(2401),c=(0,r.A)(a,l,i,!1,null,null,null);const u=c.exports},5757:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>d});var l=function(){var e=this,n=e._self._c;return n("div",[n("v-banner",{staticClass:"boxbanner",style:e.computedStyle,attrs:{"single-line":""}},[e._v(e._s(e.parameters[0]))]),e._v(" "),n("vertical-widget",e._g({attrs:{parameters:e.parameters.slice(1),settings:e.settings,widgets:e.widgets}},e.$listeners))],1)},i=[],s=t(1629),o=t(9843);const a={mixins:[o.A],components:{VerticalWidget:s["default"]}},r=a;t(1241);var c=t(2401),u=(0,c.A)(r,l,i,!1,null,"e0b00b10",null);const d=u.exports},1966:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".title[data-v-b7ae078e]{font-size:1.125rem;font-weight:700;padding-bottom:5px}",""]);const r=a},7004:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".v-card__subtitle[data-v-3ca9666e]{padding:0;padding-bottom:10px}.text[data-v-3ca9666e]{font-size:1rem;white-space:pre-line}",""]);const r=a},2286:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,"#sr-controls[data-v-2925bee8]{padding:0}.editorbox[data-v-2925bee8]{height:40vh}.editor[data-v-2925bee8]{height:100%;width:100%;font-size:16px}.editor[data-v-2925bee8],hr[data-v-2925bee8]{position:relative}hr[data-v-2925bee8]{pointer-events:none;top:7px;background-color:grey;height:3px;width:5%;margin:auto}.script-state[data-v-2925bee8]{background-color:var(--color-background-base-default)}.script-state[data-v-2925bee8] input{text-transform:capitalize}",""]);const r=a},3374:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".runningMarker{position:absolute;background:rgba(0,255,0,.5);z-index:20}.waitingMarker{position:absolute;background:#009b00;z-index:20}.breakpointMarker{position:absolute;border-style:solid;border-color:red;background:rgba(0,255,0,.5);z-index:20}.pausedMarker{background:rgba(0,140,255,.5)}.errorMarker,.pausedMarker{position:absolute;z-index:20}.errorMarker{background:rgba(255,0,119,.5)}.fatalMarker{position:absolute;background:rgba(255,0,0,.5);z-index:20}.saving{z-index:20;opacity:.35}.ace_gutter-cell.ace_breakpoint{border-radius:20px 0 0 20px;box-shadow:inset 0 0 1px 1px red}.grid{position:relative}.item{position:absolute;display:block;margin:5px;z-index:1}.item-content{position:relative;cursor:pointer;border-radius:6px}",""]);const r=a},6857:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".label[data-v-18fc7350]{font-weight:700;text-transform:capitalize}[data-v-18fc7350] .v-input--selection-controls{padding:0;margin:0}",""]);const r=a},7589:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".ace_autocomplete{width:60vw!important}",""]);const r=a},1365:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".editor[data-v-2f59da98]{height:50vh;width:75vw;position:relative;font-size:16px}.v-textarea[data-v-2f59da98] textarea{padding:5px}",""]);const r=a},6030:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".v-window-item{background-color:var(--color-background-surface-default)}.uplot.side-legend{display:flex;width:auto}.uplot.side-legend .u-wrap{flex:none}.uplot.side-legend .u-legend{text-align:left;margin-left:0;width:220px}.uplot.side-legend .u-legend,.uplot.side-legend .u-legend td,.uplot.side-legend .u-legend th,.uplot.side-legend .u-legend tr{display:revert}.uplot.left-legend .u-legend{order:-1}.uplot.top-legend{display:flex;flex-direction:column}.uplot.top-legend .u-legend{order:-1}",""]);const r=a},1790:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,"#chart[data-v-0369d26c] .u-select{background-color:hsla(0,0%,100%,.07)}",""]);const r=a},9811:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".edit-box{color:hsla(0,0%,100%,.7);background-color:var(--color-background-surface-default);padding:10px;margin-top:10px}.v-small-dialog__content{background-color:var(--color-background-surface-selected);padding:5px 5px}",""]);const r=a},6558:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".errors[data-v-043a06b8]{padding-top:0;margin-top:0}.v-textarea[data-v-043a06b8] textarea{padding:5px}",""]);const r=a},4203:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".app-title[data-v-0af23388]{font-size:2rem}.menu-button[data-v-0af23388]{border-color:var(--color-border-interactive-muted)!important;background-color:var(--color-background-base-default)!important;padding-right:3px!important}span.v-btn__content span[data-v-0af23388]{padding-right:5px}.list-action[data-v-0af23388] label{color:#fff;padding-left:10px}.myicon[data-v-0af23388]{background-color:var(--color-background-surface-selected);border:1px solid currentColor;border-radius:3px;height:36px!important;width:36px!important}.v-list[data-v-0af23388] .v-label{margin-left:5px}.v-list-item__icon[data-v-0af23388]{margin-right:15px!important}.v-list-item__title[data-v-0af23388]{color:#fff}",""]);const r=a},8963:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".array-widget-container[data-v-4c83f4c3] .v-input__slot{background:rgba(var(--aging),var(--aging),var(--aging),1)!important}.value[data-v-4c83f4c3] div{min-height:24px!important;display:flex!important;align-items:center!important}.openc3-green[data-v-4c83f4c3] input{color:#00c800}.openc3-yellow[data-v-4c83f4c3] input{color:#ffdc00}.openc3-red[data-v-4c83f4c3] input{color:#ff2d2d}.openc3-blue[data-v-4c83f4c3] input{color:#09f}.openc3-purple[data-v-4c83f4c3] input{color:#c800c8}.openc3-black[data-v-4c83f4c3] input{color:#000}.openc3-white[data-v-4c83f4c3] input{color:#fff}",""]);const r=a},4088:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".block-widget-container[data-v-42f141dc] .v-input__slot{background:rgba(var(--aging),var(--aging),var(--aging),1)!important}.v-textarea[data-v-42f141dc] textarea{font-family:Courier New,Courier,monospace}.value[data-v-42f141dc] div{min-height:24px!important;display:flex!important;align-items:center!important}.openc3-green[data-v-42f141dc] input{color:#00c800}.openc3-yellow[data-v-42f141dc] input{color:#ffdc00}.openc3-red[data-v-42f141dc] input{color:#ff2d2d}.openc3-blue[data-v-42f141dc] input{color:#09f}.openc3-purple[data-v-42f141dc] input{color:#c800c8}.openc3-black[data-v-42f141dc] input{color:#000}.openc3-white[data-v-42f141dc] input{color:#fff}",""]);const r=a},6403:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".boxbanner[data-v-7935dee2] .v-banner__wrapper{padding:4px!important}.boxbanner[data-v-7935dee2] .v-banner__text{font-weight:600;font-size:16px}",""]);const r=a},2498:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".label[data-v-19db816e]{font-family:var(--font-family);font-size:var(--font-size);font-weight:var(--font-weight);font-style:var(--font-style)}",""]);const r=a},9774:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".led[data-v-62e9f342]{height:var(--height);width:var(--width);background-color:var(--color);border-radius:50%}",""]);const r=a},9058:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".led[data-v-47f390ae]{height:var(--height);width:var(--width);background-color:var(--color);border-radius:50%}",""]);const r=a},9824:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".textbox-widget-container[data-v-4cca914c] .v-input__slot{background:rgba(var(--aging),var(--aging),var(--aging),1)!important}.value[data-v-4cca914c] div{min-height:24px!important;display:flex!important;align-items:center!important}.openc3-green[data-v-4cca914c] input{color:#00c800}.openc3-yellow[data-v-4cca914c] input{color:#ffdc00}.openc3-red[data-v-4cca914c] input{color:#ff2d2d}.openc3-blue[data-v-4cca914c] input{color:#09f}.openc3-purple[data-v-4cca914c] input{color:#c800c8}.openc3-black[data-v-4cca914c] input{color:#000}.openc3-white[data-v-4cca914c] input{color:#fff}",""]);const r=a},3425:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".boxbanner[data-v-e0b00b10] .v-banner__wrapper{padding:4px!important}.boxbanner[data-v-e0b00b10] .v-banner__text{font-weight:600;font-size:16px}",""]);const r=a},8379:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".repeat[data-v-c74ea3cc]{padding-top:10px;text-align:right}.v-stepper--vertical .v-stepper__content[data-v-c74ea3cc]{width:auto;margin:0 0 0 36px;padding:0}",""]);const r=a},5501:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".v-stepper--vertical .v-stepper__content[data-v-da0170c4]{width:auto;margin:0 0 0 36px;padding:0}",""]);const r=a},8641:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".v-stepper--vertical .v-stepper__content[data-v-9d9c27a0]{width:auto;margin:0 0 0 36px;padding:0}",""]);const r=a},2485:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".question[data-v-1585368a]{font-size:1rem;white-space:pre-line}",""]);const r=a},6980:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,"#tr-container[data-v-2f0ccf94]{padding-top:0;padding-bottom:15px;padding-left:0;padding-right:0}",""]);const r=a},3224:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,"svg[data-v-17947dc7]{background-color:#fff}",""]);const r=a},9784:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".limitsbar[data-v-4b85d27c]{cursor:default;display:flex;justify-content:center;align-items:center;padding:5px;padding-top:15px;width:var(--width)}.limitsbar__container[data-v-4b85d27c]{position:relative;flex:1;height:var(--container-height);border:1px solid #000;background-color:#fff}.limitsbar__redlow[data-v-4b85d27c]{left:0;width:var(--redlow-width)}.limitsbar__redhigh[data-v-4b85d27c],.limitsbar__redlow[data-v-4b85d27c]{position:absolute;top:-1px;height:var(--container-height);background-color:#ff2d2d}.limitsbar__redhigh[data-v-4b85d27c]{right:0;width:var(--redhigh-width)}.limitsbar__yellowlow[data-v-4b85d27c]{left:var(--redlow-width);width:var(--yellowlow-width)}.limitsbar__yellowhigh[data-v-4b85d27c],.limitsbar__yellowlow[data-v-4b85d27c]{position:absolute;top:-1px;height:var(--container-height);background-color:#ffdc00}.limitsbar__yellowhigh[data-v-4b85d27c]{right:var(--redhigh-width);width:var(--yellowhigh-width)}.limitsbar__greenlow[data-v-4b85d27c]{left:calc(var(--redlow-width) + var(--yellowlow-width));width:var(--greenlow-width)}.limitsbar__greenhigh[data-v-4b85d27c],.limitsbar__greenlow[data-v-4b85d27c]{position:absolute;top:-1px;height:var(--container-height);background-color:#00c800}.limitsbar__greenhigh[data-v-4b85d27c]{right:calc(var(--redhigh-width) + var(--yellowhigh-width));width:var(--greenhigh-width)}.limitsbar__blue[data-v-4b85d27c]{top:-1px;left:calc(var(--redlow-width) + var(--yellowlow-width) + var(--greenlow-width));width:var(--blue-width);background-color:#09f}.limitsbar__blue[data-v-4b85d27c],.limitsbar__line[data-v-4b85d27c]{position:absolute;height:var(--container-height)}.limitsbar__line[data-v-4b85d27c]{left:var(--position);width:1px;background-color:gray}.limitsbar__arrow[data-v-4b85d27c]{position:absolute;top:-5px;left:var(--position);width:0;height:0;transform:translateX(-5px);border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid gray}",""]);const r=a},3666:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".limitsbar[data-v-5a19801c]{cursor:default;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:5px;height:var(--height)}.limitsbar__container[data-v-5a19801c]{position:relative;flex:1 1 100%;width:var(--container-width);border:1px solid #000;background-color:#fff}.limitsbar__redlow[data-v-5a19801c]{bottom:0;height:var(--redlow-height)}.limitsbar__redhigh[data-v-5a19801c],.limitsbar__redlow[data-v-5a19801c]{position:absolute;width:var(--container-width);background-color:#ff2d2d}.limitsbar__redhigh[data-v-5a19801c]{top:0;height:var(--redhigh-height)}.limitsbar__yellowlow[data-v-5a19801c]{bottom:var(--redlow-height);height:var(--yellowlow-height)}.limitsbar__yellowhigh[data-v-5a19801c],.limitsbar__yellowlow[data-v-5a19801c]{position:absolute;width:var(--container-width);background-color:#ffdc00}.limitsbar__yellowhigh[data-v-5a19801c]{top:var(--redhigh-height);height:var(--yellowhigh-height)}.limitsbar__greenlow[data-v-5a19801c]{bottom:calc(var(--redlow-height) + var(--yellowlow-height));height:var(--greenlow-height)}.limitsbar__greenhigh[data-v-5a19801c],.limitsbar__greenlow[data-v-5a19801c]{position:absolute;width:var(--container-width);background-color:#00c800}.limitsbar__greenhigh[data-v-5a19801c]{top:calc(var(--redhigh-height) + var(--yellowhigh-height));height:var(--greenhigh-height)}.limitsbar__blue[data-v-5a19801c]{bottom:calc(var(--redlow-height) + var(--yellowlow-height) + var(--greenlow-height));height:var(--blue-height);background-color:#09f}.limitsbar__blue[data-v-5a19801c],.limitsbar__line[data-v-5a19801c]{position:absolute;width:var(--container-width)}.limitsbar__line[data-v-5a19801c]{bottom:var(--position);height:1px;background-color:gray}.limitsbar__arrow[data-v-5a19801c]{position:absolute;bottom:var(--position);left:var(--container-width);width:0;height:0;transform:translateY(5px);border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid gray}",""]);const r=a},3160:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".progress[data-v-e34552b0]{margin:5px;flex:auto!important}",""]);const r=a},2574:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".rangebar[data-v-f50bb458]{cursor:default;display:flex;justify-content:center;align-items:center;padding:5px;padding-top:15px;width:var(--width)}.rangebar__container[data-v-f50bb458]{position:relative;flex:1;height:var(--container-height);border:1px solid #000;background-color:#fff}.rangebar__line[data-v-f50bb458]{width:1px;height:var(--container-height);background-color:gray}.rangebar__arrow[data-v-f50bb458],.rangebar__line[data-v-f50bb458]{position:absolute;left:var(--position)}.rangebar__arrow[data-v-f50bb458]{top:-5px;width:0;height:0;transform:translateX(-5px);border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid gray}",""]);const r=a},1923:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>r});var l=t(6758),i=t.n(l),s=t(935),o=t.n(s),a=o()(i());a.push([e.id,".value-widget-container[data-v-21febbc3]{min-height:34px}.value-widget-container[data-v-21febbc3] .v-input__slot{background:rgba(var(--aging),var(--aging),var(--aging),1)!important}.value-widget-container[data-v-21febbc3] input{text-align:var(--text-align)!important}[data-v-21febbc3] .v-input__slot:has(.v-icon){padding-left:2px!important}.value-widget-container[data-v-21febbc3] .v-icon{margin-top:9px}.value[data-v-21febbc3] div{min-height:24px!important;display:flex!important;align-items:center!important}.openc3-green[data-v-21febbc3] input{color:#00c800}.openc3-yellow[data-v-21febbc3] input{color:#ffdc00}.openc3-red[data-v-21febbc3] input{color:#ff2d2d}.openc3-blue[data-v-21febbc3] input{color:#09f}.openc3-purple[data-v-21febbc3] input{color:#c800c8}.openc3-black[data-v-21febbc3] input{color:#000}.openc3-white[data-v-21febbc3] input{color:#fff}",""]);const r=a},47:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.d(__webpack_exports__,{A:()=>__WEBPACK_DEFAULT_EXPORT__});var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(9375),core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__),core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(4293),core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_1__),_services_openc3_api__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(4364),_services_api__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(2795),_Widget__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(9729);const __WEBPACK_DEFAULT_EXPORT__={mixins:[_Widget__WEBPACK_IMPORTED_MODULE_4__.A],data(){return{api:null,screen:null,displaySendHazardous:!1,lastCmd:""}},computed:{buttonText(){return this.parameters[0]},eval(){return this.parameters[1]}},created(){this.api=new _services_openc3_api__WEBPACK_IMPORTED_MODULE_2__.x},methods:{async onClick(){const lines=this.eval.split(";;"),self=this,screen=this.screen,api=this.api,run_script=this.runScript,runScript=this.runScript;for(let i=0;i<lines.length;i++){const result=eval(lines[i].trim());if(result instanceof Promise)try{await result}catch(err){if(err.message.includes("is Hazardous")){this.lastCmd=err.message.split("\n").pop(),this.displaySendHazardous=!0;while(this.displaySendHazardous)await new Promise((e=>setTimeout(e,500)))}}}},sendHazardousCmd(){this.lastCmd=this.lastCmd.replace("cmd(","this.api.cmd_no_hazardous_check("),eval(this.lastCmd),this.displaySendHazardous=!1},cancelHazardousCmd(){this.displaySendHazardous=!1},runScript(e,n=!0,t={}){let l=[];for(const i in t)l.push({key:i,value:t[i],readonly:!1});_services_api__WEBPACK_IMPORTED_MODULE_3__.A.post(`/script-api/scripts/${e}/run`,{data:{environment:l}}).then((e=>{n&&window.open(`/tools/scriptrunner/${e.data}`,"_blank")}))}}}},7382:(e,n,t)=>{var l=t(1966);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("0bc554b8",l,!0,{sourceMap:!1,shadowMode:!1})},9876:(e,n,t)=>{var l=t(7004);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("4f6bcdbe",l,!0,{sourceMap:!1,shadowMode:!1})},4230:(e,n,t)=>{var l=t(2286);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("1b38cc44",l,!0,{sourceMap:!1,shadowMode:!1})},7750:(e,n,t)=>{var l=t(3374);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("78ee0bb0",l,!0,{sourceMap:!1,shadowMode:!1})},4849:(e,n,t)=>{var l=t(6857);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("7adc6a5a",l,!0,{sourceMap:!1,shadowMode:!1})},2605:(e,n,t)=>{var l=t(7589);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("28ee4c72",l,!0,{sourceMap:!1,shadowMode:!1})},7613:(e,n,t)=>{var l=t(1365);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("4d90f07e",l,!0,{sourceMap:!1,shadowMode:!1})},3046:(e,n,t)=>{var l=t(6030);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("7f1d7b32",l,!0,{sourceMap:!1,shadowMode:!1})},6470:(e,n,t)=>{var l=t(1790);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("631d6b4a",l,!0,{sourceMap:!1,shadowMode:!1})},9883:(e,n,t)=>{var l=t(9811);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("1b7c2aaa",l,!0,{sourceMap:!1,shadowMode:!1})},1958:(e,n,t)=>{var l=t(6558);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("4f5a9a92",l,!0,{sourceMap:!1,shadowMode:!1})},5699:(e,n,t)=>{var l=t(4203);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("7f447726",l,!0,{sourceMap:!1,shadowMode:!1})},6251:(e,n,t)=>{var l=t(8963);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("0aeba444",l,!0,{sourceMap:!1,shadowMode:!1})},2272:(e,n,t)=>{var l=t(4088);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("2ed149ef",l,!0,{sourceMap:!1,shadowMode:!1})},6395:(e,n,t)=>{var l=t(6403);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("0e86fc54",l,!0,{sourceMap:!1,shadowMode:!1})},6074:(e,n,t)=>{var l=t(2498);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("24c3e658",l,!0,{sourceMap:!1,shadowMode:!1})},5318:(e,n,t)=>{var l=t(9774);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("7883dd16",l,!0,{sourceMap:!1,shadowMode:!1})},8490:(e,n,t)=>{var l=t(9058);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("8aaadfb6",l,!0,{sourceMap:!1,shadowMode:!1})},6616:(e,n,t)=>{var l=t(9824);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("32eeeee2",l,!0,{sourceMap:!1,shadowMode:!1})},1241:(e,n,t)=>{var l=t(3425);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("6529934c",l,!0,{sourceMap:!1,shadowMode:!1})},6528:(e,n,t)=>{var l=t(8379);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("2923d7a8",l,!0,{sourceMap:!1,shadowMode:!1})},5813:(e,n,t)=>{var l=t(5501);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("43e8ef79",l,!0,{sourceMap:!1,shadowMode:!1})},8361:(e,n,t)=>{var l=t(8641);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("f3d75b4c",l,!0,{sourceMap:!1,shadowMode:!1})},1670:(e,n,t)=>{var l=t(2485);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("00fa3096",l,!0,{sourceMap:!1,shadowMode:!1})},2447:(e,n,t)=>{var l=t(6980);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("6bb3054c",l,!0,{sourceMap:!1,shadowMode:!1})},1497:(e,n,t)=>{var l=t(3224);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("0138eb9a",l,!0,{sourceMap:!1,shadowMode:!1})},9851:(e,n,t)=>{var l=t(9784);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("3ee48f98",l,!0,{sourceMap:!1,shadowMode:!1})},1723:(e,n,t)=>{var l=t(3666);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("4dd7fda3",l,!0,{sourceMap:!1,shadowMode:!1})},3519:(e,n,t)=>{var l=t(3160);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("2af1c7e9",l,!0,{sourceMap:!1,shadowMode:!1})},519:(e,n,t)=>{var l=t(2574);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("df7a598a",l,!0,{sourceMap:!1,shadowMode:!1})},8299:(e,n,t)=>{var l=t(1923);l.__esModule&&(l=l.default),"string"===typeof l&&(l=[[e.id,l,""]]),l.locals&&(e.exports=l.locals);var i=t(4825).A;i("dbafcec6",l,!0,{sourceMap:!1,shadowMode:!1})}}]);
2
- //# sourceMappingURL=931.js.map