(function(t){function e(e){for(var s,n,r=e[0],l=e[1],c=e[2],u=0,p=[];uName',sortField:"name",titleClass:"text-center aligned",visible:!0,dataClass:"center aligned",width:"20%"},{name:"nodeid",title:'nodeid',titleClass:"text-center aligned",sortField:"nodeid",visible:!0,width:"20%"},{name:"ip",title:'IP',titleClass:"text-center aligned",sortField:"swarmlabname",visible:!0,width:"13%"},{name:"role",title:'Role',titleClass:"text-center aligned",sortField:"role",visible:!0,width:"15%",formatter(t){const e=/^ondemand_playground/.test(t);if(e){var a='

Playground

';return a}a='

Lab

';return a}},{name:"zones",title:'Zones',sortField:"zones",titleClass:"text-center aligned",visible:!0,width:"20%"},{name:"status",title:'Status',titleClass:"text-center aligned",sortField:"status",visible:!0,width:"5%"},{name:"__slot:actions",title:"Actions",titleClass:"text-center aligned",dataClass:"text-center aligned",width:"10%"},{name:"_id",title:'mongo',visible:!1}],apiurl:d.swarmlab_url_80+"/getswarmlabhybrid",css:$["a"],perpage:9,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"hybrid"}}},mounted(){},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){await f.dispatch("pipelineLLO/swarmlabhybridjoin",{token:this.token,action:"join"});if("edit"==t)this.nodeadmin=!0,this.nodeadminupdate=!0,this.nodeid=e.nodeid,this.nodeip=e.ip,this.nodename=e.name,this.noderole=e.role,this.nodezones=e.zones,this.nodedesc=e.description;else if("update"==t){if(await this.$refs.provider.validate().then(t=>{t.valid?this.valid=!0:this.valid=!1}),this.valid){await f.dispatch("pipelineLLO/swarmlabhybridadd",{token:this.token,action:"add",nodeid:this.nodeid,nodeip:this.nodeip,nodename:this.nodename,noderole:this.noderole,nodezones:this.nodezones,nodedesc:this.nodedesc});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}}else if("rm"==t)this.rowdata=e,this.$swal({type:"info",html:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}).then(t=>{this.rmAndClose(t)});else if("add"==t)this.nodeadmin=!0,this.nodeadminupdate=!1;else if("addserver"==t){if(await this.$refs.provider.validate().then(t=>{t.valid?this.valid=!0:this.valid=!1}),this.valid){this.nodeadmin=!1,this.nodeadminupdate=!1;await f.dispatch("pipelineLLO/swarmlabhybridadd",{token:this.token,action:"add",nodeid:this.nodeid,nodeip:this.nodeip,nodename:this.nodename,noderole:this.noderole,nodezones:this.nodezones,nodedesc:this.nodedesc});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}}else"cancel"==t&&(this.nodeadmin=!1,this.nodeadminupdate=!1)},async rmAndClose(t){await f.dispatch("pipelineLLO/getswarmlabhybridinfo",{token:this.token,nodezones:this.rowdata.zones});if(t.value){await f.dispatch("pipelineLLO/swarmlabhybridrm",{token:this.token,action:"rm",nodeid:this.rowdata.nodeid,nodeip:this.rowdata.ip,nodename:this.rowdata.name,noderole:this.rowdata.role,nodezones:this.rowdata.zones,nodedesc:this.rowdata.description});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},async addAndClose(t){},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},E=B,T=(a("55b7"),Object(O["a"])(E,g,y,!1,null,null,null)),P=T.exports,F=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-header",staticStyle:{"max-height":"100%"},attrs:{title:"Hybrid API Request"}},[a("b-row",[a("b-col",{attrs:{cols:"12"}},[a("table",{staticClass:"table table-bordered"},[a("tbody",[a("tr",[a("th",{staticClass:"text-center",attrs:{scope:"row"}},[t._v(" Project ")]),a("td",[a("div",{staticClass:"input-group input-group-sm sm-3"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.swarmlabhybridapi.project,expression:"swarmlabhybridapi.project"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Project Name (Alphanumeric characters, dashes and underscores, NOT spaces)"},domProps:{value:t.swarmlabhybridapi.project},on:{input:function(e){e.target.composing||t.$set(t.swarmlabhybridapi,"project",e.target.value)}}}),a("div",{staticClass:"input-group-append"},[a("button",{staticClass:"ti-info btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showinfo("Project")}}})])])])]),a("tr",[a("th",{staticClass:"text-center",attrs:{scope:"row"}},[t._v(" Category ")]),a("td",[a("input",{directives:[{name:"model",rawName:"v-model",value:t.swarmlabhybridapi.faculty,expression:"swarmlabhybridapi.faculty"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Project Category"},domProps:{value:t.swarmlabhybridapi.faculty},on:{input:function(e){e.target.composing||t.$set(t.swarmlabhybridapi,"faculty",e.target.value)}}})])]),a("tr",[a("th",{staticClass:"text-center",attrs:{scope:"row"}},[t._v(" Description ")]),a("td",[a("input",{directives:[{name:"model",rawName:"v-model",value:t.swarmlabhybridapi.desc,expression:"swarmlabhybridapi.desc"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"What is the purpose of the project?"},domProps:{value:t.swarmlabhybridapi.desc},on:{input:function(e){e.target.composing||t.$set(t.swarmlabhybridapi,"desc",e.target.value)}}})])])])])])],1),a("b-row",[a("b-col",{attrs:{cols:"12"}},[a("div",{staticClass:"input-group-append"},[a("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:t.getApi}},[t._v(" Request hybrid API ")])])])],1)],1)},V=[],G={components:{},props:{},data(){return{swarmlabhybridapi:{labservices:"services"}}},mounted(){},beforeDestroy(){},computed:{},methods:{showinfo(t){if("Project"==t){var e='We use that "Name" to retrieve the corresponding key values
The name assigned here will be needed to connect you to Swarmlab Server.
The ProjectName can only contain alphanumeric characters, dashes or underscores.';this.$swal({type:"info",html:e,showCloseButton:!1,showLoaderOnConfirm:!1,allowOutsideClick:!1,showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"Ok!"})}},async getApi(){console.log("getApi");var t=await f.dispatch("pipelineLLO/swarmlabhybridapi",{lab:this.swarmlabhybridapi});if(console.log(JSON.stringify(t)),"ok"==t.data.action){var e="
OK
";this.$swal({type:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,focusCancel:!0})}else{e="
Error
";this.$swal({type:"error",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,focusCancel:!0})}}},actions:{}},M=G,j=(a("546d"),Object(O["a"])(M,F,V,!1,null,null,null)),z=j.exports,Y=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab hybrid-agent config")])])]),s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("br")])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3"},[s("b",[t._v("Node ID")])]),s("div",{staticClass:"col-9"},[s("i",[t._v(t._s(t.CONFIG.nodeid))])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3"},[s("b",[t._v("Swarmlab key")])]),s("div",{staticClass:"col-9"},[s("i",[t._v(t._s(t.CONFIG.workerkey))])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3"},[s("b",[t._v("Swarmlab PublicKey")])]),s("div",{staticClass:"col-9"},[s("i",[t._v(t._s(t.CONFIG.swarmlab_public_wgkey))])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3"},[s("b",[t._v("Swarmlab ip")])]),s("div",{staticClass:"col-3"},[s("i",[t._v(t._s(t.CONFIG.server_ip))])]),s("div",{staticClass:"col-2"},[s("b",[t._v("Local IP")])]),s("div",{staticClass:"col-4"},[s("i",[t._v(t._s(t.CONFIG.wg_ip))])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3"},[s("b",[t._v("Private key")])]),s("div",{staticClass:"col-3"},[s("i",[t._v(t._s(t.CONFIG.privatekey))])]),s("div",{staticClass:"col-2"},[s("b",[t._v("Public key")])]),s("div",{staticClass:"col-4"},[s("i",[t._v(t._s(t.CONFIG.publickey))])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-12"},[s("br")])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-4"},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"ti-settings btn btn-outline-info",attrs:{round:"",type:"button",title:"Load config"},on:{click:function(e){return t.onAction("load")}}},[t._v(" Load Settings ")])])])]),s("div",{staticClass:"col-1"},[s("div",{staticClass:"input-group input-group-sm sm-3"})]),t._v(" "),s("div",{staticClass:"col-7 text-right"},[s("div",{staticClass:"input-group input-group-sm sm-3 text-right"},[s("div",{staticClass:"input-group-append text-right"},[s("button",{staticClass:"ti-link btn btn-outline-success",attrs:{round:"",type:"button",title:"Connect"},on:{click:function(e){return t.onAction("connect")}}},[t._v(" Connect ")]),s("button",{staticClass:"ti-unlink btn btn-outline-warning",attrs:{round:"",type:"button",title:"Connect"},on:{click:function(e){return t.onAction("disconnect")}}},[t._v(" Disconnect ")]),t.isconnect?s("button",{staticClass:"ti-link btn btn-outline-success",attrs:{round:"",type:"button",title:"Connect"}},[t._v(" Status online ")]):s("button",{staticClass:"ti-unlink btn btn-outline-warning",attrs:{round:"",type:"button",title:"Connect"}},[t._v(" Status offline ")])])])])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-12"},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-prepend"},[t.ishybridlab?s("button",{staticClass:"ti-key btn btn-outline-info",attrs:{round:"",type:"button",title:"Api keys"},on:{click:function(e){return t.onAction("apikeyopen")}}},[t._v(" Enable the Swarmlab hybrid API ")]):s("button",{staticClass:"ti-layout-media-overlay-alt btn btn-outline-warning",attrs:{round:"",type:"button",title:"Api keys"},on:{click:function(e){return t.onAction("apikeyclose")}}},[t._v(" Enable the Swarmlab hybrid API ")]),s("button",{staticClass:"ti-info btn btn-outline-success",attrs:{round:"",type:"button",title:"HowTo"},on:{click:function(e){return t.onAction("register")}}})])])])])])],1)},U=[],q={components:{card:I},props:{},data(){return{isconnect:!1,ishybridlab:!0,isstatus:!1,CONFIG:{status:"",privatekey:"",publickey:"",server_ip:"",nodeid:"",workerkey:"",allowed_ips:"",swarmlab_public_wgkey:"",wg_ip:"",swarm_ip:"",wg_port:""},token:""}},mounted(){this.$root.$on("hybrid_connect_server_view",t=>{this.CONFIG.status=t.status,this.CONFIG.workerkey=t.workerkey,this.CONFIG.swarmlab_public_wgkey=t.swarmlab_public_wgkey,this.CONFIG.server_ip=t.server_ip,this.CONFIG.allowed_ips=t.allowed_ips,this.CONFIG.wg_port=t.wg_port,this.CONFIG.wg_ip=t.wg_ip,this.CONFIG.swarm_ip=t.swarm_ip,this.CONFIG.privatekey=t.privatekey,this.CONFIG.publickey=t.publickey,"on"==this.CONFIG.status?this.isstatus=!0:"off"==this.CONFIG.status&&(this.isstatus=!1)}),this.$root.$on("hybrid_server_status",t=>{this.serverstatus()})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_connect_server_view"),this.$root.$off("hybrid_server_status")},computed:{},methods:{async serverstatus(t){var e=f.getters["pipelineLLO/getstatus"];"active"==e.data.swarmlab&&"Online"==e.data.hybrid?(this.isstatus=!0,this.isconnect=!0,this.CONFIG.nodeid=e.data.swarmlabid):(this.isstatus=!1,this.isconnect=!1,this.CONFIG.nodeid="null")},async onAction(t){if("load"==t){var e=await f.dispatch("pipelineLLO/swarmlabhybridconfig",{token:this.token});this.CONFIG.status=e.data.data.status,this.CONFIG.workerkey=e.data.data.workerkey,this.CONFIG.swarmlab_public_wgkey=e.data.data.wg_public,this.CONFIG.server_ip=e.data.data.endpoint,this.CONFIG.allowed_ips=e.data.data.allowed_ip,this.CONFIG.wg_port=e.data.data.wg_port,this.CONFIG.wg_ip=e.data.data.wg_ip,this.CONFIG.swarm_ip=e.data.data.swarm_ip,this.CONFIG.privatekey=e.data.data.privatekey,this.CONFIG.publickey=e.data.data.publickey,"on"==this.CONFIG.status?this.isstatus=!0:"off"==this.CONFIG.status&&(this.isstatus=!1),this.onAction("save")}else if("apikeyopen"==t)this.ishybridlab=!1,this.$root.$emit("hybrid_lab_keyview","open");else if("apikeyclose"==t)this.ishybridlab=!0,this.$root.$emit("hybrid_lab_keyview","close");else if("connect"==t){e=await f.dispatch("pipelineLLO/get_config",{token:this.token});this.isconnect=!0;var a=e.data.data;if(e.data.error_msg="ok"){var s='sudo /bin/bash ';s+=a.trim(),s+="/hybrid/connect/join.sh "}else s="no exec file";var i='

Swarmlab Connect

You are about to connect with others. Be Careful
Copy-and-run-command

';this.$swal({type:"info",html:i+s,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}else if("save"==t)e=await f.dispatch("pipelineLLO/create_config",{token:this.token,value:this.CONFIG});else if("disconnect"==t){e=await f.dispatch("pipelineLLO/get_config",{token:this.token}),a=e.data.data;if(e.data.error_msg="ok"){s='sudo /bin/bash ';s+=a.trim(),s+="/hybrid/connect/leave.sh "}else s="no exec file";i="

Swarmlab Disconnect

Copy-and-run-command

";this.$swal({type:"info",icon:"info",html:i+s,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}else if("register"==t){s="Before you begin\n
\n Before you start using the Swarmlab Hybrid API, you need a hybrid enabled account and the Swarmlab API enabled. \n
\n To learn more, see Get Started with Hybrid Platform. \n ",i="
Get API Key's

";this.$swal({type:"info",html:i+s,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}}},actions:{}},H=q,K=(a("cd6e"),Object(O["a"])(H,Y,U,!1,null,null,null)),W=K.exports,J={components:{HybridLab:z,ZonesView:P,card:I,MyconnectServer:W},data(){return{loading:!1,ishybridlab:!1,consoleView:"off",productIndex:1}},mounted(){this.$root.$on("hybrid_lab_keyview",t=>{"open"==t?this.ishybridlab=!0:"close"==t&&(this.ishybridlab=!1)})},beforeDestroy(){this.$root.$off("hybrid_lab_keyview")},created(){}},Q=J,Z=Object(O["a"])(Q,v,w,!1,null,null,null),X=Z.exports,tt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-7 order-first "},[a("br"),a("view-network"),a("docker-services")],1),a("div",{staticClass:"col-5 order-last"},[a("br"),a("adhoc-view")],1)])])},et=[],at=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("View and Manage your running Containers")])])]),s("br"),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-prepend"},[t.$socket.disconnected?s("button",{staticClass:"ti-unlink btn btn-outline-danger",attrs:{round:"",type:"button",title:"You are disconnected from Swarmlab-hybrid",disabled:""}}):s("button",{staticClass:"ti-link btn btn-outline-success",attrs:{round:"",type:"button",title:"You are connected swarmlab-hybrid",disabled:""}})]),s("div",{staticClass:"input-group-prepend"}),s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.Names?s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-connect")}}},[t._v(" Connect")]):s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button",disabled:""}},[t._v(" Connect")]),t.hybridshowdata.Names?s("button",{staticClass:"btn btn-outline-danger",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-stop")}}},[t._v(" Stop")]):s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button",disabled:""}},[t._v(" stop")])]),s("div",{staticClass:"input-group-append"},[t.hybridshowdata.Names?s("button",{staticClass:"btn btn-outline-warning",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-logs")}}},[t._v(" Logs")]):s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button",disabled:""}},[t._v(" Logs")])])])]),s("b-container",{attrs:{fluid:""}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" ID ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.ID)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Image ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Image)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Names ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Names)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" RunningFor ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.RunningFor)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Status ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Status)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" CreatedAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.CreatedAt)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t.hybridshowdata.Networks&&0==t.addNetworkMenou?s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.addNetwork(t.hybridshowdata,"on")}}},[t._v(" Networks")]):t._e(),t.hybridshowdata.Networks&&1==t.addNetworkMenou?s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.addNetwork(t.hybridshowdata,"off")}}},[t._v(" Networks")]):t._e()]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Networks)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Ports ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Ports)+" ")])])]),1==t.addNetworkMenou?s("div",{staticClass:"card border-success bg-light mb-3",staticStyle:{"max-width":"100%"}},[s("div",{staticClass:"card-header"}),s("div",{staticClass:"card-body text-info"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("h5",{staticClass:"card-title"},[t._v("Select network")])]),s("div",{staticClass:"col-6 text-info"},[t._v(" Connect a running container to multiple networks ")])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("b-form-select",{attrs:{options:t.localNetworkoptions,multiple:"","select-size":4},model:{value:t.selectedNetworks,callback:function(e){t.selectedNetworks=e},expression:"selectedNetworks"}}),s("div",{staticClass:"mt-3"},[t._v("Selected: "),s("strong",[t._v(t._s(t.selectedNetworks))])])],1),s("div",{staticClass:"col-6 text-info"},[s("img",{staticClass:"border-white img-thumbnail",attrs:{src:a("04d6"),alt:"..."}})])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.updateNetwork(t.hybridshowdata,"update")}}},[t._v(" Update")])])])])]):t._e()],1)},st=[];Object(N["b"])("alpha_num",D["a"]),Object(N["b"])("required",{...D["c"],message:"This field is required"});var it={components:{card:I},props:{},data(){return{addNetworkMenou:!1,localNetworks:[],selectedNetworks:[],localNetworkoptions:[],localNetworkdefault:"",STATUS:{},CONFIG:{status:"",workerkey:"",swarmlab_public_wgkey:"",server_ip:"",allowed_ips:"",wg_port:"",wg_ip:"",swarm_ip:"",privatekey:"",publickey:"",workerkey:"",privatekey:"",publickey:"",server_ip:""},CONFIGallowed_ips:"",swarmlabname:"swarmlab-sec",swarmlabname_port:"",swarmlabname_size:3,swarmlabname_git:"",hybridshowdata:{},issocket:"close",setFilter:{},searchFor:{},resetFilter:{}}},beforeMount(){this.socketopen(),this.socketauthenticate()},mounted(){this.$root.$on("hybrid_show_info",t=>{this.$nextTick((function(){this.hybridshowdata=t,this.addNetworkMenou=!1,this.localNetworks=[],this.selectedNetworks=[],this.localNetworkoptions=[],this.localNetworkdefault=""}))}),this.$root.$on("hybrid_start_instance",t=>{this.swarmlabname=t.swarmlabname,t.size&&(this.swarmlabname_size=t.size),t.port&&(this.swarmlabname_port=t.port),this.onAction("start")}),this.$root.$on("hybrid_start_instance_storage",t=>{var e={action:"up"};e.token=this.token,e.swarmlabname=t.swarmlabname,e.password=t.password,this.$socket.client.open(),this.$socket.client.emit("start_storage",e)}),this.$root.$on("SERVER_build_image",t=>{this.$socket.client.open(),this.$socket.client.emit("build_image",t)}),this.$root.$on("SERVER_build_vmlist",t=>{var e={action:"up"};e.token=this.token,e.kill=2,this.$socket.client.open(),this.$socket.client.emit("build_vmlist",e)}),this.$root.$on("SERVER_build_kill",t=>{var e={action:"up"};e.token=this.token,e.kill=t.pid,this.$socket.client.open(),this.$socket.client.emit("build_kill",e)}),this.$root.$on("hybrid_install_instance",t=>{this.swarmlabname=t.swarmlabname,this.swarmlabname_git=t.git,this.onAction("install")}),this.$root.$on("hybrid_install_instance_storage",t=>{var e={action:"up"};e.token=this.token,e.swarmlabname=t.swarmlabname,e.git=t.git,this.$socket.client.open(),this.$socket.client.emit("installstorage",e)}),this.$root.$on("hybrid_connect_server",t=>{this.$socket.client.emit("get-serverconfig")}),this.$root.$on("hybrid_stop_instance",t=>{this.swarmlabname=t,this.onAction("stop")}),this.$root.$on("hybrid_stop_instance_storage",t=>{this.$socket.client.emit("stop_storage",t)})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token");f.dispatch("pipelineLLO/settoken",{token:this.token});this.socketopen()},beforeDestroy(){this.$root.$off("hybrid_show_info"),this.$root.$off("hybrid_start_instance"),this.$root.$off("hybrid_stop_instance"),this.$root.$off("hybrid_connect_server"),this.$root.$off("hybrid_install_instance"),this.$root.$off("hybrid_install_instance_storage"),this.$root.$off("SERVER_build_vmlist"),this.$root.$off("SERVER_build_kill"),this.$root.$off("SERVER_build_image")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{async updateNetwork(t,e){await f.dispatch("pipelineLLO/updatenetworks",{networks:this.selectedNetworks,defaultnetwork:this.localNetworkdefault,container:t.ID});this.$root.$emit("hybrid_refresh_networktable"),this.hybridshowdata={},this.addNetworkMenou=!1,this.localNetworks=[],this.selectedNetworks=[],this.localNetworkoptions=[],this.localNetworkdefault=""},async addNetwork(t,e){if("on"==e){this.addNetworkMenou=!0;var a=await f.dispatch("pipelineLLO/getnetworks",{instance:t.ID});this.localNetworks=a.data.data;var s="";this.localNetworkoptions=[];for(var i=0;i'+l[c].Source+" "+l[c].Destination+" ");r+=" ",r+="

",r+="
",r+="
",r+="* App with GUI: xhost +local:docker
",r+="
",r+="This permits the docker user on the local machine to connect to X windows display.
",this.$swal({type:"Info",title:"Info!",icon:"info",html:r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}else if("install"==t){e={action:"up"};e.token=this.token,e.swarmlabname=this.swarmlabname,e.git=this.swarmlabname_git,this.$socket.client.open(),this.$socket.client.emit("install",e)}else"container-stop"==t?(this.$root.$emit("SERVER_hybrid_table_start"),this.$socket.client.emit("container-stop",this.swarmlabname,this.hybridshowdata.ID)):"create-wirequard"==t?this.$socket.client.emit("create-wirequard",this.token):"stop"==t&&this.$socket.client.emit("stop",this.swarmlabname)},async socketopen(){this.$socket.client.open(),this.$socket.client.connect()},async socketauthenticate(){this.$socket.client.emit("authenticate",this.token)},async socketreconnect(){await this.socketopen();this.socketauthenticate()},async socketclose(){this.$socket.client.close()}},sockets:{connect(){this.issocket="open";f.dispatch("pipelineLLO/setsocketStatus",{status:"open"})},error(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"})},connect_error(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"});this.socketopen(),this.socketreconnect()},disconnect(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"});this.socketreconnect()},connect_timeout(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"});this.socketreconnect()},reconnect(t){this.socketreconnect()},reconnect_attempt(t){this.socketreconnect()},reconnecting(t){this.socketreconnect()},reconnect_error(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"});this.socketreconnect()},unauthorized(t){this.issocket="close";f.dispatch("pipelineLLO/setsocketStatus",{status:"close"})},socket_id_emit(t){this.issocket="open";f.dispatch("pipelineLLO/setsocketStatus",{status:"open"})},async logdata(t){f.dispatch("pipelineLLO/addlog",{log:t});var e=f.getters["pipelineLLO/getlog"];this.log_path=[...new Set(e.map(t=>t.tailed_path))];var a="";for(let i of this.log_path)if(a=e.filter(t=>t.tailed_path===i).length,s["default"].set(this.log_path_lenght,i,a),a>this.loglenghttotal)f.dispatch("pipelineLLO/taillog",{path:i})},async message(t){},async message_config(t){t.data=JSON.parse(t.data),"ok"==t.file?(this.CONFIG.status=t.data.status,this.CONFIG.workerkey=t.data.workerkey,this.CONFIG.swarmlab_public_wgkey=t.data.swarmlab_public_wgkey,this.CONFIG.server_ip=t.data.server_ip,this.CONFIG.allowed_ips=t.data.allowed_ips,this.CONFIG.wg_port=t.data.wg_port,this.CONFIG.wg_ip=t.data.wg_ip,this.CONFIG.swarm_ip=t.data.swarm_ip,this.CONFIG.privatekey=t.data.privatekey,this.CONFIG.publickey=t.data.publickey):"nodata"==t.file&&(this.CONFIG.status="",this.CONFIG.workerkey="",this.CONFIG.swarmlab_public_wgkey="",this.CONFIG.server_ip="",this.CONFIG.allowed_ips="",this.CONFIG.wg_port="",this.CONFIG.wg_ip="",this.CONFIG.swarm_ip="",this.CONFIG.privatekey="",this.CONFIG.publickey=""),f.dispatch("pipelineLLO/addconfig",this.CONFIG),this.$root.$emit("hybrid_connect_server_view",this.CONFIG)},async message_log(t){this.$root.$emit("hybrid_log_in",t)},async message_out(t){this.$root.$emit("hybrid_log_in",t),this.$root.$emit("SERVER_hybrid_table_start"),this.hybridshowdata={}},async message_err(t){this.$root.$emit("hybrid_log_in",t)},async message_close(t){this.$root.$emit("hybrid_log_in",t),this.$root.$emit("hybrid_refresh_table"),this.$root.$emit("SERVER_hybrid_table_stop")},async message_err_storage(t){this.$root.$emit("hybrid_log_in",t)},async message_out_storage(t){this.$root.$emit("hybrid_log_in",t)},async message_close_storage(t){this.$root.$emit("hybrid_log_in",t),this.$root.$emit("hybrid_refresh_table_storage")},async message_close_build(t){this.$root.$emit("SERVER_build_close_build",t)},async build_set_sshpid(t){this.$root.$emit("SERVER_build_set_sshpid",t)},async build_set_buildpid(t){this.$root.$emit("SERVER_build_set_buildpid",t)},async message_hybrid_status(t){var e={};e.status=t;f.dispatch("pipelineLLO/setstatus",e);this.$root.$emit("hybrid_server_status",t),this.STATUS.swarmlabid=t.data.swarmlabid,this.STATUS.hybrid=t.data.hybrid,this.STATUS.swarmlab=t.data.swarmlab,f.dispatch("pipelineLLO/addstatusswarmlab",this.STATUS)}},actions:{}},ot=it,nt=(a("4cf0"),Object(O["a"])(ot,at,st,!1,null,null,null)),rt=nt.exports,lt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("3606"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:" col text-center"},[s("v-wait",{attrs:{for:"myRunInstance1"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c"),width:"50",height:"50"}}),t._v(" Lab_Instance... ")])])],2),t.extenderror?s("button",{staticClass:"btn btn-outline-danger btn-sm",attrs:{type:"button",round:""},on:{click:function(e){return t.runextenderror()}}},[t._v(" Error: max depth exceeded")]):t._e(),t.tryConsole?s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{type:"button",round:""},on:{click:function(e){return t.clear()}}},[t._v(" Clear")]):t._e(),s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{type:"button",round:"",disabled:""}},[t._v(" Console")]),"sublime"==t.cmOptions.keyMap?s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{type:"button",round:""},on:{click:t.infoFilter}},[t._v(" i")]):t._e()],1),s("div",{staticClass:"row"},[s("div",{staticClass:"col-12"},[s("div",{staticClass:"codemirror"},[s("codemirror",{ref:"myCm",attrs:{value:t.code,options:t.cmOptions},on:{cursorActivity:t.onCmCursorActivity,ready:t.onCmReady,focus:t.onCmFocus,input:t.onCmCodeChange}})],1)])])])],1)},ct=[],dt=a("8f94"),ut=(a("c4e3"),a("21a6"),a("a7be"),a("eb8f"),a("b866"),a("31c5"),a("9b74"),a("f6b6"),a("3c98"),a("9c7b"),a("715d"),a("b933"),a("23de"),a("02f0"),a("8c33"),a("7289"),a("2aed"),a("d72f"),a("0b6c"),a("9a48"),a("75f8"),a("697e"),a("aedd"),a("164b"),a("4895"),a("cbc8"),a("8d70"),a("9f09"),a("a2c1"),a("56b3"),a("d7d5"),{components:{card:I,codemirror:dt["codemirror"]},data(){return{socketonline:!1,extenderror:!1,tryConsole:!1,ssl:{},getinfo:"",token:"",swarmlabname:"",code:"",editchoice:"",optionsedit:[{text:"code",value:"code"},{text:"text",value:"text"}],llodesc:[{llo_url:"",llo_name:"",llo_author:"",llo_intro:""}],llo:[{id:0,rm:!1,data_info:"Asciidoc \n",data_code:"#Your source code",data_service:"",code_datafile:"url",code_name:"",code_exec:"",code_options:"",code_mime:"",code_info:"",code_code:"",code_codeout:"",code_codeoutput:"console",points:"",challenge_question:"",code_challenge_question:"",challenge_answer:"",challenge_answer_hint:"",code_challenge_answer_hint:"",challenge_answer_source:"",challenge_answer_code_out:"",challenge_answer_code:"",code_challenge_answer_code:""}],searchLLO:[],searchLLOactive:!1,ADOC_html_code:"",challenge:[],action:"",tryLLO:[],service:"os2",active:0,activecount:0,remove:"",activeField:"",bootstrap:!1,firstbootstrap:0,htmlasciitmp:"",datafile:"https://git.swarmlab.io:3000/labs/examples-mpi2/raw/branch/master/0_netstat/data",datadir:"0_netstat/data",LearningObject:"",showllo:!0,showlloedit:!0,selected:"sublime",options:[{text:"vim",value:"vim"},{text:"sublime",value:"sublime"}],optionsmime:[{text:"sh",value:"bash"},{text:"javascript",value:"javascript"},{text:"python",value:"python"},{text:"php",value:"php"},{text:"sql",value:"sq;"},{text:"xml",value:"xml"},{text:"c",value:"c"}],pValidate:!1,cmOptions:{tabSize:2,styleActiveLine:!0,lineNumbers:!0,lineSeparator:"\n",line:!0,foldGutter:!0,gutters:["CodeMirror-linenumbers","CodeMirror-foldgutter"],highlightSelectionMatches:{showToken:/\w/,annotateScrollbar:!0},styleSelectedText:!0,mode:"shell",hintOptions:{completeSingle:!1},keyMap:"sublime",matchBrackets:!0,showCursorWhenSelecting:!0,indentUnit:this.ADOC_html_code,lineWrapping:!0,theme:"idea",refresh:!0,readOnly:!0,autofocus:!1,extraKeys:{Ctrl:"autocomplete"}},ADOC_html:[]}},methods:{socketconnect(){this.$root.$emit("SERVER_socket_connect")},clear(){this.tryConsole=!1,this.code=""},async getdata(){var t=this.getinfo;await f.dispatch("pipelineLLO/get_data",{code:t})},async showactive(t){this.topwindow(t)},onCmReady(t){t.on("change",(t,e)=>{}),t.on("keypress",()=>{t.showHint({completeSingle:!1})})},onCmCursorActivity(t,e,a){},onCmFocus(t){},onCmCodeChange(t){this.code=t},handleChange(){},setKeymap(){this.cmOptions.keyMap=this.selected},infoFilter(){var t="

Playbook Images

",e='
Shift-Tab indentLess
Alt-Q wrapLines
Ctrl-Up scrollLineUp
Ctrl-Down scrollLineDown
Ctrl-L selectLine
Esc singleSelectionTop
Ctrl-Enter insertLineAfter
Ctrl-D selectNextOccurrence
Shift-Ctrl-Space selectScope
Shift-Ctrl-M selectBetweenBrackets
Ctrl-M goToBracket
Ctrl-K Ctrl-Y sublimeYank
Ctrl-K Ctrl-C showInCenter
Ctrl-K Ctrl-G clearBookmarks
Ctrl-K Ctrl-Backspace delLineLeft
Ctrl-K Ctrl-0 unfoldAll
Ctrl-K Ctrl-J unfoldAll
Ctrl-Alt-Up addCursorToPrevLine
Ctrl-Alt-Down addCursorToNextLine
Ctrl-F3 findUnder
Shift-Ctrl-F3 findUnderPrevious
Shift-Ctrl-[ fold
Shift-Ctrl-] unfold
Ctrl-F find
',a=(t="","");this.$swal({title:"Key bindings",type:"info",html:e+t+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1})},async hotreload(){this.getinfo,await f.dispatch("pipelineLLO/hotreload",{token:this.token,swarmlabname:this.swarmlabname})},runextenderror(){var t='
\n

\n It\'s the total amount of layers; \n

\n

\n The current limit of 125 layers is due to the kernel\'s ARG_MAX, which limits the number of arguments / length of arguments that can be passed when mounting the layers \n \n
(this limit can be raised in kernels, but is not something that could be relied on as it would make those images non-interoperable on systems that don\'t have the custom configuration)\n

\n

\n Note that not every step in a Dockerfile creates a new layer, only (RUN) steps that modify the filesystem will introduce a new layer.\n

\n\n

\n

Solution
\n

\n

\n Delete all local docker images related to your dockerfile using the following:\n
\n
\n docker rmi -f $(docker images -a -q)\n

\n\n

\n

Description
\n
\n Remove unused image
\n - all images not referenced by any container -\n

\n

\n

Filtering
\n
\n docker rmi -f $(docker images -a | grep "IMAGE_NAME" | awk \'{ print $3 }\')\n

\n\n
';this.$swal({title:"Info",type:"info",html:t,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1})}},computed:{codemirror(){return this.$refs.myCm.codemirror}},mounted(){this.$root.$on("SERVER_socket_status",t=>{this.$nextTick((function(){"off"==t?this.socketonline=!1:"on"==t&&(this.socketonline=!0)}))}),this.$root.$on("hybrid_log_in",t=>{var e=this.$refs.myCm.codemirror.getDoc(),a=e.getCursor(),s=e.getLine(a.line),i={line:a.line,ch:s.length-1};e.replaceRange(t.data,i),e.replaceRange("\n",i),this.$refs.myCm.codemirror.setCursor(this.$refs.myCm.codemirror.lineCount(),0);var o=new RegExp("max depth exceeded");o.test(t.data)?this.extenderror=!0:console.log("not find"),this.tryConsole=!0}),this.$root.$on("SERVER_hybrid_table_start",t=>{this.$nextTick((function(){this.$wait.start("myRunInstance1")}))}),this.$root.$on("SERVER_hybrid_table_stop",t=>{this.$nextTick((function(){this.$wait.end("myRunInstance1")}))})},beforeDestroy(){this.$root.$off("SERVER_socket_status"),this.$root.$off("hybrid_log_in"),this.$root.$off("SERVER_hybrid_table_start"),this.$root.$off("SERVER_hybrid_table_stop")},created(){this.token=new URL(location.href).searchParams.get("token"),this.swarmlabname=new URL(location.href).searchParams.get("pipelinename")}}),pt=ut,ht=(a("0b43"),Object(O["a"])(pt,lt,ct,!1,null,null,null)),mt=ht.exports,bt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-info",attrs:{round:"",type:"button"},on:{click:t.setRefresh}},[t._v(" Refresh table")])]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search by Name"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actions",fn:function(e){return s("div",{},[t.actionrowindex==e.rowIndex?s("button",{staticClass:"ti-more-alt btn btn-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}):s("button",{staticClass:"ti-more btn btn-outline-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}})])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},ft=[],vt={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{actionrowindex:"",playbookInfo:{},token:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"Names",title:'Name',sortField:"Names",visible:!0,dataClass:"text-left text-wrap text-break break-word",width:"50%"},{name:"Image",title:'Image',visible:!0,dataClass:"left aligned w-25",width:"15%",formatter(t){const e=/^ondemand_playground/.test(t);if(e){var a='

Playground

';return a}a='

Lab

';return a}},{name:"_id",title:'mongo',visible:!1},{name:"Status",title:'Status',sortField:"Status",titleClass:"center aligned",visible:!0,width:"10%"},{name:"ID",sortField:"ID",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actions",title:"Actions",titleClass:"center aligned",dataClass:"center aligned",width:"5%"}],apiurl:d.url_80+"/dockerservices",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"Names",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts",tutor:"yes"}}},mounted(){this.$root.$on("hybrid_refresh_networktable",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.refreshVuetable()}),this.$root.$on("hybrid_refresh_dockerservices",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.refreshVuetable()}),this.$root.$on("hybrid_refresh_table",t=>{this.$nextTick((function(){s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.viewhybridoptions=!1}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_networktable"),this.$root.$off("hybrid_refresh_dockerservices"),this.$root.$off("hybrid_refresh_table")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setRefresh(){this.moreParams={filter:"",type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){this.actionrowindex=a,this.$root.$emit("hybrid_show_info",e),"view-item"==t||"delete-item"==t&&this.$swal({type:"info",html:info+winfo,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"})},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},wt=vt,gt=(a("0390"),Object(O["a"])(wt,bt,ft,!1,null,null,null)),yt=gt.exports,Ct={components:{ViewNetwork:rt,AdhocView:mt,card:I,DockerServices:yt},data(){return{loading:!1,consoleView:"off",productIndex:1}},mounted(){},beforeDestroy(){},created(){}},_t=Ct,kt=Object(O["a"])(_t,tt,et,!1,null,null,null),At=kt.exports,xt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-7 order-first "},[a("br"),a("available-services",{key:t.componentKeyreloadservice})],1),a("div",{staticClass:"col-5 order-last"},[a("br"),a("adhoc-view")],1)])])},Ot=[],St=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab "),s("span",{staticClass:"text-info"},[t._v("LabRoom")]),t._v(" Deploy - Local ")])])]),s("br"),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),t.viewhybridoptions?s("div",{staticClass:"row"},[s("b-col",{staticClass:"text-center",attrs:{cols:"12",sm:"12",md:"12"}},[s("span",[s("b",[t._v("Lab Service Options")])])])],1):t._e(),t.viewhybridoptions?s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"}},[t._v(" Instances ")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.hybridoptions.size,expression:"hybridoptions.size"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Number of Instances"},domProps:{value:t.hybridoptions.size},on:{input:function(e){e.target.composing||t.$set(t.hybridoptions,"size",e.target.value)}}}),s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"}},[t._v(" Port")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.hybridoptions.port,expression:"hybridoptions.port"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Expose Port"},domProps:{value:t.hybridoptions.port},on:{input:function(e){e.target.composing||t.$set(t.hybridoptions,"port",e.target.value)}}}),s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:t.setHybridoptions}},[t._v(" Up")])]):t._e(),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actionsenabled",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowData.swarmlabname]==e.rowIndex?s("button",{staticClass:"ti-thumb-up btn btn-info btn-sm",attrs:{title:"Stop Lab_Instance",round:""},on:{click:function(a){return t.onAction("down-item",e.rowData,e.rowIndex)}}}):t._e(),t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex&&t.testactionrowindex[e.rowIndex]==e.rowIndex?s("button",{staticClass:"ti-thumb-down btn btn-secondary btn-sm",attrs:{title:"Start Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-item",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actionslocal",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowIndex]==e.rowIndex&&t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex?s("button",{staticClass:"ti-trash btn btn-info btn-sm",attrs:{title:"Remove Lab_Instance",round:""},on:{click:function(a){return t.onAction("rm-install",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actions",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.checkactionrowindex(e.rowData,e.rowIndex)?s("button",{staticClass:"ti-cloud-down btn btn-outline-secondary btn-sm",attrs:{title:"Download Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-install",e.rowData,e.rowIndex)}}}):t._e(),s("button",{staticClass:"ti-info btn btn-outline-secondary btn-sm",attrs:{title:"Lab_Instance Info",round:""},on:{click:function(a){return t.onAction("view-item",e.rowData,e.rowIndex)}}})])])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},It=[],Lt={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{testactionrowindex:[],teststatusindex:[],hybridoptions:{index:"",swarmlabname:"",size:"",port:""},viewhybridoptions:!1,swarmlab:{},playbookInfo:{},token:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"swarmlabname",title:'Name',sortField:"swarmlabname",visible:!0,dataClass:"left aligned col-3",width:"68%"},{name:"_id",title:'mongo',visible:!1},{name:"description",sortField:"gitrepoCloneUrl",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"gitrepoFullName",sortField:"gitrepoFullName",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actionsenabled",title:"Status",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actionslocal",title:"Installed",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actions",title:"Download",titleClass:"col text-center",dataClass:"center aligned",width:"10%"}],apiurl:d.swarmlab_url_80+"/swarmlabhybridservices",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts"}}},mounted(){this.$root.$on("hybrid_refresh_availableservices",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh())}),this.$root.$on("hybrid_refresh_table",t=>{this.$nextTick((function(){s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.viewhybridoptions=!1}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_availableservices"),this.$root.$off("hybrid_refresh_table")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},async checkactionrowindex(t,e){if(this.testactionrowindex[e]==e){var a={};a.token=this.token,a.instance=t.swarmlabname;var i=await f.dispatch("pipelineLLO/getservicesstatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else{a={};a.token=this.token,a.instance=t.swarmlabname;var o=await f.dispatch("pipelineLLO/getservicesinfo",a);if("yes"==o.data.data){s["default"].set(this.testactionrowindex,e,e);i=await f.dispatch("pipelineLLO/getservicesstatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else console.log("resi NO "+JSON.stringify(o))}},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){if("view-item"==t){this.swarmlab=e;var i=this.swarmlab,o=await f.dispatch("pipelineLLO/getswarmlabinfo",i.swarmlabname),n=(JSON.stringify(o.data.swarmlab,null,2),JSON.stringify(o.data.swarmlabinfo,null,2));n=o.data.swarmlabinfo;if("ok"==o.data.error25){var r="",l='
Swarmlab Service Info
(Open page in new window)';this.$swal({type:"info",html:l+r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}}else if("delete-item"==t)this.$swal({type:"info",html:l+r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}),this.refreshVuetable();else if("rm-install"==t){this.hybridoptions.swarmlabname=e.swarmlabname,this.$wait.start("myRunInstancetutor");o=await f.dispatch("pipelineLLO/rmswarmlablocal",this.hybridoptions.swarmlabname);this.$wait.end("myRunInstancetutor");var c={};c.token=this.token,c.instance=e.swarmlabname;var d=await f.dispatch("pipelineLLO/getservicesinfo",c);if("yes"==d.data.data&&"yes"==d.data.data){r='
swarmlab encountered a problem while deleting your labroom files.
This propably means that you have created some files while operating the labroom.
To remove those files please run the following command as root.
Copy-and-run-command

';r+='sudo rm -rf '+o.data.path+"/instance/"+e.swarmlabname+"

",r+=' You can back up content using:
',r+='sudo tar -zcvf /home/$USER/swarmlabbackup_'+e.swarmlabname+".tar.gz "+o.data.path+"/instance/"+e.swarmlabname+" ";l="
Labroom remove
";this.$swal({type:"info",html:l+r,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"}),console.log("inf res11111111111 "+JSON.stringify(o.data.path))}s["default"].delete(this.testactionrowindex,e.swarmlabname),this.refreshVuetable(),this.$root.$emit("hybrid_refresh_info_deploy_local")}else if("run-install"==t){this.$wait.start("myRunInstancetutor"),this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.size=this.hybridoptions.size,t.port=this.hybridoptions.port;o=await f.dispatch("pipelineLLO/getswarmlabinfo",t.swarmlabname),n=o.data.swarmlabinfo;t.git=n,this.$root.$emit("hybrid_install_instance",t),this.$wait.end("myRunInstancetutor"),this.refreshVuetable()}else if("run-item"==t)this.viewhybridoptions=!0,this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a,s["default"].nextTick(()=>this.$refs.vuetable.refresh());else if("down-item"==t){this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;l="Stop and remove containers, networks, images, and volumes";this.$swal({type:"info",html:l,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"Yes!"}).then(t=>{this.rmAndClose(t)}),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},async rmAndClose(t){if(t.isConfirmed){var e=this.hybridoptions.swarmlabname;this.$root.$emit("hybrid_stop_instance",e),s["default"].delete(this.testactionrowindex,this.hybridoptions.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}else console.log("no");this.refreshVuetable()},async setHybridoptions(){let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.size=this.hybridoptions.size,t.port=this.hybridoptions.port,this.$root.$emit("hybrid_start_instance",t),s["default"].set(this.testactionrowindex,t.swarmlabname,t.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},Rt=Lt,$t=(a("47a8"),Object(O["a"])(Rt,St,It,!1,null,null,null)),Nt=$t.exports,Dt={components:{AdhocView:mt,card:I,AvailableServices:Nt},data(){return{componentKeyreloadservice:1,loading:!1,consoleView:"off",productIndex:1}},mounted(){this.$root.$on("hybrid_refresh_info_deploy_local",()=>{this.componentKeyreloadservice+=1})},beforeDestroy(){this.$root.$off("hybrid_refresh_info_deploy_local")},created(){}},Bt=Dt,Et=Object(O["a"])(Bt,xt,Ot,!1,null,null,null),Tt=Et.exports,Pt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-12 order-first "},[a("br"),a("myconnect-manage-server")],1)])])},Ft=[],Vt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("f467"),alt:"..."}})]),s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab hybrid Join")])])]),s("br"),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapstackname&&t.hybridshowdata.status?s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("stack-start")}}},[t._v(" Start Stack ")]):t._e()])]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapstackname&&t.hybridshowdata.status?s("button",{staticClass:"btn btn-outline-danger",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("stack-stop")}}},[t._v(" Leave Stack ")]):t._e()])]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"})]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapstackname?s("button",{staticClass:"btn btn-outline-info",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("service-info")}}},[t._v(" Service Info ")]):t._e()])])]),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Instances ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Replicas)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Image ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapimage)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Names ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapname)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" EndAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapdateend)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Networks ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapnetwork)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" BeginAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapdatebegin)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Status ")]),t.hybridshowdata.status?s("div",{staticClass:"col-3 text-secondary"},[s("span",{staticClass:"ti-check text-success"})]):s("div",{staticClass:"col-3 text-secondary"},[s("span")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Ports ")]),0!=t.hybridshowdata.ports?s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.ports)+" ")]):s("div",{staticClass:"col-4 text-secondary"})]):t._e()]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search By StackName"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),s("vuetable",{key:t.vuetablekey1,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actionslocal",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowData.bootstrapnameid]?s("button",{staticClass:"ti-thumb-up btn btn-info btn-sm",attrs:{title:"Remove Stack",disabled:"",round:""}}):s("button",{staticClass:"ti-thumb-down btn btn-secondary btn-sm",attrs:{title:"Remove Stack",disabled:"",round:""}})])])}},{key:"actions",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.actionrowindex==e.rowIndex?s("button",{staticClass:"ti-more-alt btn btn-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}):s("button",{staticClass:"ti-more btn btn-outline-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}})])])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},Gt=[],Mt={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{testactionrowindex:[],actionrowindex:"",playbookInfo:{},hybridshowdata:{},token:"",CONFIG:{},isstatus:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey1:0,fielddata:{},fields:[{name:"bootstrapname",title:'Name',sortField:"bootstrapname",visible:!0,dataClass:"text-left text-wrap text-break break-word",width:"15%"},{name:"bootstrapstackname",title:'StackName',sortField:"bootstrapstackname",visible:!0,dataClass:"left aligned w-25",width:"10%"},{name:"bootstrapstackid",title:'StackID',sortField:"bootstrapstackid",visible:!0,dataClass:"left aligned w-25",width:"15%",callback:t=>{for(var e=0;emongo',visible:!1},{name:"bootstrapdatebegin5",title:'Begin',sortField:"bootstrapdatebegin5",titleClass:"center aligned",visible:!0,width:"10%"},{name:"bootstrapusersjoin",title:'Public',sortField:"bootstrapusersjoin",titleClass:"center aligned",visible:!0,width:"5%",callback:function(t){if(1==t){var e=' ';return e}e=" ";return e}},{name:"status",title:'Status',sortField:"status",titleClass:"center aligned",visible:!0,width:"5%",callback:function(t){if(1==t){var e=' ';return e}e=" ";return e}},{name:"ID",sortField:"ID",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actionslocal",title:" Join",titleClass:"center aligned",dataClass:"center aligned",width:"5%",callback:"getstatus"},{name:"__slot:actions",title:"Actions",titleClass:"center aligned",dataClass:"center aligned",width:"5%"}],apiurl:d.swarmlab_url_80+"/swarmlabhybridbootstrapservicesall",css:$["a"],perpage:10,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts",tutor:"yes"}}},mounted(){this.$root.$on("hybrid_refresh_bootstrap_view",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh())})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_bootstrap_view")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{async checkactionrowindex(t){var e={};e.token=this.token,e.bootstrapnameid=t.bootstrapnameid,e.bootstrapstackname=t.bootstrapstackname;var a=await f.dispatch("pipelineLLO/getserviceshybridstatus",e),i=t.bootstrapnameid;"yes"==a.data.data?s["default"].set(this.testactionrowindex,t.bootstrapnameid,i):s["default"].delete(this.testactionrowindex,t.bootstrapnameid)},async onActionHybrid(t){if(this.CONFIG=await f.getters["pipelineLLO/getstatusswarmlab"],"Online"==this.CONFIG.hybrid?this.isstatus=!0:this.isstatus=!1,"stack-stop"==t){var e="
This will leave the stack with the name "+this.hybridshowdata.bootstrapstackname+"
";this.$swal({type:"Info",title:"Info!",icon:"warning",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"}).then(t=>{this.onActionHybrid_stackrm(t)})}else if("stack-start"==t){if("1"==this.isstatus){await f.dispatch("pipelineLLO/hybrid_join",{token:this.token,node:this.CONFIG.swarmlabid,bootstrapstackid:this.hybridshowdata.bootstrapstackid,bootstrapnameid:this.hybridshowdata.bootstrapnameid});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}}else if("service-info"==t){var a=this.hybridshowdata.bootstrapurl;e=`
You will be redirected to the README page of the repository (OUTSIDE Swarmlab-Hybrid)
\nclick here to continue\n
\n
\n`;this.$swal({type:"Info",title:"README",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}},async onActionHybrid_stackrm(t){if(t.isConfirmed&&"1"==this.isstatus){await f.dispatch("pipelineLLO/hybrid_leave",{token:this.token,node:this.CONFIG.swarmlabid,bootstrapstackid:this.hybridshowdata.bootstrapstackid,bootstrapnameid:this.hybridshowdata.bootstrapnameid});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){this.actionrowindex=a,"view-item"==t||("run-more"==t?this.hybridshowdata=e:"delete-item"==t&&this.$swal({type:"info",html:info+winfo,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}))},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey1+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},jt=Mt,zt=(a("4788"),Object(O["a"])(jt,Vt,Gt,!1,null,null,null)),Yt=zt.exports,Ut={components:{card:I,MyconnectManageServer:Yt},data(){return{loading:!1,consoleView:"off",productIndex:1}},mounted(){},beforeDestroy(){},created(){}},qt=Ut,Ht=Object(O["a"])(qt,Pt,Ft,!1,null,null,null),Kt=Ht.exports,Wt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-7 order-first "},[a("br"),a("available-storage",{key:t.componentKeyreloadstorage})],1),a("div",{staticClass:"col-5 order-last"},[a("br"),a("adhoc-view")],1)])])},Jt=[],Qt=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("v-wait",{attrs:{for:"myRunInstancetutorstorage"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room storage... ")])])],2),s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab "),s("span",{staticClass:"text-info"},[t._v("Storage")]),t._v(" Deploy - Local ")])])]),s("br"),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),t.viewhybridoptions?s("div",{staticClass:"row"},[s("b-col",{staticClass:"text-center",attrs:{cols:"12",sm:"12",md:"12"}},[s("span",[s("b",[t._v("Storage Service Options")])])])],1):t._e(),t.viewhybridoptions?s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"}},[t._v(" Admin ")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.hybridoptions.password,expression:"hybridoptions.password"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"New Password"},domProps:{value:t.hybridoptions.password},on:{input:function(e){e.target.composing||t.$set(t.hybridoptions,"password",e.target.value)}}}),s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:t.checkHybridoptions}},[t._v(" Up")])]):t._e(),s("vuetable",{key:t.vuetablekeystorage,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actionsenabled",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowData.swarmlabname]==e.rowIndex?s("button",{staticClass:"ti-thumb-up btn btn-info btn-sm",attrs:{title:"Stop Lab_Instance",round:""},on:{click:function(a){return t.onAction("down-item",e.rowData,e.rowIndex)}}}):t._e(),t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex&&t.testactionrowindex[e.rowIndex]==e.rowIndex?s("button",{staticClass:"ti-thumb-down btn btn-secondary btn-sm",attrs:{title:"Start Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-item",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actionslocal",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowIndex]==e.rowIndex&&t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex?s("button",{staticClass:"ti-trash btn btn-info btn-sm",attrs:{title:"Remove Lab_Instance",round:""},on:{click:function(a){return t.onAction("delete-item",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actions",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.checkactionrowindex(e.rowData,e.rowIndex)?s("button",{staticClass:"ti-cloud-down btn btn-outline-secondary btn-sm",attrs:{title:"Download Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-install",e.rowData,e.rowIndex)}}}):t._e(),s("button",{staticClass:"ti-info btn btn-outline-secondary btn-sm",attrs:{title:"Lab_Instance Info",round:""},on:{click:function(a){return t.onAction("view-item",e.rowData,e.rowIndex)}}})])])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},Zt=[],Xt={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{testactionrowindex:[],teststatusindex:[],hybridoptions:{index:"",swarmlabname:"",password:"",port:""},viewhybridoptions:!1,swarmlab:{},playbookInfo:{},token:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekeystorage:0,fielddata:{},fields:[{name:"swarmlabname",title:'Name',sortField:"swarmlabname",visible:!0,dataClass:"left aligned col-3",width:"68%"},{name:"_id",title:'mongo',visible:!1},{name:"description",sortField:"gitrepoCloneUrl",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"gitrepoFullName",sortField:"gitrepoFullName",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actionsenabled",title:"Status",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actionslocal",title:"Installed",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actions",title:"Download",titleClass:"col text-center",dataClass:"center aligned",width:"10%"}],apiurl:d.swarmlab_url_80+"/swarmlabhybridstorage",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts"}}},mounted(){this.$root.$on("hybrid_refresh_availableservices_storage",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh())}),this.$root.$on("hybrid_refresh_table_storage",t=>{this.$nextTick((function(){s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.viewhybridoptions=!1,this.$wait.end("myRunInstancetutorstorage")}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_availableservices_storage"),this.$root.$off("hybrid_refresh_table_storage")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},async checkactionrowindex(t,e){if(this.testactionrowindex[e]==e){var a={};a.token=this.token,a.instance=t.swarmlabname;var i=await f.dispatch("pipelineLLO/getstoragestatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else{a={};a.token=this.token,a.instance=t.swarmlabname;var o=await f.dispatch("pipelineLLO/getservicesinfo",a);if("yes"==o.data.data){s["default"].set(this.testactionrowindex,e,e);i=await f.dispatch("pipelineLLO/getstoragestatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else console.log("resi NO "+JSON.stringify(o))}},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){if("view-item"==t){this.swarmlab=e;var i=this.swarmlab,o=await f.dispatch("pipelineLLO/getswarmlabstorageinfo",i.swarmlabname),n=(JSON.stringify(o.data.swarmlab,null,2),JSON.stringify(o.data.swarmlabinfo,null,2));n=o.data.swarmlabinfo;if("ok"==o.data.error25){var r="",l='
Swarmlab Service Info
(Open page in new window)';this.$swal({type:"info",html:l+r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}}else if("delete-item"==t){this.hybridoptions.swarmlabname=e.swarmlabname;l="
This will remove the storage with the name "+e.swarmlabname+"

";var c=this.hybridoptions.swarmlabname,d=(r="",await f.dispatch("pipelineLLO/getstoragesudopreparestop",c));if("yes"==d.data.data&&"no"==d.data.error){var u=d.data.path;r='Before continuing RUN the following command

',r+='sudo /bin/bash ',r+=u.trim(),r+="/sudorun-storage-stop "}this.$swal({type:"info",html:l+r,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}).then(t=>{this.rmStorageAndClose(t)}),this.refreshVuetable()}else if("run-install"==t){this.$wait.start("myRunInstancetutorstorage"),this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.size=this.hybridoptions.size,t.port=this.hybridoptions.port;o=await f.dispatch("pipelineLLO/getswarmlabstorageinfo",t.swarmlabname),n=o.data.swarmlabinfo;t.git=n,this.$root.$emit("hybrid_install_instance_storage",t),this.$wait.end("myRunInstancetutorstorage"),this.refreshVuetable()}else if("run-item"==t)this.viewhybridoptions=!0,this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;else if("down-item"==t){this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;l="Stop and remove storage: containers, networks, images, and volumes";this.$swal({type:"info",html:l,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"Yes!"}).then(t=>{this.rmAndClose(t)}),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},async rmStorageAndClose(t){if(t.isConfirmed){this.$wait.start("myRunInstancetutorstorage");await f.dispatch("pipelineLLO/rmswarmlablocalstorage",this.hybridoptions.swarmlabname);this.$wait.end("myRunInstancetutorstorage"),s["default"].delete(this.testactionrowindex,this.hybridoptions.swarmlabname),this.refreshVuetable(),this.$root.$emit("hybrid_refresh_info_deploy_local")}},async rmAndClose(t){if(t.isConfirmed){this.$wait.start("myRunInstancetutorstorage");var e=this.hybridoptions.swarmlabname;this.$root.$emit("hybrid_stop_instance_storage",e),s["default"].delete(this.testactionrowindex,this.hybridoptions.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}else console.log("no");this.refreshVuetable()},async checkHybridoptions(){var t=this.hybridoptions.swarmlabname,e=await f.dispatch("pipelineLLO/getstoragesudoprepare",t);if("yes"==e.data.data&&"no"==e.data.error){var a="

Storage prepare2start

Copy-and-run-command

",s=e.data.path,i='sudo /bin/bash ';i+=s.trim(),i+="/sudorun-storage-run ",this.$swal({type:"info",html:a+i,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Run it!"}).then(t=>{this.setHybridoptions(t)})}else if("yes"==e.data.data&&"yes"==e.data.error){a="

Storage prepare2start

Copy-and-run-command

",s=e.data.path,i="Can't write to file ";i+=s.trim(),i+="/sudorun-storage-run ",this.$swal({type:"info",html:a+i,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}else if("nosudo"==e.data.data){var o={isConfirmed:"true"};this.setHybridoptions(o)}else if("error"==e.data.data&&"yes"==e.data.error){o={isConfirmed:"true"};this.setHybridoptions(o)}else{o={isConfirmed:"true"};this.setHybridoptions(o)}},async setHybridoptions(t){if(console.log(JSON.stringify(t)),t.isConfirmed){this.$wait.start("myRunInstancetutorstorage");let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.password=this.hybridoptions.password,t.port=this.hybridoptions.port,this.$root.$emit("hybrid_start_instance_storage",t),s["default"].set(this.testactionrowindex,t.swarmlabname,t.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},refreshVuetable(){this.$nextTick(()=>{this.vuetablekeystorage+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},te=Xt,ee=(a("4eb0"),Object(O["a"])(te,Qt,Zt,!1,null,null,null)),ae=ee.exports,se={components:{AdhocView:mt,card:I,AvailableStorage:ae},data(){return{componentKeyreloadstorage:1,loading:!1,consoleView:"off",productIndex:1}},mounted(){this.$root.$on("hybrid_refresh_info_deploy_local",()=>{this.componentKeyreloadstorage+=1})},beforeDestroy(){this.$root.$off("hybrid_refresh_info_deploy_local")},created(){}},ie=se,oe=Object(O["a"])(ie,Wt,Jt,!1,null,null,null),ne=oe.exports,re=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-7 order-first "},[a("br"),a("available-microservices",{key:t.componentKeyreloadservice5})],1),a("div",{staticClass:"col-5 order-last"},[a("br"),a("adhoc-view")],1)])])},le=[],ce=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab "),s("span",{staticClass:"text-info"},[t._v("MicroServices")]),t._v(" Deploy - Local ")])])]),s("br"),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),t.viewhybridoptions?s("div",{staticClass:"row"},[s("b-col",{staticClass:"text-center",attrs:{cols:"12",sm:"12",md:"12"}},[s("span",[s("b",[t._v("Lab Service Options")])])])],1):t._e(),t.viewhybridoptions?s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"}},[t._v(" Instances ")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.hybridoptions.size,expression:"hybridoptions.size"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Number of Instances"},domProps:{value:t.hybridoptions.size},on:{input:function(e){e.target.composing||t.$set(t.hybridoptions,"size",e.target.value)}}}),s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"}},[t._v(" Port")]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.hybridoptions.port,expression:"hybridoptions.port"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Expose Port"},domProps:{value:t.hybridoptions.port},on:{input:function(e){e.target.composing||t.$set(t.hybridoptions,"port",e.target.value)}}}),s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:t.setHybridoptions}},[t._v(" Up")])]):t._e(),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actionsenabled",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowData.swarmlabname]==e.rowIndex?s("button",{staticClass:"ti-thumb-up btn btn-info btn-sm",attrs:{title:"Stop Lab_Instance",round:""},on:{click:function(a){return t.onAction("down-item",e.rowData,e.rowIndex)}}}):t._e(),t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex&&t.testactionrowindex[e.rowIndex]==e.rowIndex?s("button",{staticClass:"ti-thumb-down btn btn-secondary btn-sm",attrs:{title:"Start Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-item",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actionslocal",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.testactionrowindex[e.rowIndex]==e.rowIndex&&t.testactionrowindex[e.rowData.swarmlabname]!=e.rowIndex?s("button",{staticClass:"ti-trash btn btn-info btn-sm",attrs:{title:"Remove Lab_Instance",round:""},on:{click:function(a){return t.onAction("rm-install",e.rowData,e.rowIndex)}}}):t._e()])])}},{key:"actions",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.checkactionrowindex(e.rowData,e.rowIndex)?s("button",{staticClass:"ti-cloud-down btn btn-outline-secondary btn-sm",attrs:{title:"Download Lab_Instance",round:""},on:{click:function(a){return t.onAction("run-install",e.rowData,e.rowIndex)}}}):t._e(),s("button",{staticClass:"ti-info btn btn-outline-secondary btn-sm",attrs:{title:"Lab_Instance Info",round:""},on:{click:function(a){return t.onAction("view-item",e.rowData,e.rowIndex)}}})])])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},de=[],ue={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{testactionrowindex:[],teststatusindex:[],hybridoptions:{index:"",swarmlabname:"",size:"",port:""},viewhybridoptions:!1,swarmlab:{},playbookInfo:{},token:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"swarmlabname",title:'Name',sortField:"swarmlabname",visible:!0,dataClass:"left aligned col-3",width:"68%"},{name:"_id",title:'mongo',visible:!1},{name:"description",sortField:"gitrepoCloneUrl",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"gitrepoFullName",sortField:"gitrepoFullName",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actionsenabled",title:"Status",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actionslocal",title:"Installed",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actions",title:"Download",titleClass:"col text-center",dataClass:"center aligned",width:"10%"}],apiurl:d.swarmlab_url_80+"/swarmlabhybridmicroservices",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts"}}},mounted(){this.$root.$on("hybrid_refresh_availableservices",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh())}),this.$root.$on("hybrid_refresh_table",t=>{this.$nextTick((function(){s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.viewhybridoptions=!1}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_availableservices"),this.$root.$off("hybrid_refresh_table")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},async checkactionrowindex(t,e){if(this.testactionrowindex[e]==e){var a={};a.token=this.token,a.instance=t.swarmlabname;var i=await f.dispatch("pipelineLLO/getservicesstatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else{a={};a.token=this.token,a.instance=t.swarmlabname;var o=await f.dispatch("pipelineLLO/getservicesinfo",a);if("yes"==o.data.data){s["default"].set(this.testactionrowindex,e,e);i=await f.dispatch("pipelineLLO/getservicesstatus",a);"yes"==i.data.data?s["default"].set(this.testactionrowindex,t.swarmlabname,e):s["default"].delete(this.testactionrowindex,t.swarmlabname)}else console.log("resi NO "+JSON.stringify(o))}},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){if("view-item"==t){this.swarmlab=e;var i=this.swarmlab,o=await f.dispatch("pipelineLLO/getswarmlabmicroserviceinfo",i.swarmlabname),n=(JSON.stringify(o.data.swarmlab,null,2),JSON.stringify(o.data.swarmlabinfo,null,2));n=o.data.swarmlabinfo;if("ok"==o.data.error25){var r="",l='
Swarmlab Service Info
(Open page in new window)';this.$swal({type:"info",html:l+r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0})}}else if("delete-item"==t)this.$swal({type:"info",html:l+r,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}),this.refreshVuetable();else if("rm-install"==t){this.hybridoptions.swarmlabname=e.swarmlabname,this.$wait.start("myRunInstancetutor");o=await f.dispatch("pipelineLLO/rmswarmlablocal",this.hybridoptions.swarmlabname);this.$wait.end("myRunInstancetutor");var c={};c.token=this.token,c.instance=e.swarmlabname;var d=await f.dispatch("pipelineLLO/getservicesinfo",c);if("yes"==d.data.data&&"yes"==d.data.data){r='
swarmlab encountered a problem while deleting your labroom files.
This propably means that you have created some files while operating the labroom.
To remove those files please run the following command as root.
Copy-and-run-command

';r+='sudo rm -rf '+o.data.path+"/instance/"+e.swarmlabname+"

",r+=' You can back up content using:
',r+='sudo tar -zcvf /home/$USER/swarmlabbackup_'+e.swarmlabname+".tar.gz "+o.data.path+"/instance/"+e.swarmlabname+" ";l="
Labroom remove
";this.$swal({type:"info",html:l+r,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"}),console.log("inf res11111111111 "+JSON.stringify(o.data.path))}s["default"].delete(this.testactionrowindex,e.swarmlabname),this.refreshVuetable(),this.$root.$emit("hybrid_refresh_info_deploy_local")}else if("run-install"==t){this.$wait.start("myRunInstancetutor"),this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.size=this.hybridoptions.size,t.port=this.hybridoptions.port;o=await f.dispatch("pipelineLLO/getswarmlabmicroserviceinfo",t.swarmlabname),n=o.data.swarmlabinfo;t.git=n,this.$root.$emit("hybrid_install_instance",t),this.$wait.end("myRunInstancetutor"),this.refreshVuetable()}else if("run-item"==t)this.viewhybridoptions=!0,this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a,s["default"].nextTick(()=>this.$refs.vuetable.refresh());else if("down-item"==t){this.hybridoptions.swarmlabname=e.swarmlabname,this.hybridoptions.index=a;l="Stop and remove containers, networks, images, and volumes";this.$swal({type:"info",html:l,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"Yes!"}).then(t=>{this.rmAndClose(t)}),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},async rmAndClose(t){if(t.isConfirmed){var e=this.hybridoptions.swarmlabname;this.$root.$emit("hybrid_stop_instance",e),s["default"].delete(this.testactionrowindex,this.hybridoptions.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())}else console.log("no");this.refreshVuetable()},async setHybridoptions(){let t={};t.swarmlabname=this.hybridoptions.swarmlabname,t.index=this.hybridoptions.index,t.size=this.hybridoptions.size,t.port=this.hybridoptions.port,this.$root.$emit("hybrid_start_instance",t),s["default"].set(this.testactionrowindex,t.swarmlabname,t.index),s["default"].nextTick(()=>this.$refs.vuetable.refresh())},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},pe=ue,he=(a("3fc0"),Object(O["a"])(pe,ce,de,!1,null,null,null)),me=he.exports,be={components:{AdhocView:mt,card:I,AvailableMicroservices:me},data(){return{componentKeyreloadservice5:1,loading:!1,consoleView:"off",productIndex:1}},mounted(){this.$root.$on("hybrid_refresh_info_deploy_local",()=>{this.componentKeyreloadservice5+=1})},beforeDestroy(){this.$root.$off("hybrid_refresh_info_deploy_local")},created(){}},fe=be,ve=Object(O["a"])(fe,re,le,!1,null,null,null),we=ve.exports,ge=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-7 order-first "},[a("br"),a("view-network"),a("builder-services")],1),a("div",{staticClass:"col-5 order-last"},[a("br"),a("adhoc-view")],1)])])},ye=[],Ce=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("View and Manage your builds")])])]),s("br"),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-prepend"},[t.$socket.disconnected?s("button",{staticClass:"ti-unlink btn btn-outline-danger",attrs:{round:"",type:"button",title:"You are disconnected from Swarmlab-hybrid",disabled:""}}):s("button",{staticClass:"ti-link btn btn-outline-success",attrs:{round:"",type:"button",title:"You are connected swarmlab-hybrid",disabled:""}})]),s("div",{staticClass:"input-group-prepend"}),s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.name?s("button",{staticClass:"btn btn-outline-success",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-build")}}},[t._v(" Build")]):t._e(),t.hybridshowdata.name?s("button",{staticClass:"btn btn-outline-secondary ti-info",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-build-info")}}}):s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button",disabled:""}},[t._v(" Connect")]),s("button",{staticClass:"btn btn-outline-danger",attrs:{round:"",type:"button"},on:{click:function(e){return t.onAction("container-stop")}}},[t._v(" Stop")])]),s("div",{staticClass:"input-group-append"})])]),s("b-container",{attrs:{fluid:""}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" ID ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.ID)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Image ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Image)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Names ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.name)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" RunningFor ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.RunningFor)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Status ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Status)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" CreatedAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.CreatedAt)+" ")])]),t._v(" "),s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t.hybridshowdata.Networks&&0==t.addNetworkMenou?s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.addNetwork(t.hybridshowdata,"on")}}},[t._v(" Networks")]):t._e(),t.hybridshowdata.Networks&&1==t.addNetworkMenou?s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.addNetwork(t.hybridshowdata,"off")}}},[t._v(" Networks")]):t._e()]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Networks)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Ports ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Ports)+" ")])])]),1==t.addNetworkMenou?s("div",{staticClass:"card border-success bg-light mb-3",staticStyle:{"max-width":"100%"}},[s("div",{staticClass:"card-header"}),s("div",{staticClass:"card-body text-info"},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("h5",{staticClass:"card-title"},[t._v("Select network")])]),s("div",{staticClass:"col-6 text-info"},[t._v(" Connect a running container to multiple networks ")])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("b-form-select",{attrs:{options:t.localNetworkoptions,multiple:"","select-size":4},model:{value:t.selectedNetworks,callback:function(e){t.selectedNetworks=e},expression:"selectedNetworks"}}),s("div",{staticClass:"mt-3"},[t._v("Selected: "),s("strong",[t._v(t._s(t.selectedNetworks))])])],1),s("div",{staticClass:"col-6 text-info"},[s("img",{staticClass:"border-white img-thumbnail",attrs:{src:a("04d6"),alt:"..."}})])]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-6 text-info"},[s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{round:"",type:"button"},on:{click:function(e){return t.updateNetwork(t.hybridshowdata,"update")}}},[t._v(" Update")])])])])]):t._e()],1)},_e=[];Object(N["b"])("alpha_num",D["a"]),Object(N["b"])("required",{...D["c"],message:"This field is required"});var ke={components:{card:I},props:{},data(){return{addNetworkMenou:!1,selectedNetworks:[],localNetworkoptions:[],localNetworkdefault:"",STATUS:{},CONFIG:{status:"",workerkey:"",swarmlab_public_wgkey:"",server_ip:"",allowed_ips:"",wg_port:"",wg_ip:"",swarm_ip:"",privatekey:"",publickey:"",workerkey:"",privatekey:"",publickey:"",server_ip:""},sshpid:0,buildpid:0,CONFIGallowed_ips:"",swarmlabname:"swarmlab-sec",swarmlabname_port:"",swarmlabname_size:3,swarmlabname_git:"",hybridshowdata:{},issocket:"close",setFilter:{},searchFor:{},resetFilter:{}}},beforeMount(){this.socketopen(),this.socketauthenticate()},mounted(){this.$root.$on("SERVER_build_set_buildpid",t=>{this.buildpid=t.pid}),this.$root.$on("BUILD_hybrid_show_info",t=>{this.$nextTick((function(){this.hybridshowdata=t,this.addNetworkMenou=!1,this.selectedNetworks=[],this.localNetworkoptions=[],this.localNetworkdefault=""}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token");f.dispatch("pipelineLLO/settoken",{token:this.token});this.socketopen()},beforeDestroy(){this.$root.$off("BUILD_hybrid_show_info"),this.$root.$off("SERVER_build_set_buildpid")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{async onAction(t){if("container-logs"==t)console.log("logs---------- "+JSON.stringify(this.hybridshowdata));else if("container-build-info"==t){var e='\n \n
\n
\n

Tips and caveats

\n\n
\n
\n
Install software
\n
\n

\n Vagrant, Packer and VirtualBox must be installed\n

\n

\n You can find installation instructions here\n

\n\n\n
\x3c!-- list --\x3e\n\n
\x3c!-- col --\x3e\n
\x3c!-- row --\x3e\n
\n ';this.$swal({type:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"ok! "})}else if("container-build"==t){e='\n \n
\n
\n

Tips and caveats

\n\n
\n
\n
Disk space
\n
\n

\n You need to run Builder on a machine with a lot of free disk space (sometimes 50 GB or more).
The installation media, VM(s) and box(es) take considerable amounts of space, at least temporarily.\n

\n
\x3c!-- list --\x3e\n\n
\n
\n
Time
\n
\n

\n Building a box can easily take several hours, most notably because installing OS updates is time-consuming.\n

\n
\x3c!-- list --\x3e\n \n
\n
\n
Incompatibilities
\n
\n

\n Beware of version incompatibilities of hypervisors.\n \n For example a box built with VirtualBox 6.0 refusing to run on VirtualBox 5.
\n
\n If in doubt, deliberately use older hypervisor versions on the build machine.\n

\n
\x3c!-- list --\x3e\n\n
\n
\n
Output
\n
\n

\n The output of a successful build is a .box file.\n

\n
\x3c!-- list --\x3e\n \n
\n
\n
Install software
\n
\n

\n With ansible you can install additional software into the box,\n

\n
\x3c!-- list --\x3e\n \n\n
\x3c!-- col --\x3e\n
\x3c!-- row --\x3e\n
\n ';this.$swal({type:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"Create the box! "}).then(t=>{this.buildAndClose(t)})}else if("container-stop"==t){var a={};a.pid=this.buildpid,console.log("PID "+this.buildpid),this.$root.$emit("SERVER_build_kill",a)}else"stop"==t&&this.$socket.client.emit("stop",this.swarmlabname)},async buildAndClose(t){var e={};if(e.name=this.hybridshowdata.name,e.dir=this.hybridshowdata.dir,e.config=this.hybridshowdata.config,console.log("value result "+JSON.stringify(t)),console.log("value obj "+JSON.stringify(e)),t.isConfirmed){console.log("yes"),this.$root.$emit("SERVER_build_image",e);var a='\n \n
\n
\n\n

\n You can track the pending box creation from the embeded console or the graphical interface that will open.\n

\n\n

\n There will also be a spinny wheel above the console indicating work in proccess.\n

\n\n

\n Please note that closing the window(graphical) WILL NOT terminate the process.\n

\n\n

\n If you wish to forcefully stop you should use the STOP button.\n

\n\n

\n Note that the stop operation itself may take a little time.\n

\n\n

\n When the proccess is done you should see something like this:\n\n
\n ==> Builds finished. The artifacts of successful builds are:\n
\n --\x3e virtualbox-iso: \'virtualbox\' provider box: ../../builds/ubuntu-18.04.virtualbox.box\n
\n Build \'virtualbox-iso\' finished after 1 hour 30 minutes 28 seconds\n

\n\n\n
\x3c!-- col --\x3e\n
\x3c!-- row --\x3e\n
\n ';this.$swal({type:"info",html:a,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"ok! "})}else console.log("no")}},actions:{}},Ae=ke,xe=(a("51b6"),Object(O["a"])(Ae,Ce,_e,!1,null,null,null)),Oe=xe.exports,Se=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-info",attrs:{round:"",type:"button"},on:{click:t.setRefresh}},[t._v(" Refresh table")])]),s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search by Name"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actions",fn:function(e){return s("div",{},[t.actionrowindex==e.rowIndex?s("button",{staticClass:"ti-more-alt btn btn-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}):s("button",{staticClass:"ti-more btn btn-outline-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}})])}},{key:"actionslocal",fn:function(e){return s("div",{},[s("div",{staticClass:"d-flex justify-content-center"},[t.build_file[e.rowData.name]==e.rowData.name?s("button",{staticClass:"ti-trash btn btn-info btn-sm",attrs:{title:"Remove Lab_Instance",round:""},on:{click:function(a){return t.onAction("view-item",e.rowData,e.rowIndex)}}}):t._e()])])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},Ie=[],Le={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{actionrowindex:"",playbookInfo:{},token:"",build_file:{},playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"name",title:'Name',sortField:"name",visible:!0,dataClass:"text-left text-wrap text-break break-word",width:"65%"},{name:"Image",title:'Image',visible:!1,dataClass:"left aligned w-25",width:"15%",formatter(t){const e=/^ondemand_playground/.test(t);if(e){var a='

Playground

';return a}a='

Lab

';return a}},{name:"_id",title:'mongo',visible:!1},{name:"Status",title:'Status',sortField:"Status",titleClass:"center aligned",visible:!0,width:"10%"},{name:"ID",sortField:"ID",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actionslocal",title:"Box",titleClass:"center",dataClass:"center aligned",width:"5%"},{name:"__slot:actions",title:"Actions",titleClass:"center aligned",dataClass:"center aligned",width:"5%"}],apiurl:d.url_80+"/buildservices",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"name",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts",tutor:"yes"}}},mounted(){this.$root.$on("SERVER_build_close_build",t=>{if(console.log("build from server "+JSON.stringify(t)),"ok"==t.build&&"false"!==t.file?(s["default"].set(this.build_file,t.name,t.name),console.log("build ok "+JSON.stringify(this.build_file))):(s["default"].delete(this.build_file,t.name),console.log("build no "+JSON.stringify(this.build_file))),"yes"==t.homefile_exist){console.log("build no "+JSON.stringify(t.homefile));var e=`\n \n
\n
\n \n
File exists
\n
Error: You cannot Create a VM that already exists.
\n
Please rename or remove the file and Retry
\n

\n ${t.homefile}\n

\n
\x3c!-- col --\x3e\n
\x3c!-- row --\x3e\n
\n `;this.$swal({type:"info",html:e,icon:"info",showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!1,confirmButtonText:"ok! "})}s["default"].nextTick(()=>this.$refs.vuetable.refresh())})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("SERVER_build_close_build")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setRefresh(){this.moreParams={filter:"",type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){this.actionrowindex=a;var s={};s.name=e.name,s.dir=e.dir,s.config=e.config,this.$root.$emit("BUILD_hybrid_show_info",e),console.log("index "+this.actionrowindex),console.log("data "+JSON.stringify(s)),"view-item"==t?(console.log("data"+JSON.stringify(e)),console.log("index "+JSON.stringify(a)),console.log("build info "+JSON.stringify(this.build_file))):"delete-item"==t&&this.$swal({type:"info",html:info+winfo,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"})},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},Re=Le,$e=(a("83ff"),Object(O["a"])(Re,Se,Ie,!1,null,null,null)),Ne=$e.exports,De={components:{ViewNetwork:Oe,AdhocView:mt,card:I,BuilderServices:Ne},data(){return{loading:!1,consoleView:"off",productIndex:1}},mounted(){},beforeDestroy(){},created(){}},Be=De,Ee=Object(O["a"])(Be,ge,ye,!1,null,null,null),Te=Ee.exports,Pe=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-6 order-first "},[a("br"),a("mydeploy-manage-bootstrap")],1),a("div",{staticClass:"col-6 order-last"},[a("br"),a("mydeploy-manage-view")],1)])])},Fe=[],Ve=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("0ed5"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Swarmlab hybrid Deploy")])])]),s("br"),s("b-row",[s("b-col",{attrs:{cols:"8"}},[s("ValidationProvider",{ref:"hybrid_image",attrs:{name:"Image",rules:"required|alpha_num_image"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.image,expression:"deploy.image"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.image,"is-invalid":2==t.isDeployValid.image},attrs:{type:"text",name:"Image","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Image"},domProps:{value:t.deploy.image},on:{keyup:function(e){return t.isValid("image")},input:function(e){e.target.composing||t.$set(t.deploy,"image",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("image")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1),s("b-col",{attrs:{cols:"4"}},[s("ValidationProvider",{ref:"hybrid_stackname",attrs:{name:"StackName",rules:"required|alpha_num_name"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.stackname,expression:"deploy.stackname"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.stackname,"is-invalid":2==t.isDeployValid.stackname},attrs:{type:"text",name:"StackName","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"StackName"},domProps:{value:t.deploy.stackname},on:{keyup:function(e){return t.isValid("stackname")},input:function(e){e.target.composing||t.$set(t.deploy,"stackname",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("stackname")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1)],1),s("b-row",[s("b-col",{attrs:{cols:"8"}},[s("ValidationProvider",{ref:"hybrid_name",attrs:{name:"Name",rules:"required|alpha_num_name"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.name,expression:"deploy.name"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.name,"is-invalid":2==t.isDeployValid.name},attrs:{type:"HybridError",name:"Name","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Name"},domProps:{value:t.deploy.name},on:{keyup:function(e){return t.isValid("name")},input:function(e){e.target.composing||t.$set(t.deploy,"name",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("name")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1),s("b-col",{attrs:{cols:"4"}},[s("ValidationProvider",{ref:"hybrid_network",attrs:{name:"Network",rules:"required|alpha_num_name"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.network,expression:"deploy.network"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.network,"is-invalid":2==t.isDeployValid.network},attrs:{type:"text",name:"Network","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Network Name"},domProps:{value:t.deploy.network},on:{keyup:function(e){return t.isValid("network")},input:function(e){e.target.composing||t.$set(t.deploy,"network",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("network")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1)],1),s("b-row",[s("b-col",{attrs:{cols:"4"}},[s("ValidationProvider",{ref:"hybrid_cpu",attrs:{name:"Cpu",rules:"required|alpha_num_cpu"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.cpu,expression:"deploy.cpu"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.cpu,"is-invalid":2==t.isDeployValid.cpu},attrs:{type:"text",name:"Cpu","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Limit CPU e.g. 0.50"},domProps:{value:t.deploy.cpu},on:{keyup:function(e){return t.isValid("cpu")},input:function(e){e.target.composing||t.$set(t.deploy,"cpu",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("cpu")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1),s("b-col",{attrs:{cols:"4"}},[s("ValidationProvider",{ref:"hybrid_memory",attrs:{name:"Memory",rules:"required|alpha_num_memory"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.memory,expression:"deploy.memory"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.memory,"is-invalid":2==t.isDeployValid.memory},attrs:{type:"text",name:"Memory","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Limit Memory e.g. 500"},domProps:{value:t.deploy.memory},on:{keyup:function(e){return t.isValid("memory")},input:function(e){e.target.composing||t.$set(t.deploy,"memory",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("memory")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1),s("b-col",{attrs:{cols:"4"}},[s("ValidationProvider",{ref:"hybrid_networkport",attrs:{name:"Networkport",rules:"mybetween:1,65535"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.networkport,expression:"deploy.networkport"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.networkport,"is-invalid":2==t.isDeployValid.networkport},attrs:{type:"text",name:"Networkport","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Net Port (inside the container)"},domProps:{value:t.deploy.networkport},on:{keyup:function(e){return t.isValid("networkport")},input:function(e){e.target.composing||t.$set(t.deploy,"networkport",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("networkport")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1)],1),s("b-row",[s("b-col",{attrs:{cols:"12"}},[s("ValidationProvider",{ref:"hybrid_url",attrs:{name:"Url",rules:"required|alpha_url"},scopedSlots:t._u([{key:"default",fn:function(e){var a=e.errors;e.ariaMsg,e.ariaInput,e.valid,e.invalid;return[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.url,expression:"deploy.url"}],staticClass:"form-control",class:{"is-valid":1==t.isDeployValid.url,"is-invalid":2==t.isDeployValid.url},attrs:{type:"text",name:"Url","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"link to README file (see info button for more)"},domProps:{value:t.deploy.url},on:{keyup:function(e){return t.isValid("url")},input:function(e){e.target.composing||t.$set(t.deploy,"url",e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"ti-info btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:function(e){return t.showInfo("url")}}})])]),s("span",{staticClass:"hybrid-field-error"},[t._v(t._s(a[0]))])]}}])})],1)],1),s("b-row",[s("b-col",{attrs:{cols:"6"}},[s("div",{staticClass:"input-group input-group-sm mb-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button"}},[t._v("Start date ")])]),s("date-picker",{attrs:{type:"date",autocomplete:"off",format:"YYYY-MM-DD",lang:"en"},model:{value:t.deploy.startdate,callback:function(e){t.$set(t.deploy,"startdate",e)},expression:"deploy.startdate"}})],1)]),s("b-col",{attrs:{cols:"6"}},[s("div",{staticClass:"input-group input-group-sm mb-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button"}},[t._v("Start time")])]),s("date-picker",{attrs:{type:"time",format:"HH:mm","show-hour":"","show-minute":"","time-picker-options":t.timePickerOptions,lang:"en"},model:{value:t.deploy.starttime,callback:function(e){t.$set(t.deploy,"starttime",e)},expression:"deploy.starttime"}})],1)])],1),s("b-row",[s("b-col",{attrs:{cols:"6"}},[s("div",{staticClass:"input-group input-group-sm mb-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button"}},[t._v("End date ")])]),s("date-picker",{attrs:{type:"date",autocomplete:"off",format:"YYYY-MM-DD",lang:"en"},model:{value:t.deploy.enddate,callback:function(e){t.$set(t.deploy,"enddate",e)},expression:"deploy.enddate"}})],1)]),s("b-col",{attrs:{cols:"6"}},[s("div",{staticClass:"input-group input-group-sm mb-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button"}},[t._v("End time")])]),s("date-picker",{attrs:{type:"time",format:"HH:mm","show-hour":"","show-minute":"","time-picker-options":t.timePickerOptions,lang:"en"},model:{value:t.deploy.endtime,callback:function(e){t.$set(t.deploy,"endtime",e)},expression:"deploy.endtime"}})],1)])],1),s("b-row",[s("b-col",{attrs:{cols:"6"}},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("div",{staticClass:"input-group-prepend"},[s("button",{staticClass:"ti-cloud-up btn btn-outline-success",attrs:{round:"",type:"button",title:"Deploy"},on:{click:function(e){return t.add_deploy()}}},[t._v(" Deploy ")])])])]),s("b-col",{attrs:{cols:"2"}}),s("b-col",{attrs:{cols:"4"}},[s("div",{staticClass:"custom-control custom-switch"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.deploy.usersjoin,expression:"deploy.usersjoin"}],staticClass:"custom-control-input",attrs:{type:"checkbox",id:"customStack",value:"true","unchecked-value":"false"},domProps:{checked:Array.isArray(t.deploy.usersjoin)?t._i(t.deploy.usersjoin,"true")>-1:t.deploy.usersjoin},on:{change:function(e){var a=t.deploy.usersjoin,s=e.target,i=!!s.checked;if(Array.isArray(a)){var o="true",n=t._i(a,o);s.checked?n<0&&t.$set(t.deploy,"usersjoin",a.concat([o])):n>-1&&t.$set(t.deploy,"usersjoin",a.slice(0,n).concat(a.slice(n+1)))}else t.$set(t.deploy,"usersjoin",i)}}}),s("label",{staticClass:"custom-control-label",attrs:{for:"customStack"}},[t._v("Users can join the lab instance")])])])],1)],1)],1)},Ge=[],Me=a("ec45");a("411c");Object(N["b"])("alpha_num",D["a"]),Object(N["b"])("mybetween",D["b"]),Object(N["b"])("mybetween",{message:"The {_field_} field must be a number: 1-65535"}),Object(N["b"])("alpha_num_image",t=>{var e=new RegExp(/^[A-Za-z0-9\:\.\-\_\/]+$/,"i");return!!e.test(t)||"The {_field_} field may contain alphabetic characters, numbers, colons, hyphens, slashes, dots and underscores"}),Object(N["b"])("alpha_num_name",t=>{var e=new RegExp(/^[A-Za-z0-9]+$/,"i");return!!e.test(t)||"The {_field_} field may contain alphabetic characters and numbers"}),Object(N["b"])("alpha_num_cpu",t=>{var e=new RegExp(/^(?!0\d)\d+(?:\.\d{1})?$/);return!!e.test(t)||"The {_field_} field may contain numbers and dots e.g 0.5"}),Object(N["b"])("alpha_num_memory",t=>{var e=new RegExp(/^[0-9]+$/,"i");return!!e.test(t)||"The {_field_} field may contain numbers e.g 500"}),Object(N["b"])("alpha_url",t=>{var e=new RegExp(/https?:\/\/(git\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/,"i");return!!e.test(t)||"The {_field_} field may contain url"}),Object(N["b"])("required",{...D["c"],message:"This field is required"});var je={components:{DatePicker:Me["a"],ValidationProvider:N["a"],card:I},props:{},data(){return{isHybridError:!1,isHybridSuccess:!1,token:"",timePickerOptions:{start:"00:00",step:"00:30",end:"23:30"},deploy:{usersjoin:!0},isDeployValid:{image:3,name:3,stackname:3,network:3,url:3,cpu:3,memory:3},isDeployError:{}}},mounted(){},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){},computed:{},methods:{async add_deploy(){var t=Object.entries(this.deploy),e=new Promise((e,a)=>{t.forEach((t,a,s)=>{this.isValid(s[a][0]),a===s.length-1&&e()})});e.then(()=>{(async()=>{var t=!0;for(const[a,s]of Object.entries(this.isDeployValid))1!=s&&(t=!1);if(t){await f.dispatch("pipelineLLO/adddeploy",{token:this.token,deploy:this.deploy});this.$root.$emit("hybrid_refresh_bootstrap_view"),console.log("ok");var e='
The deploy process is started
Please wait for it to finish before trying again!

See also in "Manage your deployments" table';this.$swal({type:"Info",title:"Info!",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}else{e="Missing required fields";this.$swal({type:"Info",title:"Info!",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}})()})},async showInfo(t){if("image"==t)var e='
To start, we need to have a docker image
\n
We have built some. You can find it here: Menu "Images"
\n
More Info here: Wikipedia , Docker
\n
\n
\n The field may contain alphabetic characters, numbers, colons, hyphens, slashes, dots and underscores\n';else if("stackname"==t)e="
To start, we need to have a Stack Name
\n
This will bring up all the services, volumes, networks and everything else
in an isolated environment.\n
\n
\n
\n The field may contain alphabetic characters and numbers\n";else if("network"==t)e="
To start, we need to have a Network
\n
This will bring up all the services, volumes, networks and everything else
in an isolated network environment.\n
\n
\nServices running inside any of this networks containers have access (not limited by any firewall) to all other services.\n
\n
\n
\n
\n The field may contain alphabetic characters and numbers\n\n";else if("url"==t)e="
Git Repo url
\n
The location of the file describing your service. (most comonly README)
\n
\n
\n\n
\n
\n The field may contain any valid url BUT it must be under https://git.swarmlab.io\n";else if("networkport"==t)e="
Network Port
\n
\n
\nBy default, when you create a container, it does not publish any of its ports to the outside world. \n
\nTo make a port available to Services which are not connected to the Stack network, we use this port. \n
\n
\n
\n\nTo make a service available we have to know the port number used by these service inside the container.\n\n
\nPlease insert that here.\n
\n
\n
\n(The port for outside connections is automatically generated and you dont have to worry about it!)\n
\n
\n The field may contain numbers\n";else if("cpu"==t)e="
To start, we need to have a CPU Limit
\n
Limit the specific CPUs or cores a container can use\n
\n
\n
\nThe field may contain numbers and dots e.g 0.5\n";else if("memory"==t)e="
To start, we need to have a Memory Limit \n

Limit the specific Memoty a container can use
\ne.g 200\n
\n(MB)\n
\n
\n
\n
\n\nIt is important not to allow a running container to consume too much of the host machine’s memory.\n\n
\n
\n
\n The field may contain numbers\n";else if("name"==t)e="
To start, we need to have a Name
\nThis name is only for your own use. The system completely disregards it!\n
\n
\n
\n The field may contain alphabetic characters and numbers\n";this.$swal({type:"Info",title:"Info!",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},async isValid(t){if("image"==t){var e=await this.$refs.hybrid_image.validate();1==e.valid?this.isDeployValid.image=1:this.isDeployValid.image=2}else if("stackname"==t){e=await this.$refs.hybrid_stackname.validate();1==e.valid?this.isDeployValid.stackname=1:this.isDeployValid.stackname=2}else if("network"==t){e=await this.$refs.hybrid_network.validate();1==e.valid?this.isDeployValid.network=1:this.isDeployValid.network=2}else if("url"==t){e=await this.$refs.hybrid_url.validate();1==e.valid?this.isDeployValid.url=1:this.isDeployValid.url=2}else if("networkport"==t){e=await this.$refs.hybrid_networkport.validate();1==e.valid?this.isDeployValid.networkport=1:this.isDeployValid.networkport=2}else if("cpu"==t){e=await this.$refs.hybrid_cpu.validate();1==e.valid?this.isDeployValid.cpu=1:this.isDeployValid.cpu=2}else if("memory"==t){e=await this.$refs.hybrid_memory.validate();1==e.valid?this.isDeployValid.memory=1:this.isDeployValid.memory=2}else if("name"==t){e=await this.$refs.hybrid_name.validate();1==e.valid?this.isDeployValid.name=1:this.isDeployValid.name=2}}},actions:{}},ze=je,Ye=(a("aa1b"),Object(O["a"])(ze,Ve,Ge,!1,null,null,null)),Ue=Ye.exports,qe=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{directives:[{name:"show",rawName:"v-show",value:0==t.hybridshowlog,expression:"hybridshowlog==false"}],staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("f467"),alt:"..."}})]),s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{attrs:{fluid:""}},[s("div",{directives:[{name:"show",rawName:"v-show",value:0==t.hybridshowlog,expression:"hybridshowlog==false"}],staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Manage your deployments")])])]),s("br"),s("div",{directives:[{name:"show",rawName:"v-show",value:t.hybridshowlog,expression:"hybridshowlog"}],staticClass:"row"},[s("div",{staticClass:"col-12"},[s("log-view")],1)]),s("div",{staticClass:"row"},[s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapstackname&&0==t.hybridshowlog?s("button",{staticClass:"btn btn-outline-info",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionLog(1)}}},[t._v(" Show logs ")]):t._e(),t.hybridshowdata.bootstrapstackname&&1==t.hybridshowlog?s("button",{staticClass:"btn btn-outline-warning",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionLog(2)}}},[t._v(" Close logs ")]):t._e()])]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapstackname?s("button",{staticClass:"btn btn-outline-danger",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("stack-stop")}}},[t._v(" Remove Stack ")]):t._e()])]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapnameid&&t.hybridshowdata.status?s("button",{staticClass:"btn btn-outline-danger",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("service-stop")}}},[t._v(" Remove Service ")]):t._e()])]),s("div",{staticClass:"col-3 text-info"},[s("div",{staticClass:"input-group-prepend"},[t.hybridshowdata.bootstrapnameid&&t.hybridshowdata.status?s("button",{staticClass:"btn btn-outline-warning",attrs:{round:"",type:"button"},on:{click:function(e){return t.onActionHybrid("service-restart")}}},[t._v(" Restart Service ")]):t._e()])])]),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Instances ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.Replicas)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Image ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapimage)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Names ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapname)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" EndAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapdateend)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Networks ")]),s("div",{staticClass:"col-3 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapnetwork)+" ")]),s("div",{staticClass:"col-2 text-info"},[t._v(" BeginAt ")]),s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.bootstrapdatebegin)+" ")])]):t._e(),t._v(" "),t.hybridshowdata.bootstrapstackname?s("div",{staticClass:"row"},[s("div",{staticClass:"col-2 text-info"},[t._v(" Status ")]),t.hybridshowdata.status?s("div",{staticClass:"col-3 text-secondary"},[s("span",{staticClass:"ti-check text-success"})]):s("div",{staticClass:"col-3 text-secondary"},[s("span")]),s("div",{staticClass:"col-2 text-info"},[t._v(" Ports ")]),0!=t.hybridshowdata.ports?s("div",{staticClass:"col-4 text-secondary"},[t._v(" "+t._s(t.hybridshowdata.ports)+" ")]):s("div",{staticClass:"col-4 text-secondary"})]):t._e()]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search By StackName"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actions",fn:function(e){return s("div",{},[t.actionrowindex==e.rowIndex?s("button",{staticClass:"ti-more-alt btn btn-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}):s("button",{staticClass:"ti-more btn btn-outline-secondary btn-sm",attrs:{round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}})])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},He=[],Ke=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("3606"),alt:"..."}})]),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:" col text-center"},[s("v-wait",{attrs:{for:"myRunInstance1"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c"),width:"50",height:"50"}}),t._v(" Lab_Instance... ")])])],2),t.extenderror?s("button",{staticClass:"btn btn-outline-danger btn-sm",attrs:{type:"button",round:""},on:{click:function(e){return t.runextenderror()}}},[t._v(" Error: max depth exceeded")]):t._e(),t.tryConsole?s("button",{staticClass:"btn btn-outline-warning btn-sm",attrs:{type:"button",round:""},on:{click:function(e){return t.clear()}}},[t._v(" Clear")]):t._e(),s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{type:"button",round:"",disabled:""}},[t._v(" Console")]),"sublime"==t.cmOptions.keyMap?s("button",{staticClass:"btn btn-outline-info btn-sm",attrs:{type:"button",round:""},on:{click:t.infoFilter}},[t._v(" i")]):t._e()],1),s("div",{staticClass:"codemirror"},[s("codemirror",{ref:"myCm",attrs:{value:t.code,options:t.cmOptions},on:{cursorActivity:t.onCmCursorActivity,ready:t.onCmReady,focus:t.onCmFocus,input:t.onCmCodeChange}})],1)])],1)},We=[],Je={components:{card:I,codemirror:dt["codemirror"]},data(){return{socketonline:!1,extenderror:!1,tryConsole:!1,ssl:{},getinfo:"",token:"",swarmlabname:"",code:"",editchoice:"",optionsedit:[{text:"code",value:"code"},{text:"text",value:"text"}],llodesc:[{llo_url:"",llo_name:"",llo_author:"",llo_intro:""}],llo:[{id:0,rm:!1,data_info:"Asciidoc \n",data_code:"#Your source code",data_service:"",code_datafile:"url",code_name:"",code_exec:"",code_options:"",code_mime:"",code_info:"",code_code:"",code_codeout:"",code_codeoutput:"console",points:"",challenge_question:"",code_challenge_question:"",challenge_answer:"",challenge_answer_hint:"",code_challenge_answer_hint:"",challenge_answer_source:"",challenge_answer_code_out:"",challenge_answer_code:"",code_challenge_answer_code:""}],searchLLO:[],searchLLOactive:!1,ADOC_html_code:"",challenge:[],action:"",tryLLO:[],service:"os2",active:0,activecount:0,remove:"",activeField:"",bootstrap:!1,firstbootstrap:0,htmlasciitmp:"",datafile:"https://git.swarmlab.io:3000/labs/examples-mpi2/raw/branch/master/0_netstat/data",datadir:"0_netstat/data",LearningObject:"",showllo:!0,showlloedit:!0,selected:"sublime",options:[{text:"vim",value:"vim"},{text:"sublime",value:"sublime"}],optionsmime:[{text:"sh",value:"bash"},{text:"javascript",value:"javascript"},{text:"python",value:"python"},{text:"php",value:"php"},{text:"sql",value:"sq;"},{text:"xml",value:"xml"},{text:"c",value:"c"}],pValidate:!1,cmOptions:{tabSize:2,styleActiveLine:!0,lineNumbers:!1,lineSeparator:"\n",line:!0,foldGutter:!0,gutters:["CodeMirror-linenumbers","CodeMirror-foldgutter"],highlightSelectionMatches:{showToken:/\w/,annotateScrollbar:!0},styleSelectedText:!0,mode:"shell",hintOptions:{completeSingle:!1},keyMap:"sublime",matchBrackets:!0,showCursorWhenSelecting:!0,indentUnit:this.ADOC_html_code,lineWrapping:!0,theme:"idea",refresh:!0,readOnly:!0,autofocus:!1,extraKeys:{Ctrl:"autocomplete"}},ADOC_html:[]}},methods:{clear(){this.tryConsole=!1,this.code=""},async getdata(){var t=this.getinfo;await f.dispatch("pipelineLLO/get_data",{code:t})},async showactive(t){this.topwindow(t)},onCmReady(t){t.on("change",(t,e)=>{}),t.on("keypress",()=>{t.showHint({completeSingle:!1})})},onCmCursorActivity(t,e,a){},onCmFocus(t){},onCmCodeChange(t){this.code=t},handleChange(){},setKeymap(){this.cmOptions.keyMap=this.selected},infoFilter(){var t="

Playbook Images

",e='
Shift-Tab indentLess
Alt-Q wrapLines
Ctrl-Up scrollLineUp
Ctrl-Down scrollLineDown
Ctrl-L selectLine
Esc singleSelectionTop
Ctrl-Enter insertLineAfter
Ctrl-D selectNextOccurrence
Shift-Ctrl-Space selectScope
Shift-Ctrl-M selectBetweenBrackets
Ctrl-M goToBracket
Ctrl-K Ctrl-Y sublimeYank
Ctrl-K Ctrl-C showInCenter
Ctrl-K Ctrl-G clearBookmarks
Ctrl-K Ctrl-Backspace delLineLeft
Ctrl-K Ctrl-0 unfoldAll
Ctrl-K Ctrl-J unfoldAll
Ctrl-Alt-Up addCursorToPrevLine
Ctrl-Alt-Down addCursorToNextLine
Ctrl-F3 findUnder
Shift-Ctrl-F3 findUnderPrevious
Shift-Ctrl-[ fold
Shift-Ctrl-] unfold
Ctrl-F find
',a=(t="","");this.$swal({title:"Key bindings",type:"info",html:e+t+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1})}},computed:{codemirror(){return this.$refs.myCm.codemirror}},mounted(){this.$root.$on("hybrid_server_log_status",t=>{this.$nextTick((function(){"off"==t?this.socketonline=!1:"on"==t&&(this.socketonline=!0)}))}),this.$root.$on("hybrid_server_log_in",t=>{console.log("logsemiton "+JSON.stringify(t)),this.code+=t,this.code+="\n",this.tryConsole=!0})},beforeDestroy(){this.$root.$off("hybrid_server_log_status"),this.$root.$off("hybrid_server_log_in")},created(){this.token=new URL(location.href).searchParams.get("token"),this.swarmlabname=new URL(location.href).searchParams.get("pipelinename")}},Qe=Je,Ze=(a("f101"),Object(O["a"])(Qe,Ke,We,!1,null,null,null)),Xe=Ze.exports,ta={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"],LogView:Xe},props:{},data(){return{hybridshowlog:!1,actionrowindex:"",playbookInfo:{},hybridshowdata:{},token:"",playbook:{title:"",name:"",description:""},container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"bootstrapname",title:'Name',sortField:"bootstrapname",visible:!0,dataClass:"text-left text-wrap text-break break-word",width:"15%"},{name:"bootstrapstackname",title:'StackName',sortField:"bootstrapstackname",visible:!0,dataClass:"left aligned w-25",width:"15%"},{name:"_id",title:'mongo',visible:!1},{name:"bootstrapdatebegin5",title:'Begin',sortField:"bootstrapdatebegin5",titleClass:"center aligned",visible:!0,width:"10%"},{name:"bootstrapusersjoin",title:'Public',sortField:"bootstrapusersjoin",titleClass:"center aligned",visible:!0,width:"5%",callback:function(t){if(1==t){var e=' ';return e}e=" ";return e}},{name:"ID",sortField:"ID",titleClass:"center aligned",dataClass:"left aligned w-25",visible:!1,width:"15%"},{name:"__slot:actions",title:"Actions",titleClass:"center aligned",dataClass:"center aligned",width:"5%"}],apiurl:d.swarmlab_url_80+"/swarmlabhybridbootstrapservices",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"pipelinename",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",type:"scripts",tutor:"yes"}}},mounted(){this.$root.$on("hybrid_refresh_bootstrap_view",()=>{s["default"].nextTick(()=>this.$refs.vuetable.refresh())})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_refresh_bootstrap_view")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{async onActionLog(t){if(1==t){var e=await f.dispatch("pipelineLLO/hybrid_servicelog",{token:this.token,bootstrapnameid:this.hybridshowdata.bootstrapnameid}),a=e.data.data.data;if("ok"==e.data.data.errorexec_msg&&e.data.data.data)this.hybridshowlog=!0,this.$root.$emit("hybrid_server_log_in",a);else{var s="No logs are available";this.$swal({type:"Info",title:"LOG",icon:"info",html:s,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}}else 2==t&&(this.hybridshowlog=!1)},async onActionHybrid(t){if("stack-stop"==t){var e="
This will remove the stack with the name "+this.hybridshowdata.bootstrapstackname+"

Services, networks, and secrets associated with the stack will be removed.
";this.$swal({type:"Info",title:"Info!",icon:"warning",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"}).then(t=>{this.onActionHybrid_stackrm(t)})}else if("service-stop"==t){var a=await f.dispatch("pipelineLLO/hybrid_servicerm",{token:this.token,bootstrapstackid:this.hybridshowdata.bootstrapstackid,bootstrapnameid:this.hybridshowdata.bootstrapnameid});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}else if("service-restart"==t){a=await f.dispatch("pipelineLLO/hybrid_servicerestart",{token:this.token,bootstrapnameid:this.hybridshowdata.bootstrapnameid});s["default"].nextTick(()=>this.$refs.vuetable.refresh());e="";e="ok"==a.data.data.errorexec_msg?"
Update existing service: ok!
":"
Update existing service: error!
",this.$swal({type:"Info",title:"INFO",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}},async onActionHybrid_stackrm(t){if(t.isConfirmed){await f.dispatch("pipelineLLO/stackrm",{token:this.token,bootstrapstackid:this.hybridshowdata.bootstrapstackid});s["default"].nextTick(()=>this.$refs.vuetable.refresh())}},onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setFilter(){this.moreParams={filter:this.searchFor,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async onAction(t,e,a){this.actionrowindex=a,"view-item"==t||("run-more"==t?this.hybridshowdata=e:"delete-item"==t&&this.$swal({type:"info",html:info+winfo,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!0,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Yes, Delete it!"}))},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},ea=ta,aa=(a("7296"),Object(O["a"])(ea,qe,He,!1,null,null,null)),sa=aa.exports,ia={components:{card:I,MydeployManageBootstrap:Ue,MydeployManageView:sa},data(){return{loading:!1,consoleView:"off",productIndex:1}},mounted(){},beforeDestroy(){},created(){}},oa=ia,na=Object(O["a"])(oa,Pe,Fe,!1,null,null,null),ra=na.exports,la=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[a("div",{staticClass:"row"},[a("div",{staticClass:"col-6 order-first "},[a("br"),a("myllo-search")],1),a("div",{staticClass:"col-6 order-last"},[a("br"),a("myllo-view")],1)])])},ca=[],da=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},[t.datadir?s("img",{staticClass:"avatar border-white",attrs:{src:a("b73e"),alt:"..."}}):s("img",{staticClass:"avatar border-white",attrs:{src:a("9f0c"),alt:"..."}})]),s("v-wait",{attrs:{for:"myRunInstancetutor1"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{directives:[{name:"show",rawName:"v-show",value:t.datadir,expression:"datadir"}],staticClass:"bv-example-row",attrs:{fluid:""}},[s("b-container",{staticClass:"container"},[s("div",{staticClass:"row justify-content-center myscrool"},[s("div",{staticClass:"col-xl-10 col-12"},[s("div",{staticClass:"timeline timeline-line-solid"},[s("span",{staticClass:"timeline-label"},[s("span",{staticClass:"label"},[t._v(t._s(t.datatitle))])]),t._l(t.coursesview,(function(e,i){return s("div",{staticClass:"timeline-item"},[e.exercise_file?t._e():s("div",[s("div",{staticClass:"timeline-point timeline-point"}),s("div",{staticClass:"timeline-event shadow p-3 mb-5 bg-white rounded"},[s("div",{staticClass:"widget has-shadow"},[s("div",{staticClass:"widget-header d-flex align-items-center",class:{active:i===t.activeItem}},[s("div",{staticClass:"user-image"},[s("img",{staticClass:"rounded-circle",attrs:{src:a("7649"),alt:"..."}})]),s("div",{staticClass:"d-flex flex-column mr-auto"},[s("div",{staticClass:"title"},[s("span",{staticClass:"username"},[t._v(t._s(e.title)+" ")])])])]),s("div",{staticClass:"widget-body"},[s("p",[t._v(" "+t._s(e.subtitle)+" ")]),s("small",[t._v(t._s(e.desc))])]),s("div",{staticClass:"widget-footer d-flex align-items-center"},[s("div",{staticClass:"col-12 no-padding d-flex justify-content-end"},[s("div",{staticClass:"meta"},[s("ul",{staticClass:"list-group list-group-horizontal"},[e.doc_file?s("li",[s("a",{attrs:{href:"#"},on:{click:function(a){return t.viewllo(e,"asciidoc",i)}}},[s("small"),t._v(" "),s("span",{staticClass:"rounded-circle bg-dark text-white ti-book",attrs:{title:"doc"}})])]):t._e(),e.code_file?s("li",[s("a",{attrs:{href:"#"},on:{click:function(a){return t.viewllo(e,"asciinema",i)}}},[s("small"),s("span",{staticClass:"rounded-circle text-success ti-shortcode",attrs:{title:"asciinema"}})])]):t._e(),e.video_file?s("li",[s("a",{attrs:{href:"#"},on:{click:function(a){return t.viewllo(e,"video",i)}}},[s("small"),s("span",{staticClass:"text-info ti-video-camera",attrs:{title:"video"}})])]):t._e()])])])])])])])])}))],2)]),s("div",{staticClass:"col-xl-10 col-12"},[s("div",{staticClass:"timeline timeline-line-solid"},[s("span",{staticClass:"timeline-label"},[s("span",{staticClass:"label"},[t._v("Exercises")])]),t._l(t.coursesview,(function(e,i){return s("div",{staticClass:"timeline-item"},[e.exercise_file?s("div",[s("div",{staticClass:"timeline-point timeline-point"}),s("div",{staticClass:"timeline-event shadow p-3 mb-5 bg-white rounded"},[s("div",{staticClass:"widget has-shadow"},[s("div",{staticClass:"widget-header d-flex align-items-center",class:{active:i===t.activeItem}},[s("div",{staticClass:"user-image"},[s("img",{staticClass:"rounded-circle",attrs:{src:a("7649"),alt:"..."}})]),s("div",{staticClass:"d-flex flex-column mr-auto"},[s("div",{staticClass:"title"},[s("span",{staticClass:"username"},[t._v(t._s(e.title)+" ")])])])]),s("div",{staticClass:"widget-body"},[s("p",[t._v(" "+t._s(e.subtitle)+" ")]),s("small",[t._v(t._s(e.desc))])]),s("div",{staticClass:"widget-footer d-flex align-items-center"},[s("div",{staticClass:"col-12 no-padding d-flex justify-content-end"},[s("div",{staticClass:"meta"},[s("ul",{staticClass:"list-group list-group-horizontal"},[e.exercise_file?s("li",[s("a",{attrs:{href:"#"},on:{click:function(a){return t.viewllo(e,"exercise",i)}}},[s("small"),t._v(" "),s("span",{staticClass:"rounded-circle bg-dark text-white ti-book",attrs:{title:"Challenge"}})])]):t._e(),e.exercise_answerfile?s("li",[s("a",{attrs:{href:"#"},on:{click:function(a){return t.viewllo(e,"exerciseanswer",i)}}},[s("small"),s("span",{staticClass:"text-info ti-book",attrs:{title:"Answer"}})])]):t._e()])])])])])])]):t._e()])})),s("span",{staticClass:"timeline-label"},[s("span",{staticClass:"label"},[t._v(t._s(t.datatitle))])])],2)])])])],1),s("br"),s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{directives:[{name:"show",rawName:"v-show",value:t.datadir,expression:"datadir"}],staticClass:"progress"},[s("div",{staticClass:"progress-bar progress-bar-striped bg-secondary",style:{width:t.progress+"%"},attrs:{role:"progressbar","aria-valuenow":"25","aria-valuemin":"0","aria-valuemax":"100"}},[t._v(t._s(t.progress))])]),s("div",{staticClass:"input-group input-group-sm sm-3"},[s("input",{directives:[{name:"model",rawName:"v-model",value:t.searchFor,expression:"searchFor"}],staticClass:"form-control",attrs:{type:"text","aria-label":"Small","aria-describedby":"inputGroup-sizing-sm",placeholder:"Search by Name"},domProps:{value:t.searchFor},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.setFilter(e)},input:function(e){e.target.composing||(t.searchFor=e.target.value)}}}),s("div",{staticClass:"input-group-prepend"},[s("select",{directives:[{name:"model",rawName:"v-model",value:t.searchcourselang,expression:"searchcourselang"}],staticClass:"custom-select custom-select-sm",on:{change:function(e){var a=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.searchcourselang=e.target.multiple?a:a[0]}}},[s("option",{attrs:{value:"0",selected:""}},[t._v("Lang...")]),s("option",{attrs:{value:"1"}},[t._v("English")]),s("option",{attrs:{value:"2"}},[t._v("Ελληνικά")])])]),s("div",{staticClass:"input-group-prepend"},[s("select",{directives:[{name:"model",rawName:"v-model",value:t.searchcourselevel,expression:"searchcourselevel"}],staticClass:"custom-select custom-select-sm",on:{change:function(e){var a=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.searchcourselevel=e.target.multiple?a:a[0]}}},[s("option",{attrs:{value:"0",selected:""}},[t._v("Level...")]),s("option",{attrs:{value:"1"}},[t._v("Elementary")]),s("option",{attrs:{value:"2"}},[t._v("Intermediate")]),s("option",{attrs:{value:"3"}},[t._v("Advanced")]),s("option",{attrs:{value:"4"}},[t._v("Expert")]),s("option",{attrs:{value:"5"}},[t._v("Guru")])])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-primary",attrs:{round:"",type:"button"},on:{click:t.setFilter}},[t._v(" Go")])]),s("div",{staticClass:"input-group-append"},[s("button",{staticClass:"btn btn-outline-secondary",attrs:{round:"",type:"button"},on:{click:t.resetFilter}},[t._v(" Reset")])])]),s("vuetable",{key:t.vuetablekey,ref:"vuetable",attrs:{"api-url":t.apiurl,"api-mode":!0,"http-options":t.httpOptions,fields:t.fields,"item-actions":t.itemActions,"sort-order":t.sortOrder,"show-sort-icons":!0,"multi-sort":t.multiSort,"per-page":t.perpage,"pagination-path":"links.pagination","pagination-component":t.paginationComponent,"append-params":t.moreParams,"wrapper-class":"vuetable-wrapper","loading-class":"loading","detail-row-id":"id",css:t.css.table},on:{"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.loadsuccess,"vuetable:load-error":t.onLoadError},scopedSlots:t._u([{key:"actions",fn:function(e){return s("div",{},[t.actionrowindex==e.rowIndex?s("button",{staticClass:"ti-more-alt btn btn-secondary btn-sm",attrs:{title:"View Course Details",round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}):s("button",{staticClass:"ti-more btn btn-outline-secondary btn-sm",attrs:{title:"View Course Details",round:""},on:{click:function(a){return t.onAction("run-more",e.rowData,e.rowIndex)}}}),s("button",{staticClass:"ti-info btn btn-outline-secondary btn-sm",attrs:{title:"View Course Info",round:""},on:{click:function(a){return t.onAction("run-info",e.rowData,e.rowIndex)}}})])}}])}),s("div",{staticClass:"vuetable-pagination ui basic segment grid"},[s("vuetable-pagination-info",{ref:"paginationInfo",attrs:{css:t.css.paginationInfo}}),s("vuetable-pagination",{ref:"pagination",attrs:{css:t.css.pagination},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)],1)],1)},ua=[],pa={components:{card:I,Vuetable:C["Vuetable"],VuetablePagination:R["a"],VuetablePaginationInfo:L["a"],VuetablePaginationDropdown:C["VuetablePaginationDropdown"]},props:{},data(){return{coursesview:{},actionrowindex:"",activeItem:null,playbookInfo:{},token:"",playbook:{title:"",name:"",description:""},datadir:"",datatitle:"",progress:0,searchcourselevel:0,searchcourselang:0,courses:[],courseshow:!1,container:{name:"",view:0},pipeline:{},selected:"hybrid",options:[{text:"Packages",value:"packages"},{text:"Images",value:"images"},{text:"Scripts",value:"scripts"}],showModal:!1,visibility:[],active:!1,vuetablekey:0,fielddata:{},fields:[{name:"title",title:'Name',sortField:"title",visible:!0,dataClass:"text-left text-wrap text-break break-word",width:"20%"},{name:"subtitle",title:'Course',visible:!0,dataClass:"left aligned w-25",width:"25%"},{name:"_id",title:'mongo',visible:!1},{name:"desc",title:'Description',titleClass:"center aligned",visible:!0,width:"30%"},{name:"lang",title:'Lang',sortField:"lang",titleClass:"center aligned",dataClass:"text-center",visible:!0,width:"10%"},{name:"__slot:actions",title:'Actions',titleClass:"center aligned",dataClass:"text-center",width:"15%"}],apiurl:d.url_80+"/get_llo",css:$["a"],perpage:5,searchFor:"",sortOrder:[{field:"title",direction:"asc"}],multiSort:!0,paginationComponent:"vuetable-pagination",itemActions:[{name:"view-item",label:"",icon:"glyphicon glyphicon-zoom-in",class:"btn btn-info",extra:{title:"View","data-toggle":"tooltip","data-placement":"left"}},{name:"edit-item",label:"",icon:"glyphicon glyphicon-pencil",class:"btn btn-warning",extra:{title:"Edit","data-toggle":"tooltip","data-placement":"top"}},{name:"delete-item",label:"",icon:"glyphicon glyphicon-remove",class:"btn btn-danger",extra:{title:"Delete","data-toggle":"tooltip","data-placement":"right"}}],moreParams:{filter:"",level:"",type:"scripts",tutor:"yes"}}},mounted(){this.$root.$on("hybrid_progress_refresh",()=>{s["default"].nextTick(()=>this.getprogress(this.datadir))}),this.$root.$on("hybrid_refresh_dockerservices",()=>{}),this.$root.$on("hybrid_refresh_table",t=>{this.$nextTick((function(){s["default"].nextTick(()=>this.$refs.vuetable.refresh()),this.viewhybridoptions=!1}))})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_progress_refresh"),this.$root.$off("hybrid_refresh_dockerservices"),this.$root.$off("hybrid_refresh_table")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{async getprogress(t){var e={};e.course=this.datadir;var a=await f.dispatch("pipelineLLO/getprogress",e),s=a.data.data.progress.progress,i=this.courses.length,o=Math.floor(s/i*100);this.progress=o},checkClass(t){return"video"==t.type?"text-primary":"asciidoc"==t.type?"text-success":"asciinema"==t.type?"text-info":"exercise"==t.type?"text-warning":"text-secondary"},onError(t,e){var a=e,s="
Bootstrap "+t+"
";this.$swal({type:t,html:s+a,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})},setFilter(){this.moreParams={filter:this.searchFor,level:this.searchcourselevel,lang:this.searchcourselang,type:this.selected},s["default"].nextTick(()=>this.$refs.vuetable.refresh())},resetFilter(){this.moreParams={},this.searchFor="",s["default"].nextTick(()=>this.$refs.vuetable.refresh())},onPaginationData(t){this.$refs.pagination.setPaginationData(t),this.$refs.paginationInfo.setPaginationData(t)},onChangePage(t){this.$refs.vuetable.changePage(t)},editRow(t){alert("You clicked edit on"+JSON.stringify(t))},async viewllo(t,e,a){if(this.courseshow=!0,"video"==e){var s={};s.type=e,s.course=t.video_file,s.llo=this.datadir,this.$root.$emit("hybrid_llo_viecourse",s)}else if("asciidoc"==e){var i={};i.dir=this.datadir,i.file=t.doc_file;var o=await f.dispatch("pipelineLLO/get_llo_course_ascii",i);s={};s.type=e,s.code=o.data.data,s.course=t.doc_file,s.llo=this.datadir,this.$root.$emit("hybrid_llo_viecourse",s)}else if("asciinema"==e){s={};s.type=e,s.course=t.code_file,s.llo=this.datadir,this.$root.$emit("hybrid_llo_viecourse",s)}else if("exercise"==e){i={};i.dir=this.datadir,i.file=t.exercise_file;o=await f.dispatch("pipelineLLO/get_llo_course_ascii",i),s={type:"asciidoc"};s.code=o.data.data,s.course=t.exercise_file,s.llo=this.datadir,this.$root.$emit("hybrid_llo_viecourse",s)}else if("exerciseanswer"==e){i={};i.dir=this.datadir,i.file=t.exercise_answerfile;o=await f.dispatch("pipelineLLO/get_llo_course_ascii",i),s={type:"asciidoc"};s.code=o.data.data,s.course=t.exercise_answerfile,s.llo=this.datadir,this.$root.$emit("hybrid_llo_viecourse",s)}this.activeItem=a,this.getprogress(this.datadir)},async onAction(t,e,a){if("run-more"==t){this.actionrowindex=a,this.datadir=e.dir,this.datatitle=e.title;var s=await f.dispatch("pipelineLLO/get_llo_course",e.dir);this.courses=s.data;for(var i=Math.max.apply(Math,this.courses.map((function(t){return t.chapter}))),o=[],n=1;n<=i;n++){for(var r={},l=this.courses.filter(t=>t.chapter===n),c=l.length,d=0;d\n \n \n Title\n ${e.title}\n \n \n Subtitle\n ${e.subtitle}\n \n \n Level\n ${e.level}\n \n \n Description\n ${e.desc}\n \n \n Language\n ${e.lang}\n \n \n License\n ${e.license}\n \n \n More Info\n ${e.url}\n \n \n`;this.$swal({type:"Info",title:"Course Info!",icon:"info",html:u,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}this.getprogress(this.datadir)},refreshVuetable(){this.$nextTick(()=>{this.vuetablekey+=1})},playbookinfoShow(t){return this.visibility[t]=!0},playbookinfo(t){return this.playbookInfo=t},rowClicked(t,e){return{html:!0,title:()=>"Hello Popover: "+ ++this.counter,content:()=>"The date is:
"+new Date+""}},loadsuccess(t){var e=t.data.data;this.fielddata=e;e.length},onLoadError(t){"401"==t.response.status&&(window.location.href="https://api-login.swarmlab.io:8089",s["default"].nextTick(()=>window.location.href="https://api-login.swarmlab.io:8089"))}},actions:{}},ha=pa,ma=(a("cc7b"),Object(O["a"])(ha,da,ua,!1,null,null,null)),ba=ma.exports,fa=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"author"},["asciidoc"==t.hybridshow?s("img",{staticClass:"avatar border-white",attrs:{src:a("3784"),alt:"..."}}):t._e(),"asciinema"==t.hybridshow?s("img",{staticClass:"avatar border-white",attrs:{src:a("3606"),alt:"..."}}):t._e(),"video"==t.hybridshow?s("img",{staticClass:"avatar border-white",attrs:{src:a("2e15"),alt:"..."}}):t._e()]),s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{attrs:{fluid:""}},["asciinema"==t.hybridshow?s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("b",[t._v("Copy & Paste")]),s("br"),t._v(" Any time you see a command you'd like to try in your own terminal just pause the player "),s("br"),t._v(" and copy-paste the content you want. ")]),s("div",{staticClass:"col-12"},[s("iframe",{attrs:{id:"llo",title:"title",width:"600",height:"700",src:t.asciinemasource,allowfullscreen:"",frameborder:"0"}})])]):t._e(),"video"==t.hybridshow?s("div",{staticClass:"row text-center"},[s("iframe",{attrs:{id:"llo",width:"740",height:"500",src:t.sourcevimeo,allowfullscreen:"",frameborder:"0"},on:{load:function(e){return t.dofin()}}})]):t._e(),"asciidoc"==t.hybridshow?s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("iframe",{attrs:{id:"lloasciiview1",title:"title",width:"100%",height:"700",src:t.asciidocurl,frameborder:"0"}})])]):t._e(),"penguin"==t.hybridshow?s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("img",{attrs:{src:a("4cc0"),width:"400",height:"400"}})])]):t._e()]),s("hr"),"penguin"!=t.hybridshow?s("b-container",{staticClass:"bv-example-row",attrs:{fluid:""}},[s("div",{staticClass:"col-12"},[s("div",{staticClass:"input-group input-group-sm sm-3"},[s("select",{directives:[{name:"model",rawName:"v-model",value:t.completiontracking,expression:"completiontracking"}],staticClass:"custom-select custom-select-sm",on:{change:[function(e){var a=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.completiontracking=e.target.multiple?a:a[0]},function(e){return t.oncompletiontracking()}]}},[s("option",{attrs:{value:"0",selected:""}},[t._v("Completion tracking")]),s("option",{attrs:{value:"1"}},[t._v("Completed")]),s("option",{attrs:{value:"2"}},[t._v("Almost")])]),s("select",{directives:[{name:"model",rawName:"v-model",value:t.courseread,expression:"courseread"}],staticClass:"custom-select custom-select-sm",on:{change:[function(e){var a=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.courseread=e.target.multiple?a:a[0]},function(e){return t.oncompletiontracking()}]}},[s("option",{attrs:{value:"0",selected:""}},[t._v("Did you find this helpful?")]),s("option",{attrs:{value:"1"}},[t._v("No")]),s("option",{attrs:{value:"2"}},[t._v("Not really/A bit")]),s("option",{attrs:{value:"3"}},[t._v("Yes")])])])])]):t._e()],1)},va=[],wa=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("iframe",{attrs:{id:"llo",title:t.title,width:t.width,height:t.height,src:t.source,allowfullscreen:"",frameborder:"0"}})},ga=[],ya={props:{title:"",course:"",llo:""},data(){return{source:`http://localhost:3080/player/aplayer.html?llo=${this.llo}&item=${this.course}`,width:"600",height:"750"}},mounted(){}},Ca=ya,_a=Object(O["a"])(Ca,wa,ga,!1,null,null,null),ka=_a.exports,Aa=a("97a1"),xa=a.n(Aa),Oa={components:{aplayer:ka,card:I},props:{},data(){return{vtype:"",completiontracking:0,courseread:0,hybridshow:"penguin",llo:"",llocourse:"",llochapter:"",asciidocurl:"",asciidoccode:"",course:"",asciinemasource:"",coursevimeo:"",hybridcourse:"",token:""}},mounted(){this.$root.$on("hybrid_llo_viecourse",t=>{this.completiontracking=0,this.courseread=0,this.llocourse=t.llo,this.llochapter=t.course,"asciinema"==t.type?(this.hybridshow=t.type,this.llo=t.llo,this.course=t.course,this.asciinemasource=`http://localhost:3080/player/aplayer.html?llo=${this.llo}&item=${this.course}`,this.getcompletion()):"asciidoc"==t.type?(this.asciidoccode=t.code,this.vtype=t.type,this.addlloascii(),this.getcompletion()):"video"==t.type&&(this.$wait.start("myRunInstancetutor"),this.hybridshow=t.type,this.sourcevimeo="https://player.vimeo.com/video/"+t.course,this.getcompletion())})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_llo_viecourse")},computed:{},methods:{async getcompletion(){var t={};t.token=this.token,t.course=this.llocourse,t.chapter=this.llochapter;var e=await f.dispatch("pipelineLLO/getcompletion",t);console.log("params "+JSON.stringify(e)),"ok"==e.data.action&&e.data.data&&(this.completiontracking=e.data.data.track,this.courseread=e.data.data.evaluation)},async oncompletiontracking(){var t={};t.token=this.token,t.action="track",t.track=this.completiontracking,t.evaluation=this.courseread,t.course=this.llocourse,t.chapter=this.llochapter;await f.dispatch("pipelineLLO/oncompletiontracking",t);this.$root.$emit("hybrid_progress_refresh")},dofin(){this.$wait.end("myRunInstancetutor")},async addlloascii(){var t=this.asciidoccode;try{var e=xa()(),a=e.convert(t,{standalone:!0,backend:"html5",header_footer:!1,doctype:"article",safe:"safe",attributes:{"source-highlighter":"highlightjs",sectnums:!0,icons:"font",copycss:!0,stylesheet:"http://cdnjs.cloudflare.com/ajax/libs/asciidoctor.js/1.5.9/css/asciidoctor.min.css","iconfont-cdn":"http://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css","iconfont-name":"fontawesome-5-14.0","iconfont-remote":!0,linkcss:!0}}),s=await f.dispatch("pipelineLLO/save_llo_asciidoctmp",a);"nofile"==s.data?console.log("no write permission"):(this.asciidocurl=`http://localhost:3080/asciidoc/${s.data.data}.html?token=${this.token}`,this.hybridshow="no",this.hybridshow=this.vtype)}catch(i){return void console.log(" ascerror "+JSON.stringify(i))}}},actions:{}},Sa=Oa,Ia=(a("4844"),Object(O["a"])(Sa,fa,va,!1,null,null,null)),La=Ia.exports,Ra={components:{card:I,MylloSearch:ba,MylloView:La},data(){return{loading:!1,consoleView:"off",productIndex:1}},mounted(){},beforeDestroy(){},created(){}},$a=Ra,Na=Object(O["a"])($a,la,ca,!1,null,null,null),Da=Na.exports,Ba=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{staticClass:"row"},[s("div",{staticClass:"col-8 order-first "},[s("br"),s("calendar-view")],1),s("div",{staticClass:"col-4 order-last"},[s("br"),s("b-container",{directives:[{name:"show",rawName:"v-show",value:1==t.hybridshowlog,expression:"hybridshowlog==1"}],attrs:{fluid:""}},[s("div",{staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("img",{staticClass:"border-white",attrs:{src:a("10cc"),alt:"..."}})])])]),s("calendar-view-events",{directives:[{name:"show",rawName:"v-show",value:2==t.hybridshowlog,expression:"hybridshowlog==2"}]})],1)])])},Ea=[],Ta=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{attrs:{id:"appcalendar"}},[a("div",{staticClass:"calendar-parent"},[a("calendar-view",{class:t.themeClasses,attrs:{items:t.items,"show-date":t.showDate,"time-format-options":{hour:"numeric",minute:"2-digit"},"enable-drag-drop":!1,"disable-past":t.disablePast,"disable-future":t.disableFuture,"show-times":t.showTimes,"display-period-uom":t.displayPeriodUom,"display-period-count":t.displayPeriodCount,"starting-day-of-week":t.startingDayOfWeek,"period-changed-callback":t.periodChanged,"current-period-label":t.useTodayIcons?"icons":"",displayWeekNumbers:t.displayWeekNumbers,"enable-date-selection":!0,"selection-start":t.selectionStart,"selection-end":t.selectionEnd,timeFormatOptions:t.timeFormatOptions},on:{"date-selection-start":t.setSelection,"date-selection":t.setSelection,"date-selection-finish":t.finishSelection,"drop-on-date":t.onDrop,"click-date":t.onClickDay,"click-item":t.onClickItem},scopedSlots:t._u([{key:"header",fn:function(e){var s=e.headerProps;return a("calendar-view-header",{attrs:{"header-props":s},on:{input:t.setShowDate}})}}])})],1)])},Pa=[],Fa=a("be6a");a("8bb7"),a("88ef");var Va={components:{card:I,CalendarView:Fa["b"],CalendarViewHeader:Fa["c"]},mixins:[Fa["a"]],data(){return{showDate:this.thisMonth(1),message:"",startingDayOfWeek:1,disablePast:!1,disableFuture:!1,displayPeriodUom:"month",displayPeriodCount:1,displayWeekNumbers:!0,showTimes:!1,selectionStart:null,selectionEnd:null,newItemTitle:"",newItemStartDate:"",newItemEndDate:"",useDefaultTheme:!0,useHolidayTheme:!1,useTodayIcons:!0,timeFormatOptions:{hour:"numeric",minute:"numeric",hour12:!1,timeZone:"Europe/Athens"},begindate:"",enddate:"",items:[]}},computed:{getevents4month(){},userLocale(){return this.getDefaultBrowserLocale},dayNames(){return this.getFormattedWeekdayNames(this.userLocale,"long",0)},themeClasses(){return{"theme-default":this.useDefaultTheme,"holiday-us-traditional":this.useHolidayTheme,"holiday-us-official":this.useHolidayTheme}}},mounted(){this.newItemStartDate=this.isoYearMonthDay(this.today()),this.newItemEndDate=this.isoYearMonthDay(this.today());const t=new Date;let e=t.getFullYear(),a=(t.getMonth()+1).toString().padStart(2,"0"),s="01";this.begindate=`${e}-${a}-${s}`,this.enddate=`${e}-${a}-31`,this.getevents()},methods:{async getevents(){var t={};t.begin=this.begindate,t.end=this.enddate;var e=await f.dispatch("pipelineLLO/getevents",t);this.items=e.data.result},periodChanged(t){let e=t.periodStart,a=e.getFullYear(),s=(e.getMonth()+1).toString().padStart(2,"0"),i=e.getDate().toString().padStart(2,"0");this.begindate=`${a}-${s}-${i}`;let o=t.periodEnd,n=o.getFullYear(),r=(o.getMonth()+1).toString().padStart(2,"0"),l=o.getDate().toString().padStart(2,"0");this.enddate=`${n}-${r}-${l}`,this.getevents()},thisMonth(t,e,a){const s=new Date;return new Date(s.getFullYear(),s.getMonth(),t,e||0,a||0)},onClickDay(t){this.selectionStart=null,this.selectionEnd=null,this.message="You clicked: "+t.toLocaleDateString()},onClickItem(t){this.message="You clicked: "+t.title,this.$root.$emit("hybrid_labobject_view",t)},setShowDate(t){this.message="Changing calendar view to "+t.toLocaleDateString(),this.showDate=t},setSelection(t){this.selectionEnd=t[1],this.selectionStart=t[0]},finishSelection(t){this.setSelection(t),this.message=`You selected: ${this.selectionStart.toLocaleDateString()} -${this.selectionEnd.toLocaleDateString()}`},onDrop(t,e){this.message=`You dropped ${t.id} on ${e.toLocaleDateString()}`;const a=this.dayDiff(t.startDate,e);t.originalItem.startDate=this.addDays(t.startDate,a),t.originalItem.endDate=this.addDays(t.endDate,a)},clickTestAddItem(){this.items.push({startDate:this.newItemStartDate,endDate:this.newItemEndDate,title:this.newItemTitle,id:"e"+Math.random().toString(36).substr(2,10)}),this.message="You added a calendar item!"}}},Ga=Va,Ma=(a("c5ed"),Object(O["a"])(Ga,Ta,Pa,!1,null,null,null)),ja=Ma.exports,za=function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("card",{staticClass:"card-user",staticStyle:{"max-height":"100%"}},[s("div",{directives:[{name:"show",rawName:"v-show",value:1==t.hybridshowlog,expression:"hybridshowlog==true"}],staticClass:"author"},[s("img",{staticClass:"avatar border-white",attrs:{src:a("9f0c"),alt:"..."}})]),s("v-wait",{attrs:{for:"myRunInstancetutor"}},[s("template",{slot:"waiting"},[s("div",[s("img",{attrs:{src:a("cf1c")}}),t._v(" Enter Lab_room... ")])])],2),s("b-container",{attrs:{fluid:""}},[s("div",{directives:[{name:"show",rawName:"v-show",value:1==t.hybridshowlog,expression:"hybridshowlog==true"}],staticClass:"row text-center"},[s("div",{staticClass:"col-12"},[s("table",{staticClass:"table table-hover"},[s("tbody",[s("tr",[s("th",{attrs:{scope:"row"}},[t._v("Title")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.title)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("Type")]),s("td",[t._v(" "+t._s(t.labtext.originalItem.type)+" ")]),s("td",[t._v(" "+t._s(t.labtext.originalItem.lang)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("Description")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.desc)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("More info")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.url)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("Level")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.Level)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("Prerequisites")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.Prerequisites)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("startDate")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.startDate)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("endDate")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.endDate)+" ")])]),s("tr",[s("th",{attrs:{scope:"row"}},[t._v("url")]),s("td",{attrs:{colspan:"2"}},[t._v(" "+t._s(t.labtext.originalItem.urltype)+" ")])])])])])])])],1)},Ya=[],Ua={components:{card:I},props:{},data(){return{hybridshowlog:!1,labtext:{},token:""}},mounted(){this.$root.$on("hybrid_labobject_view",t=>{this.hybridshowlog=!0,this.labtext=t})},created(){var t=window.location.href,e=new URL(t);this.token=e.searchParams.get("token")},beforeDestroy(){this.$root.$off("hybrid_labobject_view")},computed:{httpOptions(){var t=this.token;return{headers:{Authorization:"Bearer "+t}}}},methods:{},actions:{}},qa=Ua,Ha=(a("e24e"),Object(O["a"])(qa,za,Ya,!1,null,null,null)),Ka=Ha.exports,Wa={components:{card:I,CalendarView:ja,CalendarViewEvents:Ka},data(){return{hybridshowlog:1,loading:!1,consoleView:"off",productIndex:1}},mounted(){this.$root.$on("hybrid_labobject_view",t=>{this.hybridshowlog=2})},beforeDestroy(){},created(){}},Ja=Wa,Qa=Object(O["a"])(Ja,Ba,Ea,!1,null,null,null),Za=Qa.exports,Xa={name:"app",components:{NetworkTable:At,ViewDashboard:Za,ServicesTable:Tt,ConnectServer:X,ManageServices:Kt,ManageStorage:ne,ManageMicroservices:we,ManageBuilders:Te,ManageDeploy:ra,ManageLlo:Da},data(){return{warning:!0,componentKeyreload:1,componentKeyreload1:1,componentKeyreload2:1,componentKeyreload3:1,componentKeybuilders:1,setStatusAgent:"",issocket:!1,isconnect:!1,activeItem:"",activeItemSub:"",sidemenou:"max",hybridmenou:"dashboard",show:!0,token:"",SwarmabAsciiLabTemplate:""}},mounted(){this.$root.$on("hybrid_server_status",t=>{this.serverstatus()})},beforeDestroy(){this.$root.$off("hybrid_server_status")},created(){},methods:{setWarning(){this.warning=!1},async onAction(t){if("check"==t){if(this.$socket.disconnected)var e="close";else if(this.$socket.connected)e="open";if(this.isconnect)var a="open";else a="close";var s="Status
";s+="Agent is "+e+"
",s+="Server is "+a,this.$swal({type:"info",html:s,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,showCancelButton:!0,showLoaderOnConfirm:!1,focusCancel:!0,confirmButtonText:"Yes, Reconnect!"}).then(t=>{this.reconnenting(t)})}},async reconnenting(t){t.value&&(this.componentKeyreload+=1,this.componentKeyreload1+=1,this.componentKeyreload2+=1,this.componentKeyreload3+=1,this.componentKeybuilders+=1)},async serverstatus(t){var e=f.getters["pipelineLLO/getstatus"];"active"==e.data.swarmlab&&"Online"==e.data.hybrid?this.isconnect=!0:this.isconnect=!1},onActionMenu(t){"max"==t?this.sidemenou="max":"min"==t&&(this.sidemenou="min")},hybrid(t){this.hybridmenou=t,"bootstrap"==t?this.$root.$emit("hybrid_refresh_dockerservices"):"dashboard"==t?console.log("dashboard "+t):"connect-server"==t?this.$root.$emit("hybrid_connect_server"):"llo"==t?console.log("llo "+t):"services"==t&&this.$root.$emit("hybrid_refresh_availableservices")},isActive:function(t){return this.activeItem===t},isActiveSub:function(t){return this.activeItemSub===t},setActive:function(t,e){this.activeItem=t,this.activeItemSub=e},showdiscl(){var t='Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:';t+="
",t+="
",t+="1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.",t+="
",t+="
",t+="2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.",t+="
",t+="
",t+="3. Neither the name of Swarmlab.io nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.",t+="
",t+="
",t+="THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
";let e='

'+t+"

";this.$swal({type:"Info",title:"Legal Disclaimer and Notices",icon:"info",html:e,showCloseButton:!0,showLoaderOnConfirm:!1,allowOutsideClick:!1,cancelButtonText:"No, cancel!",showCancelButton:!1,showLoaderOnConfirm:!1,reverseButtons:!0,focusCancel:!0,confirmButtonText:"Ok!"})}},computed:{socketStatus(){return f.getters["pipelineLLO/getsocketStatus"]}},watch:{socketStatus(t){this.issocket=t}}},ts=Xa,es=(a("034f"),Object(O["a"])(ts,i,o,!1,null,null,null)),as=es.exports,ss=a("5886"),is=(a("4413"),a("f2d6")),os=a.n(is),ns=(a("c059"),a("f87c")),rs=a("8e27");s["default"].use(ss["a"]),s["default"].use(os.a);var ls=d.url_80;const cs=Object(rs["io"])(ls,{autoConnect:!1,reconnection:!0,reconnectionDelay:500,maxReconnectionAttempts:1/0,pingInterval:25e3,pingTimeout:6e4,transports:["websocket","polling"],secure:!0,rejectUnauthorized:!1});s["default"].use(ns["a"],cs),s["default"].use(r["b"]);s["default"].component("ValidationProvider",N["a"]),s["default"].config.productionTip=!1,new s["default"]({el:"#app",store:f,wait:new os.a,render:t=>t(as)})},"5dec":function(t,e,a){},"6d9e":function(t,e,a){},7296:function(t,e,a){"use strict";a("0d35")},7649:function(t,e,a){t.exports=a.p+"img/penguinfledgling.7cf62d54.png"},"778e":function(t,e,a){},"798c":function(t,e,a){},"7f73":function(t,e,a){},"83ff":function(t,e,a){"use strict";a("d766")},"85ec":function(t,e,a){},"8cd9":function(t,e,a){},"9f0c":function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAySSURBVHhe7Z0/bBtHHoXdubzyypQpU6Z0mdJIZMNdXAYIQqk5wBYNnDuXKl2qdKk/h8BNrBUQi7rO1wlXHFy6dOk2N7/lW/mJeo+7I5Ia0p4P+BAEeTP7OEMuuasAe6dSqVQqlUqlUqlUKpVKpVKpVCqVSqVSqVQqlUpl1Ryenv7t8M3k/uHJ5Hl43Jy/OGomjXE/Mkcnb58cnr691zTNXUyzUuJYh2/e7kz7TV6KXp173es4ejN59Pvp6d8xRaUjFiUWJxbr6GTyLv3zr4U8OXt/1JwdtBt0+u9vcJgbM31Dnj1Oc+8vqd9F+ud+zLmMfhtJLOrRm7NfsBh6oZblyeQ8jpXz6fu86WcHcs5lGm/YdAb7Ks4O/zqdfNueMk8mH+VirN7XcfpGnWvEJzJl9mfG3JrHzdmr4z/+/AF1vhziO739JIoXXciG3wiHp2ff3cqnfahxZkxnLdTbXPCJen3tBa6P6YfaGm38rOk3x/Hp2++xnJtD/Bqf/jqffJIvrJrrXvwuwfKuN/Eddis/7r42TyYf4moJy7wePNp58s2D0dOdB9u7+w+2x00oy+caLzZ+sNE1vhTX4u1pvL38E3OtwoL9unXeGo1f/bS9++Thzvg7bMftMd308UUyCl1Rle41fVXEL+BFb5Z0N5HSnHHNvrwrjTXqp9b8wWj8fmu0+/z+zvPVfk389Nvu/TiYLAFVaW/6ZKRFXdUdvMvFlsce4vr1U2veubU9/pBc/tXDzz//8+6D0e5LddBZVenrnh3EpRemXzn51/fr20+tufBgaWeDmCh9x5+Lg0hVaTZuBmHqWwcLLXt1rns/tebGi/iNhqlvRvvJz9j8UJVmMXUxVCcWsWKoTqxac2v6ul7oTIBf93pyoyrNYupiqE4sYsVQnVi15j02mDqPtPmPxGS9qtIspi+G6sQiVgzViVVr3mu6asP0w4hTf/yilJPNOtr92J4p0kG2dp7dU6VZHMLyn//+769FxDQW1YlFzKKOmSOmsahObKxxd+9l6B5tbe9+evjrP4ZfvuI6X042YzM7sSrNImZRi5YjprGoTixiFnXMHDGNRXViEWvBD/RBX9Nb28/2MKyfvmv91tH4BeJXUKVZxCxq0XLENBbViUXMoo6ZI6axqE4sYldo78+oPSLjLBBndgzxpMm+VRPMaH9YqNIsYha1aDliGovqxCJmUcfMEdNYVCcWsWsMuk8zetr//xrELUU5uDN958/7PlGlWcQsatFyxDQW1YlFzKKOmSOmsahOLGLXmN6s6ztz7+4j7knBg+sDP9v3XaJKs4hZ1KLliGksqhOLmEUdM0dMY1GdWMQk8cchtWed6cP9DlFPepfMvfHz8LfxY0QlqjSLmEUtWo6YxqI6sYhZ1DFzxDQW1YlFTBKneLVnnXHVgKin7zTS9+dHVZpFzKIWLUdMY1GdWMQs6pg5YhqL6sQiJpleFeh960TUowaxiFlUaRaxYqhOLGLFUJ1YxCxqz1jEPGoQi5hFlWYRK4bqxCJWDNWJRcyi9oxFzKMGsYhZVGkWsWKoTixixVCdWMQsas9YxDxqEIuYRZVmESuG6sQiVgzViUXMovaMRcyjBrGIWVRpFrFiqE4sYsVQnVjELGrPWMQ8ahCLmEWVZhErhurEIlYM1YlFzKL2jEXMowaxiFlUaRaxYqhOLGLFUJ1YxCxqz1jEPGoQi5hFlWYRK4bqxCJWDNWJRcyi9oxFzKMGsYhZVGkWMYu6eZIjprGoTixiFnXMHDGNRXViEbOoPWMR86hBLGIWVZpFzKIWLUdMY1GdWMQs6pg5YhqL6sQiZlF7xiLmUYNYxCyqNIuYRS1ajpjGojqxiFnUMXPENBbViUXMovaMRcyjBrGIWVRpFjGLWrQcMY1FdWIRs6hj5ohpLKoTi5hF7RmLmEcNYhGzqNIsYha1aDliGovqxCJmUcfMEdNYVCcWMYvaMxYxjxrEImZRpVnELGrRcsQ0FtWJRcyijpkjprGoTixiFrVnLGIeNYhFzKJKs4hZ1KLliGksqhOLmEUdM0dMY1GdWMQsas9YxDxqEIuYRZVmEbOoRcsR01hUJxYxizpmjpjGojqxiFnUnrGIedQgFjGLKs0iVgzViUWsGKoTi5hF7RmLmEcNYhGzqNIsYsVQnVjEiqE6sYhZ1J6xiHnUIBYxiyrNIlYM1YlFrBiqE4uYRe0Zi5hHDWIRs6jSLGLFUJ1YxIqhOrGIWdSesYh51CAWMYsqzSJWDNWJRawYqhOLmEXtGYuYRw1iEbOo0ixixVCdWMSKoTqxiFnUnrGIedQgFjGLKs0iVgzViUWsGKoTi5hF7RmLmEcNYhGzqNIsYsVQnVjEiqE6sYhZ1J6xiHnUIBYxiyrNImZRN09yxDQW1YlFzKKOmSOmsahOLGIWtWcsYh41iEXMokqziFnUouWIaSyqE4uYRR0zR0xjUZ1YxCxqz1jEPGoQi5hFlWYRs6hFyxHTWFQnFjGLOmaOmMaiOrGIWdSesYh51CAWMYsqzSJmUYuWI6axqE4sYhZ1zBwxjUV1YhGzqD1jEfOoQSxiFlWaRcyiFi1HTGNRnVjELOqYOWIai+rEImZRe8Yi5lGDWMQsqjSLmEUtWo6YxqI6sYhZ1DFzxDQW1YlFzKL2jEXMowaxiFlUaRYxi1q0HDGNRXViEbOoY+aIaSyqE4uYRe0Zi5hHDWIRs6jSLGIWtWg5YhqL6sQiZlHHzBHTWFQnFjGL2jMWMY8axCJmUaVZxIqhOrGIFUN1YhGzqD1jEfOoQSxiFlWaRawYqhOLWDFUJxYxi9ozFjGPGsQiZlGlWcSKoTqxiBVDdWIRs6g9YxHzqEEsYhZVmkWsGKoTi1gxVCcWMYvaMxYxjxrEImZRpVnEiqE6sYgVQ3ViEbOoPWMR86hBLGIWVZpFrBiqE4tYMVQnFjGL2jMWMY8axCJmUaVZxIqhOrGIFUN1YhGzqD1jEfOoQSxiFlWaRawYqhOLWDFUJxYxi9ozFjGPGsQiZlGlWcTmEs/t6Z69F8/QjWfvhe2j2+KBTvj36SPiu+f0DXvIk+rEIjaXde6n9oxFzKMGsYhZVGkWsUviQUmfn8+/hIcrts/jS5uQFl89AEqOIRG7ZN37zaL2jEXMowaxiFlUaXbpC9rnyeTD9KGPZ7/EgssMue79sMwWtWcsYh41iEXMokpXlyeW2aL2jEXMowaxiFlU6eryxDJb1J6xiHnUIBYxiypdXZ5YZovaMxYxjxrEImZRpavLE8tsUXvGIuZRg1jELKp0dXlimS1qz1jEPH3Pout7Hq0qfWNPzi74uvr4jz9/aK+pu+vsZMrtJZv0a/rTlbGrt0nucZfo13bs/j1+3Z9M3s2MW0gss2T6qF+9b52IeuK5MmpgZzyiDFHJQpdO08Xai8eqx7P2MeVg4hKu3YTm/MVSF376mvbiUfLq2n0I8cZFr/Nr8w81vckxneTH0fh7tWeXjnY/IupJZ4DXcnCneV5gx/RumCivTAt73ExexsL+fno6/MmWA4k3RFxfp2PFp1V3cKY3UHyKb7rh82ia5m68ydNx9qZnOXF87dznAA944OcFop54KpgYyF7MewBhu+jzT8eNuwu2Stpe7YLHnTjZq3N/6G3bZUFv1NczXa4YZxEMkfR+eLfHB4h6+p481dpzFsAdLfrUxa3Ps8c3Oa0vm+gQb8D0Rvhw2W/6pthbxVkol+gXZ0T8fph+kNLXRny1ISKJp7nJvSL7nvjWMn0AYTwQWk/SGd83GLKxxGKvw6YvSvwwH7Jngx8gPeQxpPEs2nhQIYZUCtF+8gdsfrL/9N8R75TYYDGJcPc8SvQ9T7CyPGKtY80HfOdfmr0/vc8Q3lDx8ixqzOY74JnBs0xvKsx/jOwmipdnUWM22tH4fTxRFC8vj/hx0XdncNPES7OoMZtqfI0v/NUcEwz8kbER4mVZ1JhNtP0Nly7p8bIWoz0T9Nwi3hTn/S1jyL30jTCd9pf+ozwWZ8Bdwg1w9xFe0jW2dp7d02M2x63R+NWNv/OH0N50SNeUswfeGNOnw93KTv+9uZbfHJtbvTkX9wpw+/EgFnWmzLp7EZ92vJT2r2g519TrYPw4bzuPnu7M+1r76ojT36quXJb+vVpZDQP+LJptfLdi+sq6M/3BuryzQHs9PfQPKZX1IP7PpeF/z5hv/aPXhhI3QhZ9E8TfRDBdZRNZ5E1QP/lfCNM/b2fdxDqov/i/QKZ/3GrfCM2VH4nTv3U08T/C1I2vVCqVSqVSqVQqlUqlUqlUKpVKpVKpVCqVSqWy2dy583/z2anbdD5tZgAAAABJRU5ErkJggg=="},a2af:function(t,e,a){t.exports=a.p+"img/warning.f9cebb9b.png"},a6d9:function(t,e,a){},aa1b:function(t,e,a){"use strict";a("798c")},b68d:function(t,e,a){},b721:function(t,e,a){},b73e:function(t,e,a){t.exports=a.p+"img/academy.90116857.png"},c000:function(t,e,a){},c059:function(t,e,a){},c5ed:function(t,e,a){"use strict";a("08ea")},c972:function(t,e,a){},cc7b:function(t,e,a){"use strict";a("4c32")},cd6e:function(t,e,a){"use strict";a("a6d9")},cf1c:function(t,e,a){t.exports=a.p+"img/loading.f4404720.gif"},d766:function(t,e,a){},d929:function(t,e,a){},e24e:function(t,e,a){"use strict";a("7f73")},e454:function(t,e,a){},ec01:function(t,e,a){},f101:function(t,e,a){"use strict";a("d929")},f467:function(t,e,a){t.exports=a.p+"img/hybrid-1.852eef88.png"}}); //# sourceMappingURL=app.de882020.js.map