Planar-Pioneers/assets/index.24fb7a71.js

19 lines
219 KiB
JavaScript
Raw Normal View History

/* empty css */import"./vue.c16a309b.js";import{_ as w,C as s,l as Oe,q as mn,t as U,b2 as vt,ab as Y,aF as M,a1 as A,a2 as N,aL as At,G as be,aD as Cr,w as ht,b3 as It,a9 as p,O as re,ap as ga,az as yi,as as Gt,aH as ui,A as Pe,$ as te,b7 as H,b9 as Ui,ar as Wt,bv as Tn,a8 as T,bt as ma,bc as Hn,T as va,u as Gi,j as ha,bw as Rt,aM as Mt,a0 as z,aO as Xe,J as ce,I as je,aI as hn,aG as bn,z as en,bo as ba,bs as ya,aK as Dn,bd as lr,am as pi,H as wa,bx as _a,bf as Na}from"./@vue.6b211d3c.js";import{c as kr}from"./nanoevents.1080beb7.js";import{L as Kt}from"./lz-string.dccec454.js";import{Y as Ca}from"./vue-next-select.ded54c4a.js";import{D as ka}from"./vuedraggable.1879de79.js";import{p as Ma}from"./vue-textarea-autosize.35804eaf.js";import{P as Sa}from"./vue-panzoom.8ce6f9b1.js";import{s as Ia,u as wi}from"./vue-toastification.9c2dad53.js";import"./amator.1e5a40c8.js";import"./bezier-easing.a990b400.js";import"./sortablejs.a0f68e5e.js";import"./panzoom.30c56ba6.js";import"./wheel.f2ae740f.js";import"./ngraph.events.083734c6.js";const xa=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))i(r);new MutationObserver(r=>{for(const a of r)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&i(l)}).observe(document,{childList:!0,subtree:!0});function n(r){const a={};return r.integrity&&(a.integrity=r.integrity),r.referrerpolicy&&(a.referrerPolicy=r.referrerpolicy),r.crossorigin==="use-credentials"?a.credentials="include":r.crossorigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(r){if(r.ep)return;r.ep=!0;const a=n(r);fetch(r.href,a)}};xa();const $a="modulepreload",ur={},Ea="./",Zn=function(t,n){return!n||n.length===0?t():Promise.all(n.map(i=>{if(i=`${Ea}${i}`,i in ur)return;ur[i]=!0;const r=i.endsWith(".css"),a=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${a}`))return;const l=document.createElement("link");if(l.rel=r?"stylesheet":$a,r||(l.as="script",l.crossOrigin=""),l.href=i,document.head.appendChild(l),r)return new Promise((u,c)=>{l.addEventListener("load",u),l.addEventListener("error",()=>c(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())},Pa="./projInfo-schema.json",Ta="Planar Pioneers",Da="A game about controlling and exploiting planes!",Aa="planar-pioneers",Ra="thepaperpilot",Fa="",Oa="",qa="0.0",Va="Initial Commit",Ba=!1,La=!1,ja=2,za=!0,Ua=null,Ga="",Wa=["main"],Ha=3600,Za=0,Xa=!0,Ya="base64";var me={$schema:Pa,title:Ta,description:Da,id:Aa,author:Ra,discordName:Fa,discordLink:Oa,versionNumber:qa,versionTitle:Va,allowGoBack:Ba,defaultShowSmall:La,defaultDecimalsShown:ja,useHeader:za,banner:Ua,logo:Ga,initialTabs:Wa,maxTickLength:Ha,offlineLimit:Za,enablePausing:Xa,exportEncoding:Ya};class Ja{constructor(t){this.map=new Map,this.first=void 0,this.last=void 0,this.maxSize=t}get size(){return this.map.size}get(t){const n=this.map.get(t);if(n!==void 0)return n!==this.first&&(n===this.last?(this.last=n.prev,this.last.next=void 0):(n.prev.next=n.next,n.next.prev=n.prev),n.next=this.first,this.first.prev=n,this.first=n),n.value}set(t,n){if(this.maxSize<1)return;if(this.map.has(t))throw new Error("Cannot update existing keys in the cache");const i=new Ka(t,n);for(this.first===void 0?(this.first=i,this.last=i):(i.next=this.first,this.first.prev=i,this.first=i),this.map.set(t,i);this.map.size>this.maxSize;){const r=this.last;this.map.delete(r.key),this.last=r.prev,this.last.next=void 0}}}class Ka{constructor(t,n){this.next=void 0,this.prev=void 0,this.key=t,this.value=n}}const Ai=17,Qa=9e15,es=Math.log10(9e15),ts=1/9e15,ns=308,is=-324,cr=5,rs=(1<<10)-1,as=function(){const e=[];for(let n=is+1;n<=ns;n++)e.push(Number("1e"+n));const t=323;return function(n){return e[n+t]}}(),on=[2,Math.E,3,4,5,6,7,8,9,10],ss=[[1,1.0891180521811203,1.1789767925673957,1.2701455431742086,1.3632090180450092,1.4587818160364217,1.5575237916251419,1.6601571006859253,1.767485818836978,1.88041920
`,e),await dn(Pn())}}function Pn(){const e=fi(),t=Tr({id:e});return mt(t),ue.saves.push(e),t}function fi(){let e,t=0;do e=`${me.id}-${t++}`;while(localStorage.getItem(e)!=null);return e}const xs=U(!1);async function dn(e){console.info("Loading save",e),xs.value=!0;const{layers:t,removeLayer:n,addLayer:i}=await Zn(()=>Promise.resolve().then(function(){return Ks}),void 0),{fixOldSave:r,getInitialLayers:a}=await Zn(()=>Promise.resolve().then(function(){return Sf}),void 0);for(const l in t){const u=t[l];u&&n(u)}a(e).forEach(l=>i(l,e)),e=Tr(e),e.offlineProd&&e.time!=null&&e.time&&e.devSpeed!==0&&(e.offlineTime==null&&(e.offlineTime=0),e.offlineTime+=Math.min(e.offlineTime+(Date.now()-e.time)/1e3,me.offlineLimit*3600)),e.time=Date.now(),e.modVersion!==me.versionNumber&&(r(e.modVersion,e),e.modVersion=me.versionNumber),Object.assign(K,e),ue.active=K.id,Ye.emit("onLoad")}setInterval(()=>{K.autosave&&mt()},1e3);window.onbeforeunload=()=>{K.autosave&&mt()};window.save=mt;const $s=window.hardReset=async()=>{await dn(Pn())};window.deleteLowerSaves=()=>{const e=Object.values(ue.saves).indexOf(K.id)+1;Object.values(ue.saves).slice(e).forEach(t=>localStorage.removeItem(t)),ue.saves=ue.saves.slice(0,e)};const Kn=mn({active:"",saves:[],showTPS:!0,theme:Wi.Nordic,unthrottled:!1,alignUnits:!1});vt(Kn,e=>{const t=Kt.compressToUTF16(JSON.stringify(e));localStorage.setItem(me.id,t)},{deep:!0});var ue=window.settings=Kn;window.hardResetSettings=()=>{const e={active:"",saves:[],showTPS:!0,theme:Wi.Nordic,alignUnits:!1};Ye.emit("loadSettings",e),Object.assign(Kn,e),$s()};function Es(){try{let e=localStorage.getItem(me.id);if(e!=null&&e!==""){if(e[0]!=="{")if(e[0]==="e")e=decodeURIComponent(escape(atob(e)));else if(e[0]==="\u1BE1")e=Kt.decompressFromUTF16(e);else{console.warn("Unable to determine settings encoding",e);return}const t=JSON.parse(e);typeof t=="object"&&Object.assign(Kn,t)}Ye.emit("loadSettings",Kn)}catch{}}const Dr=mn([]);function Ps(e){Dr.push(e)}const Ts=mn([]),Ds=mn([]),As={class:"table"},Rs=Y({__name:"Column",setup(e){const t=w(()=>Ct[ue.theme].mergeAdjacent);return(n,i)=>(M(),A("div",As,[N("div",{class:be(["col",{mergeAdjacent:s(t)}])},[At(n.$slots,"default")],2)]))}}),Fs={class:"table"},Os=Y({__name:"Row",setup(e){const t=w(()=>Ct[ue.theme].mergeAdjacent);return(n,i)=>(M(),A("div",Fs,[N("div",{class:be(["row",{mergeAdjacent:s(t)}])},[At(n.$slots,"default")],2)]))}});function Ar(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!ga(e)}function de(e,t="span"){return typeof e=="function"?Y({render:e}):typeof e=="string"?e.length>0?(e=e.trim(),e.charAt(0)!=="<"&&(e=`<${t}>${e}</${t}>`),Y({template:e})):Y({render:()=>({})}):e}function rt(e){if(xt(e))return typeof e=="function"?e():de(e);const t=e[yt];return p(t,e[pt](),null)}function Fi(...e){let t;return p(Os,null,Ar(t=e.map(rt))?t:{default:()=>[t]})}function qs(...e){let t;return p(Rs,null,Ar(t=e.map(rt))?t:{default:()=>[t]})}function kt(e){if(xt(e))return typeof e=="function"?e():typeof e=="string"?p(re,null,[e]):p(e,null,null);const t=e[yt];return p(t,e[pt](),null)}function gr(e,t){return e.reduce((n,i)=>p(re,null,[n,t,i]))}function xt(e){return typeof e=="string"?!0:typeof e=="object"?e==null?!1:"render"in e||"component"in e:typeof e=="function"&&e[Yn]===!0}function Rr(e,t){const n=U(null),i=U(void 0);function r(u){n.value||(n.value=setInterval(l,250)),i.value=u}function a(){n.value&&(clearInterval(n.value),n.value=null)}function l(){t&&t.value?t.value():e&&e.value&&e.value(i.value)}return Cr(a),{start:r,stop:a,handleHolding:l}}function Fr(e,t="div"){const n=ht();return It(()=>{n.value=de($e(e),t)}),n}function An(e,t="div"){const n=ht(null);return It(()=>{const i=$e(e);n.value=i==""||i==null?null:de(i,t)}),n}function $e(e){return s(s(e))}function O(...e){return e.includes(Object)||e.push(Object),e}function mr(e){const t=U(!1),n=e[pt].bind(e);return e[pt]=()=>({...n(),onPointerenter:()=>t.value=!0,onPointerleave:()=>t.value=!1}),t}var pe=(e,t)=>{const n=e.__vccOpts||e;for(const[i,r]of t)n[i]=r;return n};const Vs=Y({__name:"Context",emits:["
`).slice(3,5).map(n=>n.trim()).join(`
`))!=null?t:""}function vr(e,t){var n;if(o.isNaN(t))throw Ue.hasNaN||(K.autosave=!1,Ue.hasNaN=!0,Ue.NaNPath=e[fn],Ue.NaNPersistent=e),console.error("Attempted to save NaN value to",(n=e[fn])==null?void 0:n.join("."),e),new Error("Attempted to set NaN value. See above for details");e[Qt].value=t}function dt(e,t=!0){const n=Oe(e)?e:U(e);Oe(e)&&(e=e.value);const i=w({get(){return n.value},set(a){t?vr(r,a):r[Qt].value=a}});i[tn]=e;const r={get value(){return n.value},set value(a){t?vr(r,a):r[Qt].value=a},__v_isRef:!0,[Qt]:n,[tn]:e,[mi]:Hs(),[vi]:!1,[Dt]:i,[fn]:void 0};return ct.length===0?console.warn("Creating a persistent ref outside of a layer. This is not officially supported",r,`
Created at:
`+r[mi]):pn[ct[ct.length-1]].add(r),r}function Zs(e){return e!=null&&typeof e=="object"&&Qt in e}function In(e){return!(Jt in e)&&Dt in e?e[Dt]:new Proxy(e,{get(t,n){if(n!==Qt)return n===ji?!0:t[n]},set(t,n,i){return t[n]=i,!0},has(t,n){return n===Qt?!1:n==ji?!0:Reflect.has(t,n)}})}function qr(e){ct.length===0?console.warn("Deleting a persistent ref outside of a layer. Ignoring...",e):pn[ct[ct.length-1]].delete(e),e[vi]=!0}Ye.on("addLayer",(e,t)=>{const n=[],i=(r,a=[])=>{let l=!1;return Object.keys(r).forEach(u=>{let c=r[u];if(c!=null&&typeof c=="object"){if(c[ji]===!0)return;if(Jt in c&&(c=c[Jt]),Zs(c)){if(l=!0,c[vi]){console.warn("Deleted persistent ref present in returned object. Ignoring...",c,`
Created at:
`+c[mi]);return}pn[e.id].delete(c);const d=[e.id,...a,u];c[fn]!=null&&JSON.stringify(d)!==JSON.stringify(c[fn])&&console.error(`Persistent ref is being saved to \`${d.join(".")}\` when it's already present at \`${c[fn].join(".")}\`. This can cause unexpected behavior when loading saves between updates.`,c),c[fn]=d;const v=a.reduce((h,g)=>(g in h||(h[g]={}),h[g]),t),f=v[u];v[u]=c[Qt],ha(v)?f!=null?v[u]=f:v[u]=c[tn]:f!=null?v[u].value=f:v[u].value=c[tn]}else!(c instanceof o)&&!Oe(c)&&!n.includes(c)&&(typeof c.type=="symbol"&&n.push(c),i(c,[...a,u])&&(Rt(c)&&!Rt(r)?console.warn("Found array that contains persistent values when adding layer. Keep in mind changing the order of elements in the array will mess with existing player saves.",Jt in r?r[Jt]:r,u):l=!0))}}),l};i(e[Jt]),pn[e.id].forEach(r=>{r[vi]||console.error(`Created persistent ref in ${e.id} without registering it to the layer! Make sure to include everything persistent in the returned object`,r,`
Created at:
`+r[mi])}),pn[e.id].clear()});const Hi=Symbol("RegisterNode"),Zi=Symbol("UnregisterNode"),Xi=Symbol("Nodes"),Yi=Symbol("Bounds"),he=Gi({});window.layers=he;const pn={},ct=[];function Ji(e,t){return Je(()=>{const n={},i=n.emitter=kr();if(n.on=i.on.bind(i),n.emit=i.emit.bind(i),n.nodes=U({}),n.id=e,ct.push(e),pn[e]=new Set,n.minimized=dt(!1,!1),Object.assign(n,t.call(n,n)),ct[ct.length-1]==null||ct[ct.length-1]!==e)throw`Adding layers stack in invalid state. This should not happen
Stack: ${ct}
Trying to pop ${n.id}`;ct.pop(),$(n,"color"),$(n,"display"),$(n,"classes"),$(n,"style"),$(n,"name"),se(n,"name",n.id),$(n,"minWidth"),se(n,"minWidth",600),$(n,"minimizable"),se(n,"minimizable",!0),$(n,"minimizedDisplay");const r=n.style;return n.style=w(()=>{var l,u;let a=s(n.minWidth);return(typeof a=="number"||!Number.isNaN(parseInt(a)))&&(a=a+"px"),[(l=s(r))!=null?l:"",(u=n.minimized)!=null&&u.value?{flexGrow:"0",flexShrink:"0",width:"60px",minWidth:"",flexBasis:"",margin:"0"}:{flexGrow:"",flexShrink:"",width:"",minWidth:a,flexBasis:a,margin:""}]}),n})}function Ki(e,t){if(console.info("Adding layer",e.id),he[e.id]){console.error("Attempted to add layer with same ID as existing layer",e.id,he[e.id]);return}se(t,"layers",{}),t.layers[e.id]==null&&(t.layers[e.id]={}),he[e.id]=e,Ye.emit("addLayer",e,t.layers[e.id])}function Xs(e){return he[e]}function Vr(e){console.info("Removing layer",e.id),Ye.emit("removeLayer",e),he[e.id]=void 0}function Ys(e){Vr(e),Ki(e,K)}function Js(e){const t=U(!1);return{openModal:()=>t.value=!0,modal:J(()=>p(Ht,{modelValue:t.value,"onUpdate:modelValue":n=>t.value=n},{header:()=>p("h2",null,[s(e.name)]),body:s(e.display)}))}}Ye.on("update",function(t){Object.values(he).forEach(n=>{n==null||n.emit("preUpdate",t)}),Object.values(he).forEach(n=>{n==null||n.emit("update",t)}),Object.values(he).forEach(n=>{n==null||n.emit("postUpdate",t)})});var Ks=Object.freeze(Object.defineProperty({__proto__:null,RegisterNodeInjectionKey:Hi,UnregisterNodeInjectionKey:Zi,NodesInjectionKey:Xi,BoundsInjectionKey:Yi,layers:he,persistentRefs:pn,addingLayers:ct,createLayer:Ji,addLayer:Ki,getLayer:Xs,removeLayer:Vr,reloadLayer:Ys,setupLayerModal:Js},Symbol.toStringTag,{value:"Module"}));const Qs=Y({components:{Context:Or},props:{index:{type:Number,required:!0},display:{type:O(Object,String,Function),required:!0},minimizedDisplay:O(Object,String,Function),minimized:{type:Object,required:!0},name:{type:O(String),required:!0},color:O(String),minimizable:O(Boolean),nodes:{type:Object,required:!0}},emits:["setMinimized"],setup(e){const{display:t,index:n,minimized:i,minimizedDisplay:r}=Pe(e),a=Fr(t),l=An(r),u=w(()=>me.allowGoBack&&n.value>0&&!$e(i));function c(){K.tabs.splice(s(e.index),1/0)}function d(v){e.nodes.value=v}return{component:a,minimizedComponent:l,showGoBack:u,updateNodes:d,unref:s,goBack:c}}}),eo={key:1};function to(e,t,n,i,r,a){const l=Mt("Context");return M(),A("div",{class:"layer-container",style:je({"--layer-color":e.unref(e.color)})},[e.showGoBack?(M(),A("button",{key:0,class:"goBack",onClick:t[0]||(t[0]=(...u)=>e.goBack&&e.goBack(...u))},"\u274C")):z("",!0),e.unref(e.minimized)?(M(),A("button",{key:1,class:"layer-tab minimized",onClick:t[1]||(t[1]=u=>e.$emit("setMinimized",!1))},[e.minimizedComponent?(M(),te(Xe(e.minimizedComponent),{key:0})):(M(),A("div",eo,ce(e.unref(e.name)),1))])):(M(),A("div",{key:2,class:be(["layer-tab",{showGoBack:e.showGoBack}])},[p(l,{onUpdateNodes:e.updateNodes},{default:H(()=>[(M(),te(Xe(e.component)))]),_:1},8,["onUpdateNodes"])],2)),e.unref(e.minimizable)?(M(),A("button",{key:3,class:"minimize",onClick:t[2]||(t[2]=u=>e.$emit("setMinimized",!0))}," \u25BC ")):z("",!0)],4)}var no=pe(Qs,[["render",to],["__scopeId","data-v-72dd78b1"]]);const Br=e=>(hn("data-v-4b4bda40"),e=e(),bn(),e),io=Br(()=>N("h2",null,"Changelog",-1)),ro=Br(()=>N("details",{open:""},[N("summary",null,[T("v0.0 Initial Commit - "),N("time",null,"2021-09-04")]),T(" This is the first release :D "),N("ul",null,[N("li",{class:"feature"},"Did everything"),N("li",{class:"fix"},"Had some fun"),N("li",{class:"breaking"},"Removed everything"),N("li",{class:"balancing"},"Created some bugs to fix later")])],-1)),ao=Y({__name:"Changelog",setup(e,{expose:t}){const n=U(!1);return t({open(){n.value=!0}}),(i,r)=>(M(),te(Ht,{modelValue:n.value,"onUpdate:modelValue":r[0]||(r[0]=a=>n.value=a)},{header:H(()=>[io]),body:H(()=>[ro]),_:1},8,["modelValue"]))}});var so=pe(ao,[["__scopeId","data-v-4b4bda40"]]),oo=Y({props:{element:Object,display:{type:O(Object,String,Function),required:!0},style:O(Object,String,Array),classes:O(Object),di
${V}
${D}`)}}return d[S]}vt(n,S=>{S&&Object.keys(d).forEach(D=>delete d[D])});const f=w(()=>ue.saves.reduce((S,D)=>(S[D]=v(D),S),{}));function h(S){let D;switch(K.id===S?D=Pr(K):D=JSON.stringify(f.value[S]),me.exportEncoding){default:console.warn(`Unknown save encoding: ${me.exportEncoding}. Defaulting to lz`);case"lz":D=Kt.compressToUTF16(D);break;case"base64":D=btoa(unescape(encodeURIComponent(D)));break;case"plain":break}const V=document.createElement("textarea");V.value=D,document.body.appendChild(V),V.select(),V.setSelectionRange(0,99999),document.execCommand("copy"),document.body.removeChild(V)}function g(S){K.id===S&&mt();const D={...f.value[S],id:fi()};mt(D),ue.saves.push(D.id)}function C(S){ue.saves=ue.saves.filter(D=>D!==S),localStorage.removeItem(S),d[S]=void 0}function _(S){f.value[K.id].time=K.time,mt(),d[K.id]=void 0,dn(f.value[S]),d[S]=void 0}function I(S){if(l.value=S,Gt(()=>{l.value=null}),S[0]!=="{")if(S[0]==="e")S=decodeURIComponent(escape(atob(S)));else if(S[0]==="\u1BE1")S=Kt.decompressFromUTF16(S);else{console.warn("Unable to determine preset encoding",S);return}const D=JSON.parse(S);D.id=fi(),mt(D),ue.saves.push(D.id),_(D.id)}function P(S,D){const V=f.value[S];V!=null&&(V.name=D,K.id===S?(K.name=D,mt()):(mt(V),d[S]=void 0))}return(S,D)=>(M(),te(Ht,{modelValue:n.value,"onUpdate:modelValue":D[4]||(D[4]=V=>n.value=V),ref_key:"modal",ref:i},{header:H(()=>[gl]),body:H(({shown:V})=>[V?(M(),te(s(ka),{key:0,list:s(ue).saves,handle:".handle",itemKey:oe=>oe},{item:H(({element:oe})=>[p(pl,{save:s(f)[oe],onOpen:le=>_(oe),onExport:le=>h(oe),onEditName:le=>P(oe,le),onDuplicate:le=>g(oe),onDelete:le=>C(oe)},null,8,["save","onOpen","onExport","onEditName","onDuplicate","onDelete"])]),_:1},8,["list","itemKey"])):z("",!0)]),footer:H(()=>[N("div",ml,[p(jr,{modelValue:a.value,"onUpdate:modelValue":D[0]||(D[0]=V=>a.value=V),title:"Import Save",placeholder:"Paste your save here!",class:be({importingFailed:r.value})},null,8,["modelValue","class"]),N("div",vl,[hl,N("div",bl,[N("button",{class:"button",onClick:D[1]||(D[1]=V=>_(s(Pn)().id))},"New Game"),Object.keys(s(c)).length>0?(M(),te(Qi,{key:0,options:s(c),modelValue:l.value,"onUpdate:modelValue":D[2]||(D[2]=V=>I(V)),closeOnSelect:"",placeholder:"Select preset",class:"presets"},null,8,["options","modelValue"])):z("",!0)])]),N("div",yl,[wl,N("button",{class:"button modal-default-button",onClick:D[3]||(D[3]=V=>n.value=!1)}," Close ")])])]),_:1},8,["modelValue"]))}});var zr=pe(_l,[["__scopeId","data-v-2a4275be"]]);const wt=e=>(hn("data-v-318a1c31"),e=e(),bn(),e),Nl=["src","alt"],Cl={key:1,class:"title"},kl=wt(()=>N("div",{style:{"flex-grow":"1",cursor:"unset"}},null,-1)),Ml={class:"discord"},Sl={class:"discord-links"},Il={key:0},xl=["href"],$l=wt(()=>N("li",null,[N("a",{href:"https://discord.gg/yJ4fjnjU54",target:"_blank"},"The Paper Pilot Community")],-1)),El=wt(()=>N("li",null,[N("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Pl={href:"https://forums.moddingtree.com/",target:"_blank"},Tl=wt(()=>N("span",{class:"material-icons"},"forum",-1)),Dl=wt(()=>N("span",{class:"material-icons"},"info",-1)),Al=wt(()=>N("span",{class:"material-icons"},"library_books",-1)),Rl=wt(()=>N("span",{class:"material-icons"},"settings",-1)),Fl=wt(()=>N("span",{class:"material-icons"},"library_books",-1)),Ol=wt(()=>N("span",{class:"material-icons"},"settings",-1)),ql=wt(()=>N("span",{class:"material-icons"},"info",-1)),Vl={href:"https://forums.moddingtree.com/",target:"_blank"},Bl=wt(()=>N("span",{class:"material-icons"},"forum",-1)),Ll={class:"discord"},jl={class:"discord-links"},zl={key:0},Ul=["href"],Gl=wt(()=>N("li",null,[N("a",{href:"https://discord.gg/yJ4fjnjU54",target:"_blank"},"The Paper Pilot Community")],-1)),Wl=wt(()=>N("li",null,[N("a",{href:"https://discord.gg/F3xveHV",target:"_blank"},"The Modding Tree")],-1)),Hl=Y({__name:"Nav",setup(e){const t=U(null),n=U(null),i=U(null),r=U(null),{useHeader:a,banner:l,title:u,discordName:c,discordLink:d,versionNumber:v}=me;function f(){window.open(d,"mywindow")}return(h,g)=>(M(),A(re,null,[s(a)?(M(),A("div",Wt({k
${(-s(r)-30)*Math.sin(((e.actions.length-1)/2-g)*s(u))},
${(s(r)+30)*Math.cos(((e.actions.length-1)/2-g)*s(u))}
)`,onMousedown:I=>c(I,h),onTouchstart:I=>c(I,h),onMouseup:I=>d(I,h),onTouchend:Tn(I=>d(I,h),["stop"])},[N("circle",{fill:s(ge)(h.fillColor,e.node),r:"20","stroke-width":((_=e.selectedAction)==null?void 0:_.id)===h.id?4:0,stroke:s(a)},null,8,iu),N("text",{fill:s(l),class:"material-icons"},ce(s(ge)(h.icon,e.node)),9,ru)],42,nu)}),128))])):z("",!0)]),_:1}))}});var su=pe(au,[["__scopeId","data-v-9efb2a56"]]);const ou=["transform"],lu={key:0},uu=["r","fill","stroke"],cu=["r","fill","stroke"],du=["r","fill"],fu=["r","stroke-dasharray","stroke-dashoffset","stroke"],pu={key:1,transform:"rotate(45, 0, 0)"},gu=["width","height","transform","fill","stroke"],mu=["width","height","transform","fill","stroke"],vu=["width","height","transform","fill"],hu=["width","height","transform","stroke-dasharray","stroke-dashoffset","stroke"],bu=["fill","y"],yu=["fill"],wu={key:0},_u=["fill","y"],Nu=["fill","y"],Cu=Y({__name:"BoardNode",props:{node:null,nodeType:null,dragging:null,dragged:null,hasDragged:{type:Boolean},receivingNode:{type:Boolean},isSelected:{type:Boolean},selectedAction:null},emits:["mouseDown","endDragging","clickAction"],setup(e,{emit:t}){const n=e,i=Math.sqrt(2),r=Pe(n),a=w(()=>ge(r.nodeType.value.draggable,s(r.node)));vt(a,B=>{const ae=s(r.node);s(r.dragging)===ae&&!B&&t("endDragging",ae)});const l=w(()=>{var ae;const B=s(r.node);return(ae=ge(r.nodeType.value.actions,B))==null?void 0:ae.filter(Te=>Ge(ge(Te.visibility,B)))}),u=w(()=>{var ae;const B=s(r.node);if(ge(r.nodeType.value.draggable,B)&&((ae=s(r.dragging))==null?void 0:ae.id)===B.id&&s(r.dragged)!=null){const{x:Te,y:He}=s(r.dragged);return{x:B.position.x+Math.round(Te/25)*25,y:B.position.y+Math.round(He/25)*25}}return B.position}),c=w(()=>ge(r.nodeType.value.shape,s(r.node))),d=w(()=>ge(r.nodeType.value.title,s(r.node))),v=w(()=>ge(r.nodeType.value.subtitle,s(r.node))),f=w(()=>{var B;return(B=r.isSelected.value?s(r.selectedAction)&&ge(s(r.selectedAction).tooltip,s(r.node)):null)!=null?B:ge(r.nodeType.value.label,s(r.node))}),h=w(()=>{var B,ae;return ge((ae=(B=s(r.selectedAction))==null?void 0:B.confirmationLabel)!=null?ae:{text:"Tap again to confirm"},s(r.node))}),g=w(()=>ge(r.nodeType.value.size,s(r.node))),C=w(()=>{var B;return(B=ge(r.nodeType.value.progress,s(r.node)))!=null?B:0}),_=w(()=>Ct[ue.theme].variables["--background"]),I=w(()=>{var B;return(B=ge(r.nodeType.value.outlineColor,s(r.node)))!=null?B:Ct[ue.theme].variables["--outline"]}),P=w(()=>{var B;return(B=ge(r.nodeType.value.fillColor,s(r.node)))!=null?B:Ct[ue.theme].variables["--raised-background"]}),S=w(()=>ge(r.nodeType.value.progressColor,s(r.node))),D=w(()=>{var B;return(B=ge(r.nodeType.value.titleColor,s(r.node)))!=null?B:Ct[ue.theme].variables["--foreground"]}),V=w(()=>ge(r.nodeType.value.progressDisplay,s(r.node))),oe=w(()=>r.dragging.value!=null&&s(r.hasDragged)&&ge(r.nodeType.value.canAccept,s(r.node),r.dragging.value)),le=w(()=>ge(r.nodeType.value.style,s(r.node))),Q=w(()=>ge(r.nodeType.value.classes,s(r.node)));function Z(B){t("mouseDown",B,r.node.value,a.value)}function fe(B){var ae,Te,He;(ae=r.hasDragged)!=null&&ae.value||(t("endDragging",r.node.value),(He=(Te=r.nodeType.value).onClick)==null||He.call(Te,r.node.value),B.stopPropagation())}return(B,ae)=>{var Te,He,Xt;return M(),A("g",{class:be(["boardnode",{[e.node.type]:!0,isSelected:e.isSelected,isDraggable:s(a),...s(Q)}]),style:je([{opacity:((Te=e.dragging)==null?void 0:Te.id)===e.node.id&&e.hasDragged?.5:1},(He=s(le))!=null?He:[]]),transform:`translate(${s(u).x},${s(u).y})${e.isSelected?" scale(1.2)":""}`},[p(su,{actions:(Xt=s(l))!=null?Xt:[],"is-selected":e.isSelected,node:e.node,"node-type":e.nodeType,"selected-action":e.selectedAction,onClickAction:ae[0]||(ae[0]=at=>t("clickAction",at))},null,8,["actions","is-selected","node","node-type","selected-action"]),N("g",{class:"node-container",onMousedown:Z,onTouchstartPassive:Z,onMouseup:fe,onTouchendPassive:fe},[s(c)===s(We).Circle?(M(),A("g",lu,[s(oe)?(M(),A("circle",{key:0,class:"receiver",r:s(g)+8,fill:s(_),stroke:e.receivingNode?"#0F0":"#0F03","stroke-width":2},null,8
Learn more at www.moddingtree.com`,"font-weight: bold; font-size: 24px; color: #A3BE8C; background: #2E3440; padding: 4px 8px; border-radius: 8px;","padding: 4px;"),await Is();const{globalBus:e}=await Zn(()=>Promise.resolve().then(function(){return Ms}),void 0),{startGameLoop:t}=await Zn(()=>import("./gameLoop.c3596ec6.js"),["assets/gameLoop.c3596ec6.js","assets/@fontsource.f66d05e7.css","assets/vue.c16a309b.js","assets/amator.1e5a40c8.js","assets/bezier-easing.a990b400.js","assets/@vue.6b211d3c.js","assets/nanoevents.1080beb7.js","assets/lz-string.dccec454.js","assets/vue-next-select.ded54c4a.js","assets/vue-next-select.9e6f4164.css","assets/vuedraggable.1879de79.js","assets/sortablejs.a0f68e5e.js","assets/vue-textarea-autosize.35804eaf.js","assets/vue-panzoom.8ce6f9b1.js","assets/panzoom.30c56ba6.js","assets/wheel.f2ae740f.js","assets/ngraph.events.083734c6.js","assets/vue-toastification.9c2dad53.js","assets/vue-toastification.4b5f8ac8.css"]),n=window.vue=Na(Kf);e.emit("setupVue",n),n.mount("#app"),Gt(()=>{const i=wi(),{updateServiceWorker:r}=ep({onNeedRefresh(){i.info("New content available, click here to update.",{timeout:!1,closeOnClick:!1,draggable:!1,icon:{iconClass:"material-icons",iconChildren:"refresh",iconTag:"i"},rtl:!1,onClick(){r()}})},onOfflineReady(){i.info("App ready to work offline")},onRegisterError:console.warn,onRegistered(a){a&&setInterval(()=>a.update(),60*60*1e3)}})}),t()});export{o as D,Zn as _,Ue as a,me as b,Sf as c,Ye as g,xs as l,K as p,ue as s};