2 lines
29 KiB
JavaScript
2 lines
29 KiB
JavaScript
import{f as q,a as O,c as ea}from"../chunks/wrmqo5Xl.js";import{i as aa}from"../chunks/FF6OmFSc.js";import{o as ga}from"../chunks/DmxJgAc5.js";import{c as ce,h as St,ab as Ca,l as ra,a as wa,b as Aa,x as e,M as xa,r as Na,H as Pa,s as je,d as _e,n as Mt,ai as ka,aK as Sa,m as be,t as Wa,aQ as Xt,aR as $t,i as Ot,aS as na,aI as ia,aT as sa,C as gt,al as Fe,at as Ue,j as oa,p as Ia,aU as he,q as Ra,k as la,aV as Ea,aW as Ma,aj as Da,aX as Qa,aH as Ta,aY as Ba,R as La,aM as wt,U as $,$ as Oa,a2 as Va,aZ as Xa,a_ as $a,aA as qa,a0 as Ha,w as da,D as o,a$ as Ye,b0 as Ka,b1 as ja,aa as Dt,A as n,B as a,z as i,au as Fa,G as bt,b2 as ye,b3 as Pt,a8 as ze,y as ua,F as ct,aP as Ua,b4 as Ya}from"../chunks/a9_IrBSG.js";import{e as W,s as Wt}from"../chunks/CMb69aT-.js";import{i as Vt}from"../chunks/DhE1ouZL.js";import{r as h,s as tt}from"../chunks/LnFm25i4.js";import{b as v,A as Et,a as Ge}from"../chunks/BePdLpFV.js";import{p as Je}from"../chunks/S10e0VHB.js";function J(d,c){return c}function za(d,c,l){for(var f=d.items,R=[],t=c.length,p=0;p<t;p++)Qa(c[p].e,R,!0);var E=t>0&&R.length===0&&l!==null;if(E){var B=l.parentNode;Ta(B),B.append(l),f.clear(),ft(d,c[0].prev,c[t-1].next)}Ba(R,()=>{for(var L=0;L<t;L++){var M=c[L];E||(f.delete(M.k),ft(d,M.prev,M.next)),la(M.e,!E)}})}function Z(d,c,l,f,R,t=null){var p=d,E={flags:c,items:new Map,first:null},B=(c&na)!==0;if(B){var L=d;p=St?ce(Ca(L)):L.appendChild(ra())}St&&wa();var M=null,lt=!1,rt=new Map,ht=xa(()=>{var V=l();return sa(V)?V:V==null?[]:ia(V)}),P,w;function A(){Ga(w,P,E,rt,p,R,c,f,l),t!==null&&(P.length===0?M?oa(M):M=be(()=>t(p)):M!==null&&Ia(M,()=>{M=null}))}Aa(()=>{w??=La,P=e(ht);var V=P.length;if(lt&&V===0)return;lt=V===0;let z=!1;if(St){var et=Na(p)===Pa;et!==(V===0)&&(p=je(),ce(p),_e(!1),z=!0)}if(St){for(var nt=null,j,m=0;m<V;m++){if(Mt.nodeType===ka&&Mt.data===Sa){p=Mt,z=!0,_e(!1);break}var I=P[m],D=f(I,m);j=me(Mt,E,nt,null,I,D,m,R,c,l),E.items.set(D,j),nt=j}V>0&&ce(je())}if(St)V===0&&t&&(M=be(()=>t(p)));else if(Wa()){var ot=new Set,dt=Ot;for(m=0;m<V;m+=1){I=P[m],D=f(I,m);var it=E.items.get(D)??rt.get(D);it?(c&(Xt|$t))!==0&&va(it,I,m,c):(j=me(null,E,null,null,I,D,m,R,c,l,!0),rt.set(D,j)),ot.add(D)}for(const[at,yt]of E.items)ot.has(at)||dt.skipped_effects.add(yt.e);dt.oncommit(A)}else A();z&&_e(!0),e(ht)}),St&&(p=Mt)}function Ga(d,c,l,f,R,t,p,E,B){var L=(p&Ma)!==0,M=(p&(Xt|$t))!==0,lt=c.length,rt=l.items,ht=l.first,P=ht,w,A=null,V,z=[],et=[],nt,j,m,I;if(L)for(I=0;I<lt;I+=1)nt=c[I],j=E(nt,I),m=rt.get(j),m!==void 0&&(m.a?.measure(),(V??=new Set).add(m));for(I=0;I<lt;I+=1){if(nt=c[I],j=E(nt,I),m=rt.get(j),m===void 0){var D=f.get(j);if(D!==void 0){f.delete(j),rt.set(j,D);var ot=A?A.next:P;ft(l,A,D),ft(l,D,ot),pe(D,ot,R),A=D}else{var dt=P?P.e.nodes_start:R;A=me(dt,l,A,A===null?l.first:A.next,nt,j,I,t,p,B)}rt.set(j,A),z=[],et=[],P=A.next;continue}if(M&&va(m,nt,I,p),(m.e.f&he)!==0&&(oa(m.e),L&&(m.a?.unfix(),(V??=new Set).delete(m))),m!==P){if(w!==void 0&&w.has(m)){if(z.length<et.length){var it=et[0],at;A=it.prev;var yt=z[0],pt=z[z.length-1];for(at=0;at<z.length;at+=1)pe(z[at],it,R);for(at=0;at<et.length;at+=1)w.delete(et[at]);ft(l,yt.prev,pt.next),ft(l,A,yt),ft(l,pt,it),P=it,A=pt,I-=1,z=[],et=[]}else w.delete(m),pe(m,P,R),ft(l,m.prev,m.next),ft(l,m,A===null?l.first:A.next),ft(l,A,m),A=m;continue}for(z=[],et=[];P!==null&&P.k!==j;)(P.e.f&he)===0&&(w??=new Set).add(P),et.push(P),P=P.next;if(P===null)continue;m=P}z.push(m),A=m,P=m.next}if(P!==null||w!==void 0){for(var ut=w===void 0?[]:ia(w);P!==null;)(P.e.f&he)===0&&ut.push(P),P=P.next;var vt=ut.length;if(vt>0){var At=(p&na)!==0&<===0?R:null;if(L){for(I=0;I<vt;I+=1)ut[I].a?.measure();for(I=0;I<vt;I+=1)ut[I].a?.fix()}za(l,ut,At)}}L&&Ra(()=>{if(V!==void 0)for(m of V)m.a?.apply()}),d.first=l.first&&l.first.e,d.last=A&&A.e;for(var Ct of f.values())la(Ct.e);f.clear()}function va(d,c,l,f){(f&Xt)!==0&&Ue(d.v,c),(f&$t)!==0?Ue(d.i,l):d.i=l}function me(d,c,l,f,R,t,p,E,B,L,M){var lt=(B&Xt)!==0,rt=(B&Ea)===0,ht=lt?rt?gt(R,!1,!1):Fe(R):R,P=(B&$t)===0?p:Fe(p),w={i:P,v:ht,k:t,a:null,e:null,prev:l,next:f};try{if(d===null){var A=document.createDocumentFragment();A.append(d=ra())}return w.e=be(()=>E(d,ht,P,L),St),w.e.prev=l&&l.e,w.e.next=f&&f.e,l===null?M||(c.first=w):(l.next=w,l.e.next=w.e),f!==null&&(f.prev=w,f.e.prev=w.e),w}finally{}}function pe(d,c,l){for(var f=d.next?d.next.e.nodes_start:l,R=c?c.e.nodes_start:l,t=d.e.nodes_start;t!==null&&t!==f;){var p=Da(t);R.before(t),t=p}}function ft(d,c,l){c===null?d.first=l:(c.next=l,c.e.next=l&&l.e),l!==null&&(l.prev=c,l.e.prev=c&&c.e)}function It(d,c,l){wt(()=>{var f=$(()=>c(d,l?.())||{});if(f?.destroy)return()=>f.destroy()})}function ca(d,c,l=!1){if(d.multiple){if(c==null)return;if(!sa(c))return Xa();for(var f of d.options)f.selected=c.includes(Qt(f));return}for(f of d.options){var R=Qt(f);if($a(R,c)){f.selected=!0;return}}(!l||c!==void 0)&&(d.selectedIndex=-1)}function Ja(d){var c=new MutationObserver(()=>{ca(d,d.__value)});c.observe(d,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),qa(()=>{c.disconnect()})}function fe(d,c,l=c){var f=new WeakSet,R=!0;Oa(d,"change",t=>{var p=t?"[selected]":":checked",E;if(d.multiple)E=[].map.call(d.querySelectorAll(p),Qt);else{var B=d.querySelector(p)??d.querySelector("option:not([disabled])");E=B&&Qt(B)}l(E),Ot!==null&&f.add(Ot)}),wt(()=>{var t=c();if(d===document.activeElement){var p=Va??Ot;if(f.has(p))return}if(ca(d,t,R),R&&t===void 0){var E=d.querySelector(":checked");E!==null&&(t=Qt(E),l(t))}d.__value=t,R=!1}),Ja(d)}function Qt(d){return"__value"in d?d.__value:d.value}const Za={Metatype:"",Age:30,Sex:"Man",Nuyen:0,Lifestyle:"","Total Karma":0,"C. Karma":0,"Street Cred":0,Notoriety:0,Fame:0},_a={Agility:1,Body:1,Charisma:1,Edge:1,Essence:1,Initiative:1,Intuition:1,Logic:1,Reaction:1,Strength:1,Willpower:1},tr={Name:"",Rating:0,Attribute:Object.keys(_a)[0]},er={Name:"",Loyalty:0,Connection:0},ar={Weapon:"",Damage:0,Type:"Piercing",AP:0,Mode:"SA",RC:0,Ammo:0,Availabiliy:""},rr={Weapon:"",Reach:0,Damage:1,"Strength Multiplier":.5,AP:0},Ze={Implant:"",Rating:0,Essence:0,Notes:""},ta={Qualitiy:""},nr=Array.from({length:6},()=>Array.from({length:3},()=>!1)),ir=Array.from({length:4},()=>Array.from({length:3},()=>!1)),sr={Armor:"",Ballistic:0,Impact:0},or={Item:"",Quantity:1,Notes:"",Page:1},kt={Info:Za,Attributes:_a,Skills:tr,Connections:er,RangedWeapons:ar,MeleeWeapons:rr,Cyberware:Ze,Bioware:Ze,PositiveQualities:ta,NegativeQualities:ta,PysicalCondition:nr,StunCondition:ir,Armor:sr,Inventory:or};function Rt(d){function c(){d.style.height="auto",d.style.height=d.scrollHeight+"px"}return Ha().then(c),d.addEventListener("input",c),{destroy(){d.removeEventListener("input",c)}}}var lr=q('<div class="input-row svelte-493y8a"><label> </label> <input/></div>'),dr=q("<option> </option>"),ur=q('<tr><td><textarea class="input-height svelte-493y8a" rows="1"></textarea></td><td><input type="number" min="0" max="100"/></td><td><select></select></td><td><span> </span></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),vr=q('<tr><td><textarea class="input-height svelte-493y8a" rows="1"></textarea></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="0" max="100"/></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),cr=q('<tr><td><textarea class="input-height svelte-493y8a" rows="1"></textarea></td><td><input type="number" min="0" max="100"/></td><td><textarea class="input-height svelte-493y8a" style="width: 5em;" rows="1"></textarea></td><td><input type="number" min="0" max="100"/></td><td><textarea class="input-height svelte-493y8a" style="width: 3em;" rows="1"></textarea></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="0" max="9999"/></td><td><textarea class="input-height svelte-493y8a" style="width: 3em;" rows="1"></textarea></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),_r=q('<tr><td><input placeholder="Weapon"/></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="0" max="100"/></td><td><input placeholder="Type"/></td><td><input type="number" min="0" max="999"/></td><td><span> </span></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),hr=q('<tr><td><input placeholder="Armor"/></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),pr=q('<tr><td><input placeholder="Cyberware"/></td><td><input type="number" min="0" max="100"/></td><td><input type="number" min="0" max="100"/></td><td><input placeholder="Notes"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),br=q('<tr><td><input placeholder="Bioware"/></td><td><input type="number" min="0"/></td><td><input type="number" min="0"/></td><td><input placeholder="Notes"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),yr=q('<tr><td><input placeholder="Qualitiy"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),mr=q('<tr><td><input placeholder="Qualitiy"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),fr=q('<td><input type="checkbox"/></td>'),gr=q("<tr></tr>"),Cr=q('<td><input type="checkbox"/></td>'),wr=q("<tr></tr>"),Ar=q('<tr><td><input placeholder="Item"/></td><td><input type="number" min="1" max="354"/></td><td><input placeholder="Notes"/></td><td><input type="number" min="1" max="354"/></td><td><button>View</button></td><td><button class="red-button svelte-493y8a">X</button></td></tr>'),xr=q("<option>No notes yet</option>"),Nr=q("<option> </option>"),Pr=q('<button class="btn-delete">Delete</button>'),kr=q('<h1> </h1> <h2>Character Info</h2> <div class="info-container svelte-493y8a"></div> <h2>Attributes</h2> <table><tbody><tr><td>Agility</td><td><input type="number" min="0" max="100"/></td><td>Body</td><td><input type="number" min="0" max="100"/></td><td>Charisma</td><td><input type="number" min="0" max="100"/></td><td>Edge</td><td><input type="number" min="0" max="100"/></td></tr><tr><td>Essence</td><td><input type="number" min="0" max="100"/></td><td>Initiative</td><td><input type="number" min="0" max="100"/></td><td>Intuition</td><td><input type="number" min="0" max="100"/></td><td>Logic</td><td><input type="number" min="0" max="100"/></td></tr><tr><td>Reaction</td><td><input type="number" min="0" max="100"/></td><td>Strength</td><td><input type="number" min="0" max="100"/></td><td>Willpower</td><td><input type="number" min="0" max="100"/></td><td></td></tr></tbody></table> <h2>Skills</h2> <table><thead><tr><th class="svelte-493y8a">Name</th><th class="svelte-493y8a">Rating</th><th class="svelte-493y8a">Attribute</th><th class="svelte-493y8a">Dice</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Contacts</h2> <table><thead><tr><th class="svelte-493y8a">Name</th><th class="svelte-493y8a">Loyalty</th><th class="svelte-493y8a">Connection</th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Ranged Weapons</h2> <table><thead><tr><th class="svelte-493y8a">Weapon</th><th class="svelte-493y8a">Damage</th><th class="svelte-493y8a">Type</th><th class="svelte-493y8a">AP</th><th class="svelte-493y8a">Mode</th><th class="svelte-493y8a">RC</th><th class="svelte-493y8a">Ammo</th><th class="svelte-493y8a">Availabiliy</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Melee Weapons</h2> <table><thead><tr><th class="svelte-493y8a">Weapon</th><th class="svelte-493y8a">Reach</th><th class="svelte-493y8a">Damage</th><th class="svelte-493y8a">Type</th><th class="svelte-493y8a">Multiplier</th><th class="svelte-493y8a">Cal.Dmg</th><th class="svelte-493y8a">AP</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Armor</h2> <table><thead><tr><th class="svelte-493y8a">Armor</th><th class="svelte-493y8a">Ballistic</th><th class="svelte-493y8a">Impact</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Cyberware</h2> <table><thead><tr><th class="svelte-493y8a">Cyberware</th><th class="svelte-493y8a">Rating</th><th class="svelte-493y8a">Essence</th><th class="svelte-493y8a">Notes</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Bioware</h2> <table><thead><tr><th class="svelte-493y8a">Bioware</th><th class="svelte-493y8a">Rating</th><th class="svelte-493y8a">Essence</th><th class="svelte-493y8a">Notes</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Qualities</h2> <h3>Positive</h3> <table><thead><tr><th class="svelte-493y8a">Quality</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h3>Negative</h3> <table><thead><tr><th class="svelte-493y8a">Quality</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Pysical Condition</h2> <table><tbody></tbody></table> <h2>Stun Condition</h2> <table><tbody></tbody></table> <h3>Inventory</h3> <table><thead><tr><th class="svelte-493y8a">Item</th><th class="svelte-493y8a">Quantity</th><th class="svelte-493y8a">Notes</th><th class="svelte-493y8a">Page</th><th class="svelte-493y8a"></th><th class="svelte-493y8a"></th></tr></thead><tbody></tbody></table> <button>+</button> <h2>Notes</h2> <div class="notes-controls"><select class="note-selector"><!></select> <button class="btn-new">+ New Note (Today)</button> <!></div> <div><textarea rows="10" cols="100"></textarea></div> <button>Save</button>',1);function Sr(d,c){da(c,!1);const l=gt();let f=Je(c,"currentCharacter",8),R=Je(c,"currentCharacterData",8),t=gt(R()??{});o(t,e(t).Info??=kt.Info),o(t,e(t).Attributes??=kt.Attributes),o(t,e(t).Skills??=[]),o(t,e(t).Connections??=[]),o(t,e(t).RangedWeapons??=[]),o(t,e(t).MeleeWeapons??=[]),o(t,e(t).Armor??=[]),o(t,e(t).Cyberware??=[]),o(t,e(t).Bioware??=[]),o(t,e(t).PositiveQualities??=[]),o(t,e(t).NegativeQualities??=[]),o(t,e(t).PysicalCondition??=kt.PysicalCondition),o(t,e(t).StunCondition??=kt.StunCondition),o(t,e(t).Inventory??={}),o(t,e(t).Notes??={});let p=gt(null);const E={Metatype:"text",Age:"number",Sex:"text",Nuyen:"number",Lifestyle:"text","Total Karma":"number","C. Karma":"number","Street Cred":"number",Notoriety:"number",Fame:"number"};function B(s){const x={...kt[s]};o(t,e(t)[s]=[...e(t)[s],x])}function L(s,x){o(t,e(t)[s]=e(t)[s].filter((r,y)=>y!==x))}function M(s){s>0&&window.open(`${Et}/assets/shadowrun/Shadowrun-4E-Corebook-p${s}.pdf`,"_blank")}function lt(s){s.ctrlKey&&s.key==="s"&&rt()}async function rt(){await fetch(`${Et}/api/shadowrun/characters_data/${f().id}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e(t))})}function ht(){const s=new Date().toISOString().split("T")[0];if(e(t).Notes[s]){alert("A note for today already exists!"),ct(p,s);return}o(t,e(t).Notes[s]=""),ct(p,s)}function P(){if(e(p)!==null&&confirm("Delete this note?")){delete e(t).Notes[e(p)],o(t,e(t).Notes=e(t).Notes);const s=Object.keys(e(t).Notes);s.length>0?ct(p,s.sort((x,r)=>new Date(r)-new Date(x))[0]):ct(p,null)}}function w(s){return new Date(s).toLocaleDateString("en-US",{weekday:"short",year:"numeric",month:"short",day:"numeric"})}f()?.inventory,Ye(()=>e(t),()=>{ct(l,Object.keys(e(t).Notes).sort((s,x)=>new Date(x)-new Date(s)))}),Ye(()=>(e(l),e(p)),()=>{e(l).length>0&&e(p)===null&&ct(p,e(l)[0])}),Ka(),aa();var A=kr();W("keydown",ja,lt);var V=Dt(A),z=n(V);a(V);var et=i(V,4);Z(et,5,()=>(e(t),$(()=>Object.entries(e(t).Info))),J,(s,x,r)=>{var y=Ua(()=>Ya(e(x),2));let u=()=>e(y)[0];var g=lr(),b=n(g);tt(b,"for","field-"+r);var C=n(b,!0);a(b);var _=i(b,2);h(_),tt(_,"id","field-"+r),a(g),bt(()=>{Wt(C,u()),tt(_,"type",(u(),$(()=>E[u()]))),tt(_,"min",(u(),$(()=>E[u()]==="number"?0:null))),tt(_,"max",(u(),$(()=>E[u()]==="number"?100:null)))}),v(_,()=>e(t).Info[u()],k=>o(t,e(t).Info[u()]=k)),O(s,g)}),a(et);var nt=i(et,4),j=n(nt),m=n(j),I=i(n(m)),D=n(I);h(D),tt(D,"id","field-Agility"),a(I);var ot=i(I,2),dt=n(ot);h(dt),tt(dt,"id","field-Body"),a(ot);var it=i(ot,2),at=n(it);h(at),tt(at,"id","field-Charisma"),a(it);var yt=i(it,2),pt=n(yt);h(pt),tt(pt,"id","field-Edge"),a(yt),a(m);var ut=i(m),vt=i(n(ut)),At=n(vt);h(At),tt(At,"id","field-Essence"),a(vt);var Ct=i(vt,2),qt=n(Ct);h(qt),tt(qt,"id","field-Initiative"),a(Ct);var Ht=i(Ct,2),Kt=n(Ht);h(Kt),tt(Kt,"id","field-Charisma"),a(Ht);var ge=i(Ht,2),jt=n(ge);h(jt),tt(jt,"id","field-Edge"),a(ge),a(ut);var Ce=i(ut),Ft=i(n(Ce)),Ut=n(Ft);h(Ut),tt(Ut,"id","field-Initiative"),a(Ft);var Yt=i(Ft,2),zt=n(Yt);h(zt),tt(zt,"id","field-Charisma"),a(Yt);var we=i(Yt,2),Gt=n(we);h(Gt),tt(Gt,"id","field-Edge"),a(we),Fa(),a(Ce),a(j),a(nt);var Jt=i(nt,4),Ae=i(n(Jt));Z(Ae,5,()=>(e(t),$(()=>e(t).Skills)),J,(s,x,r)=>{var y=ur(),u=n(y),g=n(u);Pt(g),It(g,Y=>Rt?.(Y)),wt(()=>v(g,()=>e(t).Skills[r].Name,Y=>o(t,e(t).Skills[r].Name=Y))),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);bt(()=>{e(t),ye(()=>{})}),Z(k,5,()=>(ze(kt),$(()=>Object.keys(kt.Attributes))),J,(Y,mt)=>{var _t=dr(),xt=n(_t,!0);a(_t);var Nt={};bt(()=>{Wt(xt,e(mt)),Nt!==(Nt=e(mt))&&(_t.value=(_t.__value=e(mt))??"")}),O(Y,_t)}),a(k),a(_);var S=i(_),T=n(S),N=n(T,!0);a(T),a(S);var F=i(S),H=n(F);h(H),a(F);var G=i(F),K=n(G);a(G);var U=i(G),Q=n(U);a(U),a(y),bt(()=>Wt(N,(e(x),e(t),$(()=>e(x).Rating+e(t).Attributes[e(x).Attribute])))),v(C,()=>e(t).Skills[r].Rating,Y=>o(t,e(t).Skills[r].Rating=Y)),fe(k,()=>e(t).Skills[r].Attribute,Y=>o(t,e(t).Skills[r].Attribute=Y)),v(H,()=>e(t).Skills[r].Page,Y=>o(t,e(t).Skills[r].Page=Y)),W("click",K,()=>M(e(t).Skills[r].Page)),W("click",Q,()=>L("Skills",r)),O(s,y)}),a(Ae),a(Jt);var xe=i(Jt,2),Zt=i(xe,4),Ne=i(n(Zt));Z(Ne,5,()=>(e(t),$(()=>e(t).Connections)),J,(s,x,r)=>{var y=vr(),u=n(y),g=n(u);Pt(g),It(g,N=>Rt?.(N)),wt(()=>v(g,()=>e(t).Connections[r].Name,N=>o(t,e(t).Connections[r].Name=N))),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);h(k),a(_);var S=i(_),T=n(S);a(S),a(y),v(C,()=>e(t).Connections[r].Loyalty,N=>o(t,e(t).Connections[r].Loyalty=N)),v(k,()=>e(t).Connections[r].Connection,N=>o(t,e(t).Connections[r].Connection=N)),W("click",T,()=>L("Connections",r)),O(s,y)}),a(Ne),a(Zt);var Pe=i(Zt,2),te=i(Pe,4),ke=i(n(te));Z(ke,5,()=>(e(t),$(()=>e(t).RangedWeapons)),J,(s,x,r)=>{var y=cr(),u=n(y),g=n(u);Pt(g),It(g,X=>Rt?.(X)),wt(()=>v(g,()=>e(t).RangedWeapons[r].Weapon,X=>o(t,e(t).RangedWeapons[r].Weapon=X))),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);Pt(k),It(k,X=>Rt?.(X)),wt(()=>v(k,()=>e(t).RangedWeapons[r].Type,X=>o(t,e(t).RangedWeapons[r].Type=X))),a(_);var S=i(_),T=n(S);h(T),a(S);var N=i(S),F=n(N);Pt(F),It(F,X=>Rt?.(X)),wt(()=>v(F,()=>e(t).RangedWeapons[r].Mode,X=>o(t,e(t).RangedWeapons[r].Mode=X))),a(N);var H=i(N),G=n(H);h(G),a(H);var K=i(H),U=n(K);h(U),a(K);var Q=i(K),Y=n(Q);Pt(Y),It(Y,X=>Rt?.(X)),wt(()=>v(Y,()=>e(t).RangedWeapons[r].Availabiliy,X=>o(t,e(t).RangedWeapons[r].Availabiliy=X))),a(Q);var mt=i(Q),_t=n(mt);h(_t),a(mt);var xt=i(mt),Nt=n(xt);a(xt);var Lt=i(xt),st=n(Lt);a(Lt),a(y),v(C,()=>e(t).RangedWeapons[r].Damage,X=>o(t,e(t).RangedWeapons[r].Damage=X)),v(T,()=>e(t).RangedWeapons[r].AP,X=>o(t,e(t).RangedWeapons[r].AP=X)),v(G,()=>e(t).RangedWeapons[r].RC,X=>o(t,e(t).RangedWeapons[r].RC=X)),v(U,()=>e(t).RangedWeapons[r].Ammo,X=>o(t,e(t).RangedWeapons[r].Ammo=X)),v(_t,()=>e(t).Connections[r].Page,X=>o(t,e(t).Connections[r].Page=X)),W("click",Nt,()=>M(e(t).Connections[r].Page)),W("click",st,()=>L("RangedWeapons",r)),O(s,y)}),a(ke),a(te);var Se=i(te,2),ee=i(Se,4),We=i(n(ee));Z(We,5,()=>(e(t),$(()=>e(t).MeleeWeapons)),J,(s,x,r)=>{var y=_r(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);h(k),a(_);var S=i(_),T=n(S);h(T),a(S);var N=i(S),F=n(N);h(F),a(N);var H=i(N),G=n(H),K=n(G,!0);a(G),a(H);var U=i(H),Q=n(U);h(Q),a(U);var Y=i(U),mt=n(Y);h(mt),a(Y);var _t=i(Y),xt=n(_t);a(_t);var Nt=i(_t),Lt=n(Nt);a(Nt),a(y),bt(()=>Wt(K,(e(x),e(t),$(()=>e(x)["Strength Multiplier"]*e(t).Attributes.Strength+e(x).Damage)))),v(g,()=>e(t).MeleeWeapons[r].Weapon,st=>o(t,e(t).MeleeWeapons[r].Weapon=st)),v(C,()=>e(t).MeleeWeapons[r].Reach,st=>o(t,e(t).MeleeWeapons[r].Reach=st)),v(k,()=>e(t).MeleeWeapons[r].Damage,st=>o(t,e(t).MeleeWeapons[r].Damage=st)),v(T,()=>e(t).MeleeWeapons[r].Type,st=>o(t,e(t).MeleeWeapons[r].Type=st)),v(F,()=>e(t).MeleeWeapons[r]["Strength Multiplier"],st=>o(t,e(t).MeleeWeapons[r]["Strength Multiplier"]=st)),v(Q,()=>e(t).MeleeWeapons[r].AP,st=>o(t,e(t).MeleeWeapons[r].AP=st)),v(mt,()=>e(t).Connections[r].Page,st=>o(t,e(t).Connections[r].Page=st)),W("click",xt,()=>M(e(t).Connections[r].Page)),W("click",Lt,()=>L("MeleeWeapons",r)),O(s,y)}),a(We),a(ee);var Ie=i(ee,2),ae=i(Ie,4),Re=i(n(ae));Z(Re,5,()=>(e(t),$(()=>e(t).Armor)),J,(s,x,r)=>{var y=hr(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);h(k),a(_);var S=i(_),T=n(S);h(T),a(S);var N=i(S),F=n(N);a(N);var H=i(N),G=n(H);a(H),a(y),v(g,()=>e(t).Armor[r].Armor,K=>o(t,e(t).Armor[r].Armor=K)),v(C,()=>e(t).Armor[r].Ballistic,K=>o(t,e(t).Armor[r].Ballistic=K)),v(k,()=>e(t).Armor[r].Impact,K=>o(t,e(t).Armor[r].Impact=K)),v(T,()=>e(t).Armor[r].Page,K=>o(t,e(t).Armor[r].Page=K)),W("click",F,()=>M(e(t).Armor[r].Page)),W("click",G,()=>L("Armor",r)),O(s,y)}),a(Re),a(ae);var Ee=i(ae,2),re=i(Ee,4),Me=i(n(re));Z(Me,5,()=>(e(t),$(()=>e(t).Cyberware)),J,(s,x,r)=>{var y=pr(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);h(k),a(_);var S=i(_),T=n(S);h(T),a(S);var N=i(S),F=n(N);h(F),a(N);var H=i(N),G=n(H);a(H);var K=i(H),U=n(K);a(K),a(y),v(g,()=>e(t).Cyberware[r].Implant,Q=>o(t,e(t).Cyberware[r].Implant=Q)),v(C,()=>e(t).Cyberware[r].Rating,Q=>o(t,e(t).Cyberware[r].Rating=Q)),v(k,()=>e(t).Cyberware[r].Essence,Q=>o(t,e(t).Cyberware[r].Essence=Q)),v(T,()=>e(t).Cyberware[r].Notes,Q=>o(t,e(t).Cyberware[r].Notes=Q)),v(F,()=>e(t).Connections[r].Page,Q=>o(t,e(t).Connections[r].Page=Q)),W("click",G,()=>M(e(t).Connections[r].Page)),W("click",U,()=>L("Cyberware",r)),O(s,y)}),a(Me),a(re);var De=i(re,2),ne=i(De,4),Qe=i(n(ne));Z(Qe,5,()=>(e(t),$(()=>e(t).Bioware)),J,(s,x,r)=>{var y=br(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);h(k),a(_);var S=i(_),T=n(S);h(T),a(S);var N=i(S),F=n(N);h(F),a(N);var H=i(N),G=n(H);a(H);var K=i(H),U=n(K);a(K),a(y),v(g,()=>e(t).Bioware[r].Implant,Q=>o(t,e(t).Bioware[r].Implant=Q)),v(C,()=>e(t).Bioware[r].Rating,Q=>o(t,e(t).Bioware[r].Rating=Q)),v(k,()=>e(t).Bioware[r].Essence,Q=>o(t,e(t).Bioware[r].Essence=Q)),v(T,()=>e(t).Bioware[r].Notes,Q=>o(t,e(t).Bioware[r].Notes=Q)),v(F,()=>e(t).Connections[r].Page,Q=>o(t,e(t).Connections[r].Page=Q)),W("click",G,()=>M(e(t).Connections[r].Page)),W("click",U,()=>L("Bioware",r)),O(s,y)}),a(Qe),a(ne);var Te=i(ne,2),ie=i(Te,6),Be=i(n(ie));Z(Be,5,()=>(e(t),$(()=>e(t).PositiveQualities)),J,(s,x,r)=>{var y=yr(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);a(_);var S=i(_),T=n(S);a(S),a(y),v(g,()=>e(t).PositiveQualities[r].Qualitiy,N=>o(t,e(t).PositiveQualities[r].Qualitiy=N)),v(C,()=>e(t).PositiveQualities[r].Page,N=>o(t,e(t).PositiveQualities[r].Page=N)),W("click",k,()=>M(e(t).PositiveQualities[r].Page)),W("click",T,()=>L("PositiveQualities",r)),O(s,y)}),a(Be),a(ie);var Le=i(ie,2),se=i(Le,4),Oe=i(n(se));Z(Oe,5,()=>(e(t),$(()=>e(t).NegativeQualities)),J,(s,x,r)=>{var y=mr(),u=n(y),g=n(u);h(g),a(u);var b=i(u),C=n(b);h(C),a(b);var _=i(b),k=n(_);a(_);var S=i(_),T=n(S);a(S),a(y),v(g,()=>e(t).NegativeQualities[r].Qualitiy,N=>o(t,e(t).NegativeQualities[r].Qualitiy=N)),v(C,()=>e(t).NegativeQualities[r].Page,N=>o(t,e(t).NegativeQualities[r].Page=N)),W("click",k,()=>M(e(t).NegativeQualities[r].Page)),W("click",T,()=>L("NegativeQualities",r)),O(s,y)}),a(Oe),a(se);var Ve=i(se,2),oe=i(Ve,4),Xe=n(oe);Z(Xe,5,()=>(e(t),$(()=>e(t).PysicalCondition)),J,(s,x,r)=>{var y=gr();Z(y,5,()=>e(x),J,(u,g,b)=>{var C=fr(),_=n(C);h(_),a(C),Ge(_,()=>e(t).PysicalCondition[r][b],k=>o(t,e(t).PysicalCondition[r][b]=k)),O(u,C)}),a(y),O(s,y)}),a(Xe),a(oe);var le=i(oe,4),$e=n(le);Z($e,5,()=>(e(t),$(()=>e(t).StunCondition)),J,(s,x,r)=>{var y=wr();Z(y,5,()=>e(x),J,(u,g,b)=>{var C=Cr(),_=n(C);h(_),a(C),Ge(_,()=>e(t).StunCondition[r][b],k=>o(t,e(t).StunCondition[r][b]=k)),O(u,C)}),a(y),O(s,y)}),a($e),a(le);var de=i(le,4),qe=i(n(de));Z(qe,5,()=>(e(t),$(()=>e(t).Inventory)),J,(s,x,r,y)=>{var u=Ar(),g=n(u),b=n(g);h(b),a(g);var C=i(g),_=n(C);h(_),a(C);var k=i(C),S=n(k);h(S),a(k);var T=i(k),N=n(T);h(N),a(T);var F=i(T),H=n(F);a(F);var G=i(F),K=n(G);a(G),a(u),v(b,()=>e(t).Inventory[r].Item,U=>o(t,e(t).Inventory[r].Item=U)),v(_,()=>e(t).NegativeQualities[r].Quantity,U=>o(t,e(t).NegativeQualities[r].Quantity=U)),v(S,()=>e(t).NegativeQualities[r].Notes,U=>o(t,e(t).NegativeQualities[r].Notes=U)),v(N,()=>e(t).Inventory[r].Page,U=>o(t,e(t).Inventory[r].Page=U)),W("click",H,()=>M(e(t).Inventory[r].Page)),W("click",K,()=>L("Inventory",r)),O(s,u)}),a(qe),a(de);var He=i(de,2),ue=i(He,4),Tt=n(ue);bt(()=>{e(p),ye(()=>{e(l)})});var ha=n(Tt);{var pa=s=>{var x=xr();x.value=(x.__value=null)??"",O(s,x)},ba=s=>{var x=ea(),r=Dt(x);Z(r,1,()=>e(l),J,(y,u)=>{var g=Nr(),b=n(g,!0);a(g);var C={};bt(_=>{Wt(b,_),C!==(C=e(u))&&(g.value=(g.__value=e(u))??"")},[()=>(e(u),$(()=>w(e(u))))]),O(y,g)}),O(s,x)};Vt(ha,s=>{e(l),$(()=>e(l).length===0)?s(pa):s(ba,!1)})}a(Tt);var Ke=i(Tt,2),ya=i(Ke,2);{var ma=s=>{var x=Pr();W("click",x,P),O(s,x)};Vt(ya,s=>{e(p)!==null&&s(ma)})}a(ue);var ve=i(ue,2),Bt=n(ve);Pt(Bt),a(ve);var fa=i(ve,2);bt(()=>{Wt(z,`Name: ${ze(f()),$(()=>f().name)??""}`),tt(Bt,"placeholder",(e(l),$(()=>e(l).length===0?"Click 'New Note' to start...":"Write your session notes here..."))),Bt.disabled=e(p)===null}),v(D,()=>e(t).Attributes.Agility,s=>o(t,e(t).Attributes.Agility=s)),v(dt,()=>e(t).Attributes.Body,s=>o(t,e(t).Attributes.Body=s)),v(at,()=>e(t).Attributes.Charisma,s=>o(t,e(t).Attributes.Charisma=s)),v(pt,()=>e(t).Attributes.Edge,s=>o(t,e(t).Attributes.Edge=s)),v(At,()=>e(t).Attributes.Essence,s=>o(t,e(t).Attributes.Essence=s)),v(qt,()=>e(t).Attributes.Initiative,s=>o(t,e(t).Attributes.Initiative=s)),v(Kt,()=>e(t).Attributes.Intuition,s=>o(t,e(t).Attributes.Intuition=s)),v(jt,()=>e(t).Attributes.Logic,s=>o(t,e(t).Attributes.Logic=s)),v(Ut,()=>e(t).Attributes.Reaction,s=>o(t,e(t).Attributes.Reaction=s)),v(zt,()=>e(t).Attributes.Strength,s=>o(t,e(t).Attributes.Strength=s)),v(Gt,()=>e(t).Attributes.Willpower,s=>o(t,e(t).Attributes.Willpower=s)),W("click",xe,()=>B("Skills")),W("click",Pe,()=>B("Connections")),W("click",Se,()=>B("RangedWeapons")),W("click",Ie,()=>B("MeleeWeapons")),W("click",Ee,()=>B("Armor")),W("click",De,()=>B("Cyberware")),W("click",Te,()=>B("Bioware")),W("click",Le,()=>B("PositiveQualities")),W("click",Ve,()=>B("NegativeQualities")),W("click",He,()=>B("Inventory")),fe(Tt,()=>e(p),s=>ct(p,s)),W("click",Ke,ht),v(Bt,()=>e(t).Notes[e(p)],s=>o(t,e(t).Notes[e(p)]=s)),W("click",fa,rt),O(d,A),ua()}var Wr=q("<p>No characters found.</p>"),Ir=q("<option> </option>"),Rr=q("<select><option disabled selected>Select character</option><!></select> <button>Load</button>",1),Er=q('<h1>Shadowrun Character Manager</h1> <div style="margin-bottom: 2rem;"><h2>Load Existing Character</h2> <!></div> <div><h2>Create New Character</h2> <input type="text" placeholder="Character Name"/> <button>Create</button></div>',1);function $r(d,c){da(c,!1);let l=gt([]),f=gt(null),R=gt(null),t=gt(null),p=gt("");async function E(){const w=await fetch(`${Et}/api/shadowrun/characters`);w.ok&&ct(l,await w.json())}async function B(w){const A=await fetch(`${Et}/api/shadowrun/characters_data/${w}`);A.ok&&ct(R,await A.json())}ga(E);async function L(){if(e(t)==null)return;const w=await fetch(`${Et}/api/shadowrun/characters/${e(t)}`);if(w.ok){const A=await w.json();await B(A.id),ct(f,A)}}async function M(){if(!e(p))return;const w=await fetch(`${Et}/api/shadowrun/characters`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e(p)})});if(w.ok){const A=await w.json();ct(f,A),e(l).push(A)}}aa();var lt=ea(),rt=Dt(lt);{var ht=w=>{var A=Er(),V=i(Dt(A),2),z=i(n(V),2);{var et=D=>{var ot=Wr();O(D,ot)},nt=D=>{var ot=Rr(),dt=Dt(ot);bt(()=>{e(t),ye(()=>{e(l)})});var it=n(dt);it.value=(it.__value=null)??"";var at=i(it);Z(at,1,()=>e(l),J,(pt,ut)=>{var vt=Ir(),At=n(vt,!0);a(vt);var Ct={};bt(()=>{Wt(At,e(ut).name),Ct!==(Ct=e(ut).id)&&(vt.value=(vt.__value=e(ut).id)??"")}),O(pt,vt)}),a(dt);var yt=i(dt,2);bt(()=>yt.disabled=e(t)===null),fe(dt,()=>e(t),pt=>ct(t,pt)),W("click",yt,L),O(D,ot)};Vt(z,D=>{e(l).length===0?D(et):D(nt,!1)})}a(V);var j=i(V,2),m=i(n(j),2);h(m);var I=i(m,2);a(j),v(m,()=>e(p),D=>ct(p,D)),W("click",I,M),O(w,A)},P=w=>{Sr(w,{get currentCharacter(){return e(f)},get currentCharacterData(){return e(R)}})};Vt(rt,w=>{e(f)?w(P,!1):w(ht)})}O(d,lt),ua()}export{$r as component};
|