adaptorex
Version:
Connect all your live interactive storytelling devices and software
2 lines (1 loc) • 2.86 kB
JavaScript
import{r as _,$ as y,d as v,o as g,e,O as b,t as h,j as k,B as C,u as w,an as $,w as B,v as q,F as x,h as L}from"./index-BpVbOCok.js";const N={class:"dropdown-trigger is-flex is-align-items-center"},U={class:"dropdown-content p-1 has-border"},G={__name:"PopUp",props:{unfoldUp:{type:Boolean,default:!1},unfoldRight:{type:Boolean,default:!1}},emits:["isOpen","isClosed"],setup(l,{emit:m}){const a=m,s=_(!1);let i=!0;function r(){s.value?t():c()}function c(){s.value=!0,a("isOpen"),document.addEventListener("click",t)}function t(){if(i)return i=!1;s.value=!1,a("isClosed"),document.removeEventListener("click",t),i=!0}return y(()=>document.removeEventListener("click",t)),(p,o)=>(g(),v("div",{class:C(["dropdown",{"is-active":s.value,"is-up":l.unfoldUp,"is-right":l.unfoldRight}])},[e("div",N,[b(p.$slots,"anchor",{togglePopup:r},()=>[e("button",{class:"button","aria-haspopup":"true","aria-controls":"dropdown-menu3",onClick:o[0]||(o[0]=u=>r())},h(s.value?"close":"open"),1)])]),e("div",{id:"dropdown-menu",class:C(["dropdown-menu p-1",{"is-hidden":!s.value}]),role:"menu",onClick:o[1]||(o[1]=k(()=>{},["stop"])),onMousedown:o[2]||(o[2]=k(()=>{},["stop"]))},[e("div",U,[b(p.$slots,"content",{togglePopup:r})])],34)],2))}},E={class:"box has-background-pink-2"},I={class:"field"},O={class:"label"},A={class:"control"},F={class:"field has-background-light p-3"},M={class:"field"},P={class:"label"},R={class:"control"},D=["value","onChange"],V={class:"field is-grouped is-grouped-centered"},j={class:"control"},z={class:"control"},H={__name:"SessionLauncher",props:{levelId:{type:String,required:!0},levelName:{type:String,required:!1,default:""},game:{type:String,required:!1,default:""}},emits:["close","launched"],setup(l,{emit:m}){const a=l,s=m,i=w(),r=$(),c=_(""),t=_(i.getters["level/levelArgs"](a.levelId)),p=(u,d)=>{t.value[u].value=d};function o(){i.dispatch("live/launchSession",{game:a.game||r.params.game,level:a.levelId,session:c.value,args:t.value}).then(u=>{s("launched",u?.data?.created_id)}).catch().finally(()=>s("close"))}return(u,d)=>(g(),v("div",null,[e("div",E,[e("div",I,[e("label",O,"Create Session based on "+h(l.levelName||l.levelId),1),e("div",A,[B(e("input",{"onUpdate:modelValue":d[0]||(d[0]=n=>c.value=n),class:"input",placeholder:"Session Name"},null,512),[[q,c.value]])])]),e("div",F,[(g(!0),v(x,null,L(t.value,(n,f)=>(g(),v("div",{key:"arg"+f},[e("div",M,[e("label",P,h(f)+" ("+h(n.type||n.collection)+")",1),e("div",R,[e("input",{class:"input has-background-dark has-text-light",placeholder:"database query",value:n.value||n.query,onChange:S=>p(f,S.target.value)},null,40,D)])])]))),128))]),e("div",V,[e("div",j,[e("button",{class:"button is-dark",onClick:k(o,["stop","prevent"])},"Start Session")]),e("div",z,[e("button",{class:"button is-dark",onClick:d[1]||(d[1]=n=>s("close"))},"Cancel")])])])]))}};export{H as _,G as a};