This commit is contained in:
trmazi
2025-07-12 01:14:22 +00:00
parent 3b0d6333dd
commit 0733867fa7
71 changed files with 98 additions and 79 deletions

View File

@@ -1 +1 @@
import{r as w,p as C,o as b,c as x,d as v,w as s,e as t,_ as y,h as r,i as o,N as m,g as d,aD as h,aE as g,v as A,l as $,n as k}from"./index-vA9N45XP.js";import{_ as N}from"./GeneralTable-7ScsFktP.js";import{_ as P}from"./FormField-BJ53twuK.js";import{_ as V}from"./FormControl-CbA50xCq.js";import{f as D,g as B}from"./admin-DLWnlEF3.js";const I={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},F={class:"w-full"},j={__name:"APIView",setup(M){const n=w([]),u=[{text:"Create Timestamp",value:"timestamp",width:120},{text:"Name",value:"name",width:120}],i=C({...{name:null}});b(async()=>{c()});async function c(){try{const l=await D();var a=[];for(var e of l){if(e.timestamp){const _=new Date(e.timestamp*1e3);e.timestamp=_.toLocaleString()}a.push(e)}n.value=a}catch(l){console.error("Failed to fetch client data:",l)}}async function f(){try{const a=await B(i);n.value=a}catch(a){console.error("Failed to post client:",a)}c()}const p=a=>{navigator.clipboard.writeText(a.token).then(()=>{alert("Copied to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};return(a,e)=>(v(),x(k,null,{default:s(()=>[t(y,null,{default:s(()=>[t(r,{class:"mb-6 p-1"},{default:s(()=>e[2]||(e[2]=[o("h1",{class:"text-3xl"},"Data API",-1),o("p",{class:"text-sm text-gray-400"},"Used for RestfulSleep and BEMAPI",-1)])),_:1}),t(m,{icon:d(h),title:"All Active Clients",color:"text-blue-400",main:""},null,8,["icon"]),t(r,{"has-table":"",class:"mb-6"},{default:s(()=>[o("div",I,[o("div",F,[t(N,{headers:u,items:n.value,onRowClicked:p},null,8,["items"]),e[3]||(e[3]=o("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to copy token ",-1))])])]),_:1}),t(m,{icon:d(g),title:"Create New Client",color:"text-emerald-600",main:""},null,8,["icon"]),t(r,{"is-form":"",class:"row-span-1",onSubmit:e[1]||(e[1]=A(l=>f(),["prevent"]))},{default:s(()=>[t(P,{label:"Name",help:"Name of the client you'd like to onboard."},{default:s(()=>[t(V,{modelValue:i.name,"onUpdate:modelValue":e[0]||(e[0]=l=>i.name=l),required:""},null,8,["modelValue"])]),_:1}),o("div",null,[t($,{type:"submit",color:"success",label:"Create",small:!1})])]),_:1})]),_:1})]),_:1}))}};export{j as default};
import{r as w,p as C,o as b,c as x,d as v,w as s,e as t,_ as y,h as r,i as o,P as m,g as d,aG as h,aH as g,v as A,l as $,n as k}from"./index-CHivKhhP.js";import{_ as P}from"./GeneralTable-Dm8yzA2j.js";import{_ as N}from"./FormField-vtioLqMT.js";import{_ as V}from"./FormControl-BLuW9GWW.js";import{f as B,g as D}from"./admin-YL_-tKB5.js";const I={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},F={class:"w-full"},j={__name:"APIView",setup(M){const n=w([]),u=[{text:"Create Timestamp",value:"timestamp",width:120},{text:"Name",value:"name",width:120}],i=C({...{name:null}});b(async()=>{c()});async function c(){try{const l=await B();var a=[];for(var e of l){if(e.timestamp){const _=new Date(e.timestamp*1e3);e.timestamp=_.toLocaleString()}a.push(e)}n.value=a}catch(l){console.error("Failed to fetch client data:",l)}}async function f(){try{const a=await D(i);n.value=a}catch(a){console.error("Failed to post client:",a)}c()}const p=a=>{navigator.clipboard.writeText(a.token).then(()=>{alert("Copied to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};return(a,e)=>(v(),x(k,null,{default:s(()=>[t(y,null,{default:s(()=>[t(r,{class:"mb-6 p-1"},{default:s(()=>e[2]||(e[2]=[o("h1",{class:"text-3xl"},"Data API",-1),o("p",{class:"text-sm text-gray-400"},"Used for RestfulSleep and BEMAPI",-1)])),_:1}),t(m,{icon:d(h),title:"All Active Clients",color:"text-blue-400",main:""},null,8,["icon"]),t(r,{"has-table":"",class:"mb-6"},{default:s(()=>[o("div",I,[o("div",F,[t(P,{headers:u,items:n.value,onRowClicked:p},null,8,["items"]),e[3]||(e[3]=o("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to copy token ",-1))])])]),_:1}),t(m,{icon:d(g),title:"Create New Client",color:"text-emerald-600",main:""},null,8,["icon"]),t(r,{"is-form":"",class:"row-span-1",onSubmit:e[1]||(e[1]=A(l=>f(),["prevent"]))},{default:s(()=>[t(N,{label:"Name",help:"Name of the client you'd like to onboard."},{default:s(()=>[t(V,{modelValue:i.name,"onUpdate:modelValue":e[0]||(e[0]=l=>i.name=l),required:""},null,8,["modelValue"])]),_:1}),o("div",null,[t($,{type:"submit",color:"success",label:"Create",small:!1})])]),_:1})]),_:1})]),_:1}))}};export{j as default};

View File

@@ -0,0 +1,5 @@
import{r as w,j as t,d as s,e as d,w as x,i as l,f as b,t as n,c as p,g as r,Q as g,a$ as v,b0 as $,I as c,F as i,k as S,l as f,b1 as A,aU as B,ao as C,a_ as E,b2 as N,b3 as T}from"./index-CHivKhhP.js";const V={class:"space-y-3 text-center w-full"},j={class:"text-2xl lg:text-3xl font-bold"},H={class:"flex gap-2 justify-center items-center"},I={class:"text-xl md:text-2xl font-bold"},P={class:"flex flex-wrap gap-4 place-content-center"},L={key:0,class:"text-lg"},M={class:"md:w-full grid grid-cols-1 md:grid-cols-4 gap-3"},D={__name:"ArcadeCard",props:{useSmall:{type:Boolean,required:!1,default:!1},arcade:{type:Object,required:!0}},setup(e){const h="https://cdn.phaseii.network/file/PhaseII/web-assets";var y=w(e.arcade.data);function k(m){if(m!==null)return`
background-image: url('${m}');
background-size: cover;
background-repeat: no-repeat;
`}return(m,a)=>(s(),t("div",{style:T(k(`${r(h)}/card/carpet.webp`)),class:"rounded-2xl mb-6 w-full"},[d(N,{type:"justify-center",class:"bg-white dark:bg-slate-900/90 rounded-2xl p-6 w-full"},{default:x(()=>[l("div",V,[l("h1",j,n(e.arcade.name),1),l("div",H,[l("h2",I,n(e.arcade.description),1)]),l("div",P,[r(y).is_beta?(s(),p(g,{key:0,label:"Beta Enabled",color:"warning",icon:r(v)},null,8,["icon"])):b("",!0),d(g,{label:"Private Arcade",color:"info",icon:r($)},null,8,["icon"])]),a[4]||(a[4]=l("hr",{class:"border-t border-1 w-full"},null,-1)),e.arcade.owners&&e.arcade.owners.length?(s(),t("p",L,[a[3]||(a[3]=c(" Managed by ")),(s(!0),t(i,null,S(e.arcade.owners,(o,u)=>(s(),t("span",{key:o.username,class:"font-bold"},[e.arcade.owners.length===2&&u===0?(s(),t(i,{key:0},[c(n(o.username),1)],64)):e.arcade.owners.length===2&&u===1?(s(),t(i,{key:1},[a[0]||(a[0]=l("span",{class:"font-normal"}," and",-1)),c(" "+n(o.username)+".",1)],64)):u===0?(s(),t(i,{key:2},[c(n(o.username),1)],64)):u===e.arcade.owners.length-1?(s(),t(i,{key:3},[a[1]||(a[1]=c(", ")),a[2]||(a[2]=l("span",{class:"font-normal"}," and",-1)),c(" "+n(o.username)+".",1)],64)):(s(),t(i,{key:4},[c(", "+n(o.username),1)],64))]))),128))])):b("",!0),l("div",M,[d(f,{href:`/#/arcade/${e.arcade.id}`,icon:r(A),color:"info",label:"Arcade Home",class:"w-full md:w-[150px]"},null,8,["href","icon"]),d(f,{href:`/#/arcade/${e.arcade.id}/events`,icon:r(B),color:"info",label:"Event Settings"},null,8,["href","icon"]),d(f,{href:`/#/arcade/${e.arcade.id}/machines`,icon:r(C),color:"info",label:"Machine List"},null,8,["href","icon"]),d(f,{href:`/#/arcade/${e.arcade.id}/paseli`,icon:r(E),color:"info",label:"PASELI"},null,8,["href","icon"])])])]),_:1})],4))}};export{D as _};

View File

@@ -1,5 +0,0 @@
import{r as w,j as t,d as s,e as o,w as x,i as l,f as g,t as n,c as p,g as r,O as b,aY as v,aZ as $,H as c,F as i,k as S,l as f,a_ as A,aR as B,al as C,aX as E,a$ as H,b0 as N}from"./index-vA9N45XP.js";const T={class:"space-y-3 text-center w-full"},V={class:"text-2xl lg:text-3xl font-bold"},j={class:"flex gap-2 justify-center items-center"},P={class:"text-xl md:text-2xl font-bold"},I={class:"flex flex-wrap gap-4 place-content-center"},L={key:0,class:"text-lg"},M={class:"md:w-full grid grid-cols-1 md:grid-cols-4 gap-3"},z={__name:"ArcadeCard",props:{useSmall:{type:Boolean,required:!1,default:!1},arcade:{type:Object,required:!0}},setup(e){const h="https://cdn.phaseii.network/file/PhaseII/web-assets";var y=w(e.arcade.data);function k(m){if(m!==null)return`
background-image: url('${m}');
background-size: cover;
background-repeat: no-repeat;
`}return(m,a)=>(s(),t("div",{style:N(k(`${r(h)}/card/carpet.webp`)),class:"rounded-2xl mb-6 w-full"},[o(H,{type:"justify-center",class:"bg-white dark:bg-slate-900/90 rounded-2xl p-6 w-full"},{default:x(()=>[l("div",T,[l("h1",V,n(e.arcade.name),1),l("div",j,[l("h2",P,n(e.arcade.description),1)]),l("div",I,[r(y).is_beta?(s(),p(b,{key:0,label:"Beta Enabled",color:"warning",icon:r(v)},null,8,["icon"])):g("",!0),o(b,{label:"Private Arcade",color:"info",icon:r($)},null,8,["icon"])]),a[4]||(a[4]=l("hr",{class:"border-t border-1 w-full"},null,-1)),e.arcade.owners&&e.arcade.owners.length?(s(),t("p",L,[a[3]||(a[3]=c(" Managed by ")),(s(!0),t(i,null,S(e.arcade.owners,(d,u)=>(s(),t("span",{key:d.username,class:"font-bold"},[e.arcade.owners.length===2&&u===0?(s(),t(i,{key:0},[c(n(d.username),1)],64)):e.arcade.owners.length===2&&u===1?(s(),t(i,{key:1},[a[0]||(a[0]=l("span",{class:"font-normal"}," and",-1)),c(" "+n(d.username)+".",1)],64)):u===0?(s(),t(i,{key:2},[c(n(d.username),1)],64)):u===e.arcade.owners.length-1?(s(),t(i,{key:3},[a[1]||(a[1]=c(", ")),a[2]||(a[2]=l("span",{class:"font-normal"}," and",-1)),c(" "+n(d.username)+".",1)],64)):(s(),t(i,{key:4},[c(", "+n(d.username),1)],64))]))),128))])):g("",!0),l("div",M,[o(f,{href:`/#/arcade/${e.arcade.id}`,icon:r(A),color:"info",label:"Arcade Home",class:"w-full md:w-[150px]"},null,8,["href","icon"]),o(f,{href:`/#/arcade/${e.arcade.id}/events`,icon:r(B),color:"info",label:"Event Settings"},null,8,["href","icon"]),o(f,{href:`/#/arcade/${e.arcade.id}/machines`,icon:r(C),color:"info",label:"Machine List"},null,8,["href","icon"]),o(f,{href:`/#/arcade/${e.arcade.id}/paseli`,icon:r(E),color:"info",label:"PASELI"},null,8,["href","icon"])])])]),_:1})],4))}};export{z as _};

View File

@@ -1,2 +1,2 @@
import{b as Y,r as m,u as Z,a as ee,L as ae,o as le,c as _,d as i,w as r,e as a,_ as ne,j as g,f as A,F as k,i as o,g as d,N as x,aN as te,h,v as C,O as N,av as L,l as u,B as R,aw as se,ax as oe,P as ie,k as D,aO as re,t as de,aP as ue,ay as ce,aQ as me,ak as fe,n as pe}from"./index-vA9N45XP.js";import{_ as ve}from"./ArcadeCard-DnKlr5sp.js";import{_ as w}from"./FormField-BJ53twuK.js";import{_ as F}from"./FormCheckRadio-Roj-HW28.js";import{_ as O}from"./FormControl-CbA50xCq.js";import{s as P,g as J}from"./values-CmNcmtTU.js";import{A as be,a as _e,b as ge}from"./arcade-CXvzpsdX.js";import{i as Ae,l as ye,c as he,m as we,n as ke,o as Ne}from"./admin-DLWnlEF3.js";const Ve={class:"grid grid-cols-1 lg:grid-cols-2 gap-6"},$e={class:"mb-4 flex gap-2 items-stretch"},Se={key:0,class:"space-x-2 mt-6 mb-4"},xe={class:"mb-4"},Ce={class:"mb-4"},Oe={class:"grid gap-4"},Pe={class:"flex justify-between items-center"},Ie={class:"m-[-5px] md:flex items-center gap-2"},Ue={class:"w-8 md:w-12"},Me={class:"text-lg lg:text-xl font-bold"},Be={class:"grid grid-cols-1 w-full gap-2 md:gap-6 md:flex md:place-content-stretch"},Ee={key:0,class:"space-x-2 mt-6"},Le={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 mb-6"},Qe={__name:"ArcadeView",setup(Re){const V=Y(),b=m(null),$=m(null),c=m(null),I=m(!0),S=m(null),s=m(null),y=m(null),U=m(null),j=Z(),q=ee(),f=parseInt(j.params.id);var M=[{id:"paseli_enabled",name:"PASELI Services",help:"Enable PASELI for this arcade.",type:"Boolean"},{id:"paseli_infinite",name:"Infinite PASELI",help:"Enable infinite PASELI for this arcade.",type:"Boolean"},{id:"maint",name:"Maintenance Mode",help:"Place this arcade under maintenance.",type:"Boolean"},{id:"hide_network",name:"Incognito Mode",help:"Hide the network and all ranking data.",type:"Boolean"}];async function p(){try{c.value={},b.value={},$.value={};const n=await be(f);c.value=n,s.value=JSON.parse(JSON.stringify(n));for(const e of M){const t=J(c.value.data,e.id);P(b.value,e.id,t),P($.value,e.id,t)}I.value=!1}catch(n){console.error("Failed to fetch arcade data:",n)}}async function B(){if(V.userAdmin)try{const n=await Ae(!0),e=[];for(const t of n)t.username!=null&&e.push({id:t.id,label:t.username});e.sort((t,v)=>t.label.localeCompare(v.label)),U.value=e}catch(n){console.error("Failed to fetch admin user data:",n)}}ae(()=>V.userAdmin,()=>{B()});async function G(){(await _e(f,b.value)).status!="error"&&await p()}le(()=>{p(),B()});function z(n,e="NA_"){var t=[...n].map(v=>v.charCodeAt(0)<128?v:e).join("");return t=t.replace(/[!"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~]/g,""),t=t.replace(/\s+/g,"_"),t}async function H(){try{const n=await ge(f),e=new Blob([n],{type:"application/ovpn"}),t=document.createElement("a");t.href=URL.createObjectURL(e),t.download=`gradius-${z(c.value.name)}-phaseii-config.ovpn`,document.body.appendChild(t),t.click(),URL.revokeObjectURL(t.href),document.body.removeChild(t)}catch(n){console.log("Failed to fetch arcade data:",n)}}async function Q(){if(s.value.name){const n=await he(s.value.name);n.unused!=null&&(S.value=n.unused)}}async function T(){(await ye(f,{name:s.value.name,description:s.value.description,beta:s.value.data.is_beta})).status!="error"&&await p()}async function K(){if(y.value==null)return;(await ke(f,y.value)).status!="error"&&(y.value=null,p())}async function W(n){if(!n)return;(await Ne(f,n)).status!="error"&&p()}async function X(){window.confirm(`Are you really?
This will remove all owners, machines, and arcade data.`)&&(await we(f)).status!="error"&&await q.push({name:"admin_arcades"})}return(n,e)=>(i(),_(pe,null,{default:r(()=>[a(ne,null,{default:r(()=>{var t,v;return[I.value?A("",!0):(i(),g(k,{key:0},[a(ve,{class:"mb-6",arcade:c.value},null,8,["arcade"]),d(V).userAdmin?(i(),g(k,{key:0},[a(x,{icon:d(te),title:"Arcade Administration",main:""},null,8,["icon"]),o("div",Ve,[a(h,{"is-form":"",class:"lg:mb-6",onSubmit:C(T,["prevent"])},{default:r(()=>[a(N,{color:"info",label:"General Information",icon:d(L),class:"mb-2"},null,8,["icon"]),a(w,{label:"Arcade Name"},{default:r(()=>[a(O,{modelValue:s.value.name,"onUpdate:modelValue":e[0]||(e[0]=l=>s.value.name=l),"input-value":s.value.name,name:"arcadeName",required:""},null,8,["modelValue","input-value"])]),_:1}),o("div",$e,[a(u,{color:"info",label:"Check Name",onClick:e[1]||(e[1]=l=>Q())}),S.value==!0?(i(),_(R,{key:0,path:d(se),color:"text-green-400",size:"25"},null,8,["path"])):S.value==!1?(i(),_(R,{key:1,path:d(oe),color:"text-red-400",size:"25"},null,8,["path"])):A("",!0)]),a(w,{label:"Description"},{default:r(()=>[a(O,{modelValue:s.value.description,"onUpdate:modelValue":e[2]||(e[2]=l=>s.value.description=l),name:"description",required:""},null,8,["modelValue"])]),_:1}),a(w,{label:"Beta Enabled"},{default:r(()=>[a(F,{modelValue:s.value.data.is_beta,"onUpdate:modelValue":e[3]||(e[3]=l=>s.value.data.is_beta=l),name:"beta","model-value":s.value.data.is_beta,"input-value":s.value.data.is_beta,type:"switch"},null,8,["modelValue","model-value","input-value"])]),_:1}),JSON.stringify(c.value)!==JSON.stringify(s.value)?(i(),g("div",Se,[a(u,{color:"success",label:"Save",type:"submit"}),a(u,{color:"warning",label:"Revert",onClick:e[4]||(e[4]=l=>p())})])):A("",!0),o("div",null,[a(u,{color:"danger",label:"Delete Arcade",onClick:e[5]||(e[5]=l=>X())})])]),_:1}),a(h,{class:"mb-6"},{default:r(()=>[o("div",xe,[a(N,{color:"info",label:"Add Manager",icon:d(L),class:"mb-2"},null,8,["icon"]),o("form",{class:"h-full",onSubmit:C(K,["prevent"])},[a(w,{label:"Username"},{default:r(()=>[a(O,{modelValue:y.value,"onUpdate:modelValue":e[6]||(e[6]=l=>y.value=l),name:"username",options:U.value,required:""},null,8,["modelValue","options"])]),_:1}),a(u,{color:"success",type:"submit",label:"Add Manager"})],32)]),a(ie),o("div",Ce,[a(N,{color:"warning",label:"Managers",class:"mb-4"}),o("div",Oe,[(i(!0),g(k,null,D(c.value.owners,l=>(i(),_(h,{key:l,"color-prop":"bg-slate-800 dark:bg-slate-800"},{default:r(()=>[o("div",Pe,[o("div",Ie,[o("div",Ue,[a(re,{username:l.username,avatar:l.avatar},null,8,["username","avatar"])]),o("h1",Me,de(l.username),1)]),a(u,{color:"danger",label:"Remove",onClick:E=>W(l.id)},null,8,["onClick"])])]),_:2},1024))),128))])])]),_:1})])],64)):A("",!0),a(x,{icon:d(ue),title:"Arcade Management",main:""},null,8,["icon"]),a(h,{"is-form":"",class:"mb-6",onSubmit:C(G,["prevent"])},{default:r(()=>[a(N,{color:"info",label:"Settings",icon:d(ce),class:"mb-2"},null,8,["icon"]),o("div",Be,[(i(!0),g(k,null,D(d(M),l=>(i(),_(w,{key:l.id,label:l.name,help:l.help},{default:r(()=>[l.type=="Boolean"?(i(),_(F,{key:0,name:l.id,"model-value":!!(d(J)(b.value,l.id)??!1),"input-value":!0,type:"switch","onUpdate:modelValue":E=>d(P)(b.value,l.id,E??!1)},null,8,["name","model-value","onUpdate:modelValue"])):A("",!0)]),_:2},1032,["label","help"]))),128))]),JSON.stringify(b.value)!==JSON.stringify($.value)?(i(),g("div",Ee,[a(u,{color:"success",label:"Save",type:"submit"}),a(u,{color:"danger",label:"Revert",onClick:e[7]||(e[7]=l=>p())})])):A("",!0)]),_:1}),a(h,{class:"w-full md:w-1/2 mb-6"},{default:r(()=>[e[9]||(e[9]=o("h1",{class:"text-lg md:text-xl"},"OpenVPN Configuration",-1)),e[10]||(e[10]=o("p",{class:"pb-1 dark:text-white/50"}," Use this to download your VPN config. ",-1)),a(u,{small:!1,color:"success",class:"my-2",label:"Export",onClick:e[8]||(e[8]=l=>H())})]),_:1}),a(x,{icon:d(me),title:"Arcade Overview",main:""},null,8,["icon"]),o("div",Le,[a(fe,{number:(v=(t=c.value)==null?void 0:t.machines)==null?void 0:v.length,label:"Active Machines"},null,8,["number"])])],64))]}),_:1})]),_:1}))}};export{Qe as default};
import{u as Y,r as m,a as Z,b as ee,M as ae,o as le,c as _,d as i,w as r,e as a,_ as ne,j as g,f as A,F as k,i as o,g as d,P as x,aQ as te,h,v as C,Q as S,ay as E,l as u,C as L,az as se,aA as oe,R as ie,k as D,aR as re,t as de,aS as ue,aB as ce,aT as me,an as fe,n as pe}from"./index-CHivKhhP.js";import{_ as ve}from"./ArcadeCard-B-wORdMu.js";import{_ as w}from"./FormField-vtioLqMT.js";import{_ as F}from"./FormCheckRadio-DdZBsrII.js";import{_ as O}from"./FormControl-BLuW9GWW.js";import{s as P,g as J}from"./values-CmNcmtTU.js";import{A as be,a as _e,b as ge}from"./arcade-C_iviJ_9.js";import{i as Ae,l as ye,c as he,m as we,n as ke,o as Se}from"./admin-YL_-tKB5.js";const Ve={class:"grid grid-cols-1 lg:grid-cols-2 gap-6"},$e={class:"mb-4 flex gap-2 items-stretch"},Ne={key:0,class:"space-x-2 mt-6 mb-4"},xe={class:"mb-4"},Ce={class:"mb-4"},Oe={class:"grid gap-4"},Pe={class:"flex justify-between items-center"},Ie={class:"m-[-5px] md:flex items-center gap-2"},Ue={class:"w-8 md:w-12"},Me={class:"text-lg lg:text-xl font-bold"},Be={class:"grid grid-cols-1 w-full gap-2 md:gap-6 md:flex md:place-content-stretch"},Re={key:0,class:"space-x-2 mt-6"},Ee={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 mb-6"},Te={__name:"ArcadeView",setup(Le){const V=Y(),b=m(null),$=m(null),c=m(null),I=m(!0),N=m(null),s=m(null),y=m(null),U=m(null),j=Z(),q=ee(),f=parseInt(j.params.id);var M=[{id:"paseli_enabled",name:"PASELI Services",help:"Enable PASELI for this arcade.",type:"Boolean"},{id:"paseli_infinite",name:"Infinite PASELI",help:"Enable infinite PASELI for this arcade.",type:"Boolean"},{id:"maint",name:"Maintenance Mode",help:"Place this arcade under maintenance.",type:"Boolean"},{id:"hide_network",name:"Incognito Mode",help:"Hide the network and all ranking data.",type:"Boolean"}];async function p(){try{c.value={},b.value={},$.value={};const n=await be(f);c.value=n,s.value=JSON.parse(JSON.stringify(n));for(const e of M){const t=J(c.value.data,e.id);P(b.value,e.id,t),P($.value,e.id,t)}I.value=!1}catch(n){console.error("Failed to fetch arcade data:",n)}}async function B(){if(V.userAdmin)try{const n=await Ae(!0),e=[];for(const t of n)t.username!=null&&e.push({id:t.id,label:t.username});e.sort((t,v)=>t.label.localeCompare(v.label)),U.value=e}catch(n){console.error("Failed to fetch admin user data:",n)}}ae(()=>V.userAdmin,()=>{B()});async function z(){(await _e(f,b.value)).status!="error"&&await p()}le(()=>{p(),B()});function G(n,e="NA_"){var t=[...n].map(v=>v.charCodeAt(0)<128?v:e).join("");return t=t.replace(/[!"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~]/g,""),t=t.replace(/\s+/g,"_"),t}async function Q(){try{const n=await ge(f),e=new Blob([n],{type:"application/ovpn"}),t=document.createElement("a");t.href=URL.createObjectURL(e),t.download=`gradius-${G(c.value.name)}-phaseii-config.ovpn`,document.body.appendChild(t),t.click(),URL.revokeObjectURL(t.href),document.body.removeChild(t)}catch(n){console.log("Failed to fetch arcade data:",n)}}async function T(){if(s.value.name){const n=await he(s.value.name);n.unused!=null&&(N.value=n.unused)}}async function H(){(await ye(f,{name:s.value.name,description:s.value.description,beta:s.value.data.is_beta})).status!="error"&&await p()}async function K(){if(y.value==null)return;(await ke(f,y.value)).status!="error"&&(y.value=null,p())}async function W(n){if(!n)return;(await Se(f,n)).status!="error"&&p()}async function X(){window.confirm(`Are you really?
This will remove all owners, machines, and arcade data.`)&&(await we(f)).status!="error"&&await q.push({name:"admin_arcades"})}return(n,e)=>(i(),_(pe,null,{default:r(()=>[a(ne,null,{default:r(()=>{var t,v;return[I.value?A("",!0):(i(),g(k,{key:0},[a(ve,{class:"mb-6",arcade:c.value},null,8,["arcade"]),d(V).userAdmin?(i(),g(k,{key:0},[a(x,{icon:d(te),title:"Arcade Administration",main:""},null,8,["icon"]),o("div",Ve,[a(h,{"is-form":"",class:"lg:mb-6",onSubmit:C(H,["prevent"])},{default:r(()=>[a(S,{color:"info",label:"General Information",icon:d(E),class:"mb-2"},null,8,["icon"]),a(w,{label:"Arcade Name"},{default:r(()=>[a(O,{modelValue:s.value.name,"onUpdate:modelValue":e[0]||(e[0]=l=>s.value.name=l),"input-value":s.value.name,name:"arcadeName",required:""},null,8,["modelValue","input-value"])]),_:1}),o("div",$e,[a(u,{color:"info",label:"Check Name",onClick:e[1]||(e[1]=l=>T())}),N.value==!0?(i(),_(L,{key:0,path:d(se),color:"text-green-400",size:"25"},null,8,["path"])):N.value==!1?(i(),_(L,{key:1,path:d(oe),color:"text-red-400",size:"25"},null,8,["path"])):A("",!0)]),a(w,{label:"Description"},{default:r(()=>[a(O,{modelValue:s.value.description,"onUpdate:modelValue":e[2]||(e[2]=l=>s.value.description=l),name:"description",required:""},null,8,["modelValue"])]),_:1}),a(w,{label:"Beta Enabled"},{default:r(()=>[a(F,{modelValue:s.value.data.is_beta,"onUpdate:modelValue":e[3]||(e[3]=l=>s.value.data.is_beta=l),name:"beta","model-value":s.value.data.is_beta,"input-value":s.value.data.is_beta,type:"switch"},null,8,["modelValue","model-value","input-value"])]),_:1}),JSON.stringify(c.value)!==JSON.stringify(s.value)?(i(),g("div",Ne,[a(u,{color:"success",label:"Save",type:"submit"}),a(u,{color:"warning",label:"Revert",onClick:e[4]||(e[4]=l=>p())})])):A("",!0),o("div",null,[a(u,{color:"danger",label:"Delete Arcade",onClick:e[5]||(e[5]=l=>X())})])]),_:1}),a(h,{class:"mb-6"},{default:r(()=>[o("div",xe,[a(S,{color:"info",label:"Add Manager",icon:d(E),class:"mb-2"},null,8,["icon"]),o("form",{class:"h-full",onSubmit:C(K,["prevent"])},[a(w,{label:"Username"},{default:r(()=>[a(O,{modelValue:y.value,"onUpdate:modelValue":e[6]||(e[6]=l=>y.value=l),name:"username",options:U.value,required:""},null,8,["modelValue","options"])]),_:1}),a(u,{color:"success",type:"submit",label:"Add Manager"})],32)]),a(ie),o("div",Ce,[a(S,{color:"warning",label:"Managers",class:"mb-4"}),o("div",Oe,[(i(!0),g(k,null,D(c.value.owners,l=>(i(),_(h,{key:l,"color-prop":"bg-slate-800 dark:bg-slate-800"},{default:r(()=>[o("div",Pe,[o("div",Ie,[o("div",Ue,[a(re,{username:l.username,avatar:l.avatar},null,8,["username","avatar"])]),o("h1",Me,de(l.username),1)]),a(u,{color:"danger",label:"Remove",onClick:R=>W(l.id)},null,8,["onClick"])])]),_:2},1024))),128))])])]),_:1})])],64)):A("",!0),a(x,{icon:d(ue),title:"Arcade Management",main:""},null,8,["icon"]),a(h,{"is-form":"",class:"mb-6",onSubmit:C(z,["prevent"])},{default:r(()=>[a(S,{color:"info",label:"Settings",icon:d(ce),class:"mb-2"},null,8,["icon"]),o("div",Be,[(i(!0),g(k,null,D(d(M),l=>(i(),_(w,{key:l.id,label:l.name,help:l.help},{default:r(()=>[l.type=="Boolean"?(i(),_(F,{key:0,name:l.id,"model-value":!!(d(J)(b.value,l.id)??!1),"input-value":!0,type:"switch","onUpdate:modelValue":R=>d(P)(b.value,l.id,R??!1)},null,8,["name","model-value","onUpdate:modelValue"])):A("",!0)]),_:2},1032,["label","help"]))),128))]),JSON.stringify(b.value)!==JSON.stringify($.value)?(i(),g("div",Re,[a(u,{color:"success",label:"Save",type:"submit"}),a(u,{color:"danger",label:"Revert",onClick:e[7]||(e[7]=l=>p())})])):A("",!0)]),_:1}),a(h,{class:"w-full md:w-1/2 mb-6"},{default:r(()=>[e[9]||(e[9]=o("h1",{class:"text-lg md:text-xl"},"OpenVPN Configuration",-1)),e[10]||(e[10]=o("p",{class:"pb-1 dark:text-white/50"}," Use this to download your VPN config. ",-1)),a(u,{small:!1,color:"success",class:"my-2",label:"Export",onClick:e[8]||(e[8]=l=>Q())})]),_:1}),a(x,{icon:d(me),title:"Arcade Overview",main:""},null,8,["icon"]),o("div",Ee,[a(fe,{number:(v=(t=c.value)==null?void 0:t.machines)==null?void 0:v.length,label:"Active Machines"},null,8,["number"])])],64))]}),_:1})]),_:1}))}};export{Te as default};

View File

@@ -1 +1 @@
import{a as g,r as A,o as C,p as L,c as S,d as c,w as n,e as s,_ as $,h as i,i as t,N as m,g as u,aF as k,j as w,F as y,k as E,t as r,l as p,aG as D,aH as O,v as V,n as B}from"./index-vA9N45XP.js";import{_ as F}from"./GeneralTable-7ScsFktP.js";import{_ as I}from"./FormField-BJ53twuK.js";import{_ as M}from"./FormControl-CbA50xCq.js";import{h as N}from"./admin-DLWnlEF3.js";const P={class:"grid gap-4"},j={class:"md:flex w-full place-content-between"},R={class:"text-lg md:text-xl"},G={class:"text-md md:text-lg"},H={class:"text-md"},U={class:"bg-slate-900 p-2 rounded-md mt-2 w-12 max-w-14 text-center"},q={class:"text-lg font-mono text-pink-700"},z={class:"flex align-middle mt-2 md:mt-0 max-h-12"},J={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},K={class:"w-full"},ee={__name:"ArcadesView",setup(Q){const x=g(),d=A([]),h=[{text:"Name",value:"name",width:150,sortable:!0},{text:"Description",value:"description",width:150},{text:"Owners",value:"owners",width:150,sortable:!0},{text:"PASELI Enabled",value:"data.paseli_enabled",width:50,sortable:!0},{text:"Infinite PASELI",value:"data.paseli_infinite",width:50,sortable:!0},{text:"Beta Enabled",value:"data.is_beta",width:50,sortable:!0}];C(async()=>{b()});async function b(){try{const a=await N();var l=[];for(var e of a){if(e.timestamp){const _=new Date(e.timestamp*1e3);e.timestamp=_.toLocaleString()}e.owners&&(e.owners=e.owners.join(", ")),l.push(e)}d.value=l}catch(a){console.error("Failed to fetch client data:",a)}}const f=l=>{const e=l.id;x.push(`/arcade/${e}`)},o=L({filter:null});function v(){if(o.filter)return d.value.filter(l=>l.id.toString().toLowerCase().includes(o.filter.toLowerCase())||l.name.toLowerCase().includes(o.filter.toLowerCase())||l.description.toLowerCase().includes(o.filter.toLowerCase())||l.owners.toLowerCase().includes(o.filter.toLowerCase()))}return(l,e)=>(c(),S(B,null,{default:n(()=>[s($,null,{default:n(()=>[s(i,{class:"mb-6 p-1"},{default:n(()=>e[2]||(e[2]=[t("h1",{class:"text-3xl"},"Arcade Management",-1),t("p",{class:"text-sm text-gray-400"},"Enter an arcade to manage it",-1)])),_:1}),s(m,{icon:u(k),title:"Search Arcades",color:"text-amber-600",main:""},null,8,["icon"]),s(i,{class:"mb-6"},{default:n(()=>[s(I,{label:"Search",help:"Search by ID, name, description, or owner.",class:"w-full md:w-1/3"},{default:n(()=>[s(M,{modelValue:o.filter,"onUpdate:modelValue":e[0]||(e[0]=a=>o.filter=a),"model-value":o.filter},null,8,["modelValue","model-value"])]),_:1}),t("div",P,[(c(!0),w(y,null,E(v(),a=>(c(),w("div",{key:a.id,class:"bg-slate-800 p-4 rounded-xl"},[t("div",j,[t("div",null,[t("h1",R,r(a.name),1),t("h2",G,r(a.description),1),t("h2",H,"Managed by "+r(a.owners),1),t("div",U,[t("h2",q,r(a.id),1)])]),t("div",z,[s(p,{label:"Open Arcade",color:"info",onClick:_=>f(a)},null,8,["onClick"])])])]))),128))])]),_:1}),s(m,{icon:u(D),title:"All Arcades",color:"text-blue-400",main:""},null,8,["icon"]),s(i,{"has-table":"",class:"mb-6"},{default:n(()=>[t("div",J,[t("div",K,[s(F,{headers:h,items:d.value,onRowClicked:f},null,8,["items"]),e[3]||(e[3]=t("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to open arcade ",-1))])])]),_:1}),s(m,{icon:u(O),title:"Create Arcade",color:"text-emerald-600",main:""},null,8,["icon"]),s(i,{"is-form":"",class:"row-span-1",onSubmit:e[1]||(e[1]=V(a=>l.createClient(),["prevent"]))},{default:n(()=>[s(p,{color:"info",small:!1,label:"Arcade Onboarding",to:"/admin/onboarding"})]),_:1})]),_:1})]),_:1}))}};export{ee as default};
import{b as g,r as A,o as C,p as L,c as S,d as c,w as n,e as s,_ as $,h as i,i as t,P as m,g as u,aI as k,j as w,F as y,k as E,t as r,l as p,aJ as D,aK as I,v as O,n as V}from"./index-CHivKhhP.js";import{_ as B}from"./GeneralTable-Dm8yzA2j.js";import{_ as P}from"./FormField-vtioLqMT.js";import{_ as F}from"./FormControl-BLuW9GWW.js";import{h as M}from"./admin-YL_-tKB5.js";const j={class:"grid gap-4"},N={class:"md:flex w-full place-content-between"},R={class:"text-lg md:text-xl"},J={class:"text-md md:text-lg"},K={class:"text-md"},U={class:"bg-slate-900 p-2 rounded-md mt-2 w-12 max-w-14 text-center"},q={class:"text-lg font-mono text-pink-700"},z={class:"flex align-middle mt-2 md:mt-0 max-h-12"},G={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},H={class:"w-full"},ee={__name:"ArcadesView",setup(Q){const x=g(),d=A([]),h=[{text:"Name",value:"name",width:150,sortable:!0},{text:"Description",value:"description",width:150},{text:"Owners",value:"owners",width:150,sortable:!0},{text:"PASELI Enabled",value:"data.paseli_enabled",width:50,sortable:!0},{text:"Infinite PASELI",value:"data.paseli_infinite",width:50,sortable:!0},{text:"Beta Enabled",value:"data.is_beta",width:50,sortable:!0}];C(async()=>{b()});async function b(){try{const a=await M();var l=[];for(var e of a){if(e.timestamp){const _=new Date(e.timestamp*1e3);e.timestamp=_.toLocaleString()}e.owners&&(e.owners=e.owners.join(", ")),l.push(e)}d.value=l}catch(a){console.error("Failed to fetch client data:",a)}}const f=l=>{const e=l.id;x.push(`/arcade/${e}`)},o=L({filter:null});function v(){if(o.filter)return d.value.filter(l=>l.id.toString().toLowerCase().includes(o.filter.toLowerCase())||l.name.toLowerCase().includes(o.filter.toLowerCase())||l.description.toLowerCase().includes(o.filter.toLowerCase())||l.owners.toLowerCase().includes(o.filter.toLowerCase()))}return(l,e)=>(c(),S(V,null,{default:n(()=>[s($,null,{default:n(()=>[s(i,{class:"mb-6 p-1"},{default:n(()=>e[2]||(e[2]=[t("h1",{class:"text-3xl"},"Arcade Management",-1),t("p",{class:"text-sm text-gray-400"},"Enter an arcade to manage it",-1)])),_:1}),s(m,{icon:u(k),title:"Search Arcades",color:"text-amber-600",main:""},null,8,["icon"]),s(i,{class:"mb-6"},{default:n(()=>[s(P,{label:"Search",help:"Search by ID, name, description, or owner.",class:"w-full md:w-1/3"},{default:n(()=>[s(F,{modelValue:o.filter,"onUpdate:modelValue":e[0]||(e[0]=a=>o.filter=a),"model-value":o.filter},null,8,["modelValue","model-value"])]),_:1}),t("div",j,[(c(!0),w(y,null,E(v(),a=>(c(),w("div",{key:a.id,class:"bg-slate-800 p-4 rounded-xl"},[t("div",N,[t("div",null,[t("h1",R,r(a.name),1),t("h2",J,r(a.description),1),t("h2",K,"Managed by "+r(a.owners),1),t("div",U,[t("h2",q,r(a.id),1)])]),t("div",z,[s(p,{label:"Open Arcade",color:"info",onClick:_=>f(a)},null,8,["onClick"])])])]))),128))])]),_:1}),s(m,{icon:u(D),title:"All Arcades",color:"text-blue-400",main:""},null,8,["icon"]),s(i,{"has-table":"",class:"mb-6"},{default:n(()=>[t("div",G,[t("div",H,[s(B,{headers:h,items:d.value,onRowClicked:f},null,8,["items"]),e[3]||(e[3]=t("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to open arcade ",-1))])])]),_:1}),s(m,{icon:u(I),title:"Create Arcade",color:"text-emerald-600",main:""},null,8,["icon"]),s(i,{"is-form":"",class:"row-span-1",onSubmit:e[1]||(e[1]=O(a=>l.createClient(),["prevent"]))},{default:n(()=>[s(p,{color:"info",small:!1,label:"Arcade Onboarding",to:"/admin/onboarding"})]),_:1})]),_:1})]),_:1}))}};export{ee as default};

View File

@@ -1 +1 @@
import{aU as o,aV as t}from"./index-vA9N45XP.js";const l=o({name:"BaseButtons",props:{noWrap:Boolean,type:{type:String,default:"justify-start"},classAddon:{type:String,default:"mr-3 last:mr-0 mb-3"},mb:{type:String,default:"-mb-3"}},render(){const r=this.$slots&&this.$slots.default,a=["flex","items-center",this.type,this.noWrap?"flex-nowrap":"flex-wrap"];return this.mb&&a.push(this.mb),t("div",{class:a},r?this.$slots.default().map(s=>s&&s.children&&typeof s.children=="object"?t(s,{},s.children.map(n=>t(n,{class:[this.classAddon]}))):t(s,{class:[this.classAddon]})):null)}});export{l as _};
import{aX as o,aY as t}from"./index-CHivKhhP.js";const l=o({name:"BaseButtons",props:{noWrap:Boolean,type:{type:String,default:"justify-start"},classAddon:{type:String,default:"mr-3 last:mr-0 mb-3"},mb:{type:String,default:"-mb-3"}},render(){const r=this.$slots&&this.$slots.default,a=["flex","items-center",this.type,this.noWrap?"flex-nowrap":"flex-wrap"];return this.mb&&a.push(this.mb),t("div",{class:a},r?this.$slots.default().map(s=>s&&s.children&&typeof s.children=="object"?t(s,{},s.children.map(n=>t(n,{class:[this.classAddon]}))):t(s,{class:[this.classAddon]})):null)}});export{l as _};

View File

@@ -1 +0,0 @@
import{r as _,p as X,o as k,c as g,d as r,w as i,e as s,_ as A,i as t,j as p,f as h,M as I,N as w,g as n,$ as D,h as S,v as V,a0 as E,l as c,B as F,A as N,H as P,F as T,k as B,t as O,n as L,a1 as M,a2 as j,a3 as H}from"./index-vA9N45XP.js";import{d as v}from"./userData-DZYdegtD.js";import{_ as U}from"./FormField-BJ53twuK.js";import{_ as q}from"./FormControl-CbA50xCq.js";const z={class:"grid md:grid-cols-2 mb-2"},G={key:0,class:"grid grid-cols-1 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 3xl:grid-cols-6 4xl:grid-cols-7 gap-6"},W={class:"flex justify-between md:grid md:gap-2 mb-4 items-center"},Z=["src"],J={class:"text-xl text-center font-mono"},K={class:"grid grid-cols-3 md:grid-cols-2 gap-2"},se={__name:"CardsView",setup(Q){const b="https://cdn.phaseii.network/file/PhaseII/web-assets";var d=_([]);const u=_(!1),o=X({newCard:null});async function m(){d.value=null;try{const a=await M();d.value=a}catch(a){console.error("Failed to fetch card data:",a)}}k(async()=>{await m()});function x(a){var e=a.target.value;e=e.replace(/[^A-Za-z0-9]/g,""),e=e.toUpperCase().replace(/(.{4})/g,"$1-").replace(/-$/,""),o.newCard=e}async function y(){u.value=!0,(await j(o.newCard)).status=="success"&&(o.newCard=null,u.value=!1,await m())}async function $(a){(await H(v(a))).status=="success"&&await m()}const C=a=>{navigator.clipboard.writeText(a).then(()=>{alert("Copied to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};return(a,e)=>(r(),g(L,null,{default:i(()=>[s(A,null,{default:i(()=>[s(I,{class:"mb-6","use-small":"","even-smaller":""}),s(w,{icon:n(D),title:"Add a Card",main:""},null,8,["icon"]),s(S,{"is-form":"",class:"row-span-2 mb-6",onSubmit:e[1]||(e[1]=V(l=>y(),["prevent"]))},{footer:i(()=>[s(c,{type:"submit",color:"success",label:"Add"}),u.value?(r(),g(F,{key:0,path:a.mdiLoading,color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):h("",!0)]),default:i(()=>[s(U,{label:"Card ID",help:"The 16 character ACCESS CODE. If your card is dated after 2016, you'll need to get the ACCESS CODE from a game."},{default:i(()=>[s(q,{modelValue:o.newCard,"onUpdate:modelValue":e[0]||(e[0]=l=>o.newCard=l),icon:n(E),name:"cardId",type:"card",placeholder:"XXXX-XXXX-XXXX-XXXX",minlength:19,maxlength:19,required:"",onInput:x},null,8,["modelValue","icon"])]),_:1})]),_:1}),t("div",z,[s(w,{icon:n(N),title:"Login Cards",main:""},null,8,["icon"]),e[2]||(e[2]=t("div",{class:"text-xl md:text-right"},[t("h4",null,"AC = Web Access Code"),t("h4",null,[P("NFC-ID = Internal ID for "),t("samp",null,"card0.txt")])],-1))]),n(d)?(r(),p("div",G,[(r(!0),p(T,null,B(n(d),l=>(r(),p("div",{key:l.id,class:"grid dark:bg-slate-900/70 rounded-2xl p-5"},[t("div",W,[t("img",{src:`${n(b)}/passes/generic.webp`,class:"w-24 md:w-auto"},null,8,Z),t("h1",J,O(n(v)(l.encoded)),1)]),t("div",K,[s(c,{color:"info",label:"Copy AC",onClick:f=>C(l.encoded)},null,8,["onClick"]),s(c,{color:"info",label:"Copy NFC-ID",onClick:f=>C(l.id)},null,8,["onClick"]),s(c,{color:"danger",label:"Delete",onClick:f=>$(l.encoded)},null,8,["onClick"])])]))),128))])):h("",!0)]),_:1})]),_:1}))}};export{se as default};

View File

@@ -0,0 +1 @@
import{r as _,p as $,o as k,c as g,d as r,w as i,e as s,_ as I,i as t,j as p,f as h,O as A,P as w,g as n,a2 as D,h as P,v as S,a3 as V,l as c,C as E,B as F,I as N,F as O,k as T,t as B,n as L,a4 as j,a5 as M,a6 as U}from"./index-CHivKhhP.js";import{d as v}from"./userData-DZYdegtD.js";import{_ as q}from"./FormField-vtioLqMT.js";import{_ as z}from"./FormControl-BLuW9GWW.js";const G={class:"grid md:grid-cols-2 mb-2"},H={key:0,class:"grid grid-cols-1 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 3xl:grid-cols-6 4xl:grid-cols-7 gap-6"},W={class:"flex justify-between md:grid md:gap-2 mb-4 items-center"},Z=["src"],J={class:"text-xl text-center font-mono"},K={class:"grid grid-cols-3 md:grid-cols-2 gap-2"},se={__name:"CardsView",setup(Q){const b="https://cdn.phaseii.network/file/PhaseII/web-assets";var d=_([]);const u=_(!1),o=$({newCard:null});async function m(){d.value=null;try{const a=await j();d.value=a}catch(a){console.error("Failed to fetch card data:",a)}}k(async()=>{await m()});function x(a){var e=a.target.value;e=e.replace(/[^A-Za-z0-9]/g,""),e=e.toUpperCase().replace(/(.{4})/g,"$1-").replace(/-$/,""),o.newCard=e}async function y(){u.value=!0,(await M(o.newCard)).status=="success"&&(o.newCard=null,u.value=!1,await m())}async function X(a){(await U(v(a))).status=="success"&&await m()}const C=a=>{navigator.clipboard.writeText(a).then(()=>{alert("Copied to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};return(a,e)=>(r(),g(L,null,{default:i(()=>[s(I,null,{default:i(()=>[s(A,{class:"mb-6","use-small":"","even-smaller":""}),s(w,{icon:n(D),title:"Add a Card",main:""},null,8,["icon"]),s(P,{"is-form":"",class:"row-span-2 mb-6",onSubmit:e[1]||(e[1]=S(l=>y(),["prevent"]))},{footer:i(()=>[s(c,{type:"submit",color:"success",label:"Add"}),u.value?(r(),g(E,{key:0,path:a.mdiLoading,color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):h("",!0)]),default:i(()=>[s(q,{label:"Card ID",help:"The 16 character ACCESS CODE. If your card is dated after 2016, you'll need to get the ACCESS CODE from a game."},{default:i(()=>[s(z,{modelValue:o.newCard,"onUpdate:modelValue":e[0]||(e[0]=l=>o.newCard=l),icon:n(V),name:"cardId",type:"card",placeholder:"XXXX-XXXX-XXXX-XXXX",minlength:19,maxlength:19,required:"",onInput:x},null,8,["modelValue","icon"])]),_:1})]),_:1}),t("div",G,[s(w,{icon:n(F),title:"Login Cards",main:""},null,8,["icon"]),e[2]||(e[2]=t("div",{class:"text-xl md:text-right"},[t("h4",null,"AC = Web Access Code"),t("h4",null,[N("NFC-ID = Internal ID for "),t("samp",null,"card0.txt")])],-1))]),n(d)?(r(),p("div",H,[(r(!0),p(O,null,T(n(d),l=>(r(),p("div",{key:l.id,class:"grid dark:bg-slate-900/70 rounded-2xl p-5"},[t("div",W,[t("img",{src:`${n(b)}/passes/generic.webp`,class:"w-24 md:w-auto"},null,8,Z),t("h1",J,B(n(v)(l.encoded)),1)]),t("div",K,[s(c,{color:"info",label:"Copy AC",onClick:f=>C(l.encoded)},null,8,["onClick"]),s(c,{color:"info",label:"Copy NFC-ID",onClick:f=>C(l.id)},null,8,["onClick"]),s(c,{color:"danger",label:"Delete",onClick:f=>X(l.encoded)},null,8,["onClick"])])]))),128))])):h("",!0)]),_:1})]),_:1}))}};export{se as default};

View File

@@ -1 +1 @@
import{b as D,r as x,p as $,c as w,d as o,w as n,e,_ as V,j as _,f as m,M as T,F as A,N as f,g as i,b1 as B,h as v,v as F,i as a,H as P,b2 as M,l as h,B as N,C as R,t as p,aa as S,n as L}from"./index-vA9N45XP.js";import{_ as O}from"./FormField-BJ53twuK.js";import{_ as U}from"./FormControl-CbA50xCq.js";import{f as Y,g as j}from"./arcade-CXvzpsdX.js";const q={key:1},E={class:"text-2xl font-bold"},G={class:"text-xl mb-6"},H={class:"text-xl mb-6"},K={class:"mt-4"},z={key:2},J={class:"text-xl mb-6"},Q={class:"mt-4"},W={key:3},Z={class:"mt-4"},ne={__name:"ClaimView",setup(ee){const g=D(),b=x(!1),t=x(null),d=$({PCBID:null}),c=x(null);async function I(){b.value=!0,t.value=await Y(d.PCBID),b.value=!1}async function X(){const C=await j(d.PCBID);C||window.alert("Failed to takeover!"),C.status==="success"?c.value=!0:c.value=!1,g.userLoaded=!1,g.loadUser()}return(C,s)=>(o(),w(L,null,{default:n(()=>[e(V,null,{default:n(()=>[e(T,{class:"mb-6","use-small":"","even-smaller":""}),t.value?m("",!0):(o(),_(A,{key:0},[e(f,{icon:i(B),title:"Claim an Arcade",main:""},null,8,["icon"]),e(v,{"is-form":"",class:"row-span-2 mb-6",onSubmit:s[1]||(s[1]=F(l=>I(),["prevent"]))},{footer:n(()=>[e(h,{type:"submit",color:"success",label:"Start Claim"}),b.value?(o(),w(N,{key:0,path:i(R),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):m("",!0)]),default:n(()=>[s[2]||(s[2]=a("h2",{class:"text-xl mb-6 lg:w-1/2"},[P(" Claim an arcade using a PCBID."),a("br"),P(" You cannot claim the arcade if it has an owner. ")],-1)),e(O,{label:"PCBID",help:"A PCBID from the arcade you're wanting to claim."},{default:n(()=>[e(U,{modelValue:d.PCBID,"onUpdate:modelValue":s[0]||(s[0]=l=>d.PCBID=l),icon:i(M),name:"cardId",type:"pcbid",placeholder:"XXXXXXXXXXXXXXXXX",minlength:20,maxlength:20,required:""},null,8,["modelValue","icon"])]),_:1})]),_:1})],64)),t.value&&c.value==null?(o(),_("div",q,[e(f,{icon:i(B),title:"Confirm Merge",main:""},null,8,["icon"]),e(v,null,{default:n(()=>{var l,r,u,k,y;return[a("h2",E,p((r=(l=t.value)==null?void 0:l.arcade)==null?void 0:r.name),1),a("h3",G,p((k=(u=t.value)==null?void 0:u.arcade)==null?void 0:k.description),1),a("h2",H," This arcade has "+p((y=t.value)==null?void 0:y.count)+" machine(s). ",1),a("div",K,[e(h,{color:"success",label:"Start Takeover",onClick:X})])]}),_:1})])):m("",!0),c.value==!0?(o(),_("div",z,[e(f,{icon:i(S),title:"Takeover Results",main:""},null,8,["icon"]),e(v,null,{default:n(()=>{var l,r,u;return[a("h2",J," ✅ Successfully merged "+p((l=t.value)==null?void 0:l.count)+" machines. Yippie! ",1),a("div",Q,[e(h,{color:"success",label:"Go to Arcade",href:`#/arcade/${(u=(r=t.value)==null?void 0:r.arcade)==null?void 0:u.id}`},null,8,["href"])])]}),_:1})])):m("",!0),c.value==!1?(o(),_("div",W,[e(f,{icon:i(S),title:"Merge Results",main:""},null,8,["icon"]),e(v,null,{default:n(()=>[s[3]||(s[3]=a("h2",{class:"text-xl mb-6"},"❌ Failed to merge. Please try again.",-1)),a("div",Z,[e(h,{color:"warning",label:"Retry",onClick:X})])]),_:1})])):m("",!0)]),_:1})]),_:1}))}};export{ne as default};
import{u as D,r as x,p as $,c as w,d as o,w as n,e,_ as V,j as _,f as m,O as T,F as A,P as f,g as i,b4 as P,h as v,v as F,i as a,I as B,b5 as M,l as h,C as N,D as R,t as p,ad as I,n as L}from"./index-CHivKhhP.js";import{_ as O}from"./FormField-vtioLqMT.js";import{_ as U}from"./FormControl-BLuW9GWW.js";import{f as Y,g as j}from"./arcade-C_iviJ_9.js";const q={key:1},E={class:"text-2xl font-bold"},G={class:"text-xl mb-6"},K={class:"text-xl mb-6"},z={class:"mt-4"},H={key:2},J={class:"text-xl mb-6"},Q={class:"mt-4"},W={key:3},Z={class:"mt-4"},ne={__name:"ClaimView",setup(ee){const g=D(),b=x(!1),t=x(null),d=$({PCBID:null}),c=x(null);async function S(){b.value=!0,t.value=await Y(d.PCBID),b.value=!1}async function X(){const C=await j(d.PCBID);C||window.alert("Failed to takeover!"),C.status==="success"?c.value=!0:c.value=!1,g.userLoaded=!1,g.loadUser()}return(C,s)=>(o(),w(L,null,{default:n(()=>[e(V,null,{default:n(()=>[e(T,{class:"mb-6","use-small":"","even-smaller":""}),t.value?m("",!0):(o(),_(A,{key:0},[e(f,{icon:i(P),title:"Claim an Arcade",main:""},null,8,["icon"]),e(v,{"is-form":"",class:"row-span-2 mb-6",onSubmit:s[1]||(s[1]=F(l=>S(),["prevent"]))},{footer:n(()=>[e(h,{type:"submit",color:"success",label:"Start Claim"}),b.value?(o(),w(N,{key:0,path:i(R),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):m("",!0)]),default:n(()=>[s[2]||(s[2]=a("h2",{class:"text-xl mb-6 lg:w-1/2"},[B(" Claim an arcade using a PCBID."),a("br"),B(" You cannot claim the arcade if it has an owner. ")],-1)),e(O,{label:"PCBID",help:"A PCBID from the arcade you're wanting to claim."},{default:n(()=>[e(U,{modelValue:d.PCBID,"onUpdate:modelValue":s[0]||(s[0]=l=>d.PCBID=l),icon:i(M),name:"cardId",type:"pcbid",placeholder:"XXXXXXXXXXXXXXXXX",minlength:20,maxlength:20,required:""},null,8,["modelValue","icon"])]),_:1})]),_:1})],64)),t.value&&c.value==null?(o(),_("div",q,[e(f,{icon:i(P),title:"Confirm Merge",main:""},null,8,["icon"]),e(v,null,{default:n(()=>{var l,r,u,k,y;return[a("h2",E,p((r=(l=t.value)==null?void 0:l.arcade)==null?void 0:r.name),1),a("h3",G,p((k=(u=t.value)==null?void 0:u.arcade)==null?void 0:k.description),1),a("h2",K," This arcade has "+p((y=t.value)==null?void 0:y.count)+" machine(s). ",1),a("div",z,[e(h,{color:"success",label:"Start Takeover",onClick:X})])]}),_:1})])):m("",!0),c.value==!0?(o(),_("div",H,[e(f,{icon:i(I),title:"Takeover Results",main:""},null,8,["icon"]),e(v,null,{default:n(()=>{var l,r,u;return[a("h2",J," ✅ Successfully merged "+p((l=t.value)==null?void 0:l.count)+" machines. Yippie! ",1),a("div",Q,[e(h,{color:"success",label:"Go to Arcade",href:`#/arcade/${(u=(r=t.value)==null?void 0:r.arcade)==null?void 0:u.id}`},null,8,["href"])])]}),_:1})])):m("",!0),c.value==!1?(o(),_("div",W,[e(f,{icon:i(I),title:"Merge Results",main:""},null,8,["icon"]),e(v,null,{default:n(()=>[s[3]||(s[3]=a("h2",{class:"text-xl mb-6"},"❌ Failed to merge. Please try again.",-1)),a("div",Z,[e(h,{color:"warning",label:"Retry",onClick:X})])]),_:1})])):m("",!0)]),_:1})]),_:1}))}};export{ne as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{r as h,o as y,c as x,d as l,w as m,e as c,_ as b,j as n,f as $,M as I,g as i,F as _,N as C,ag as V,k as g,h as B,i as s,a5 as F,a4 as u,t as f,n as N,ah as P}from"./index-vA9N45XP.js";const U={class:"md:flex gap-4 items-center pb-6"},D={class:"text-3xl"},G={class:"text-2xl font-light"},L={key:0,class:"w-full grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 2xl:grid-cols-6 3xl:grid-cols-7 4xl:grid-cols-8 gap-6 place-items-center"},M=["href"],S=["src"],Y={key:1},j={class:"space-y-1 text-center"},A={class:"text-xl xl:text-xl"},q={__name:"ContentView",setup(E){var r=h([]);const v=h(!1);async function k(){r.value=null;try{const a=await P("lpac_upload");r.value=w(a)}catch(a){console.error("Failed to fetch content:",a)}v.value=!1}y(async()=>{await k()});function w(a){a.sort(function(t,e){return e.timestamp-t.timestamp});for(const t of a){const e=u(t.game);if(t.game=e.name,t.version=e.versions.find(o=>o.id==t.version).label??0,t.timestamp){const o=new Date(t.timestamp*1e3);t.timestamp=o.toLocaleString()}}return a}return(a,t)=>(l(),x(N,null,{default:m(()=>[c(b,null,{default:m(()=>[c(I,{class:"mb-6","use-small":"","even-smaller":""}),i(r)?(l(),n(_,{key:0},[c(C,{icon:i(V),title:"Your Uploads",main:""},null,8,["icon"]),(l(!0),n(_,null,g(i(r),e=>(l(),x(B,{key:e.timestamp,class:"mb-6"},{default:m(()=>{var o,p;return[s("div",U,[c(F,{path:i(u)(e.game).icon},null,8,["path"]),s("h1",D,f(i(u)(e.game).name),1),s("h1",G,f(e.timestamp),1)]),((o=e.data)==null?void 0:o.status)=="uploaded"?(l(),n("div",L,[(l(!0),n(_,null,g((p=e.data)==null?void 0:p.filelist,d=>(l(),n("div",{key:d.filename,class:"md:hover:scale-[1.1] transition ease-in-out"},[s("a",{href:`https://cdn.phaseii.network/file/PhaseII/${d.b2_path}`,target:"_blank"},[s("img",{class:"w-[200px]",src:`https://cdn.phaseii.network/file/PhaseII/${d.b2_path}`},null,8,S)],8,M)]))),128))])):(l(),n("div",Y,[s("div",j,[t[0]||(t[0]=s("h1",{class:"text-2xl xl:text-4xl font-bold"}," Your content is still uploading! ",-1)),t[1]||(t[1]=s("h2",{class:"text-xl xl:text-2xl font-light"}," Please wait for the upload to complete. ",-1)),s("h2",A," Upload started at "+f(i(r)[0].timestamp),1)])]))]}),_:2},1024))),128))],64)):$("",!0)]),_:1})]),_:1}))}};export{q as default};
import{r as h,o as y,c as x,d as l,w as m,e as c,_ as b,j as n,f as $,O as I,g as i,F as _,P as C,aj as P,k as g,h as V,i as s,a8 as B,a7 as u,t as f,n as F,ak as U}from"./index-CHivKhhP.js";const D={class:"md:flex gap-4 items-center pb-6"},N={class:"text-3xl"},j={class:"text-2xl font-light"},G={key:0,class:"w-full grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 2xl:grid-cols-6 3xl:grid-cols-7 4xl:grid-cols-8 gap-6 place-items-center"},L=["href"],O=["src"],S={key:1},Y={class:"space-y-1 text-center"},A={class:"text-xl xl:text-xl"},q={__name:"ContentView",setup(E){var r=h([]);const v=h(!1);async function k(){r.value=null;try{const a=await U("lpac_upload");r.value=w(a)}catch(a){console.error("Failed to fetch content:",a)}v.value=!1}y(async()=>{await k()});function w(a){a.sort(function(t,e){return e.timestamp-t.timestamp});for(const t of a){const e=u(t.game);if(t.game=e.name,t.version=e.versions.find(o=>o.id==t.version).label??0,t.timestamp){const o=new Date(t.timestamp*1e3);t.timestamp=o.toLocaleString()}}return a}return(a,t)=>(l(),x(F,null,{default:m(()=>[c(b,null,{default:m(()=>[c(I,{class:"mb-6","use-small":"","even-smaller":""}),i(r)?(l(),n(_,{key:0},[c(C,{icon:i(P),title:"Your Uploads",main:""},null,8,["icon"]),(l(!0),n(_,null,g(i(r),e=>(l(),x(V,{key:e.timestamp,class:"mb-6"},{default:m(()=>{var o,p;return[s("div",D,[c(B,{path:i(u)(e.game).icon},null,8,["path"]),s("h1",N,f(i(u)(e.game).name),1),s("h1",j,f(e.timestamp),1)]),((o=e.data)==null?void 0:o.status)=="uploaded"?(l(),n("div",G,[(l(!0),n(_,null,g((p=e.data)==null?void 0:p.filelist,d=>(l(),n("div",{key:d.filename,class:"md:hover:scale-[1.1] transition ease-in-out"},[s("a",{href:`https://cdn.phaseii.network/file/PhaseII/${d.b2_path}`,target:"_blank"},[s("img",{class:"w-[200px]",src:`https://cdn.phaseii.network/file/PhaseII/${d.b2_path}`},null,8,O)],8,L)]))),128))])):(l(),n("div",S,[s("div",Y,[t[0]||(t[0]=s("h1",{class:"text-2xl xl:text-4xl font-bold"}," Your content is still uploading! ",-1)),t[1]||(t[1]=s("h2",{class:"text-xl xl:text-2xl font-light"}," Please wait for the upload to complete. ",-1)),s("h2",A," Upload started at "+f(i(r)[0].timestamp),1)])]))]}),_:2},1024))),128))],64)):$("",!0)]),_:1})]),_:1}))}};export{q as default};

View File

@@ -1 +1 @@
var k=Object.defineProperty;var N=(o,s,a)=>s in o?k(o,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):o[s]=a;var m=(o,s,a)=>N(o,typeof s!="symbol"?s+"":s,a);import{R as P,a as S,b as U,r as w,L as $,c as v,d as _,w as n,e as l,_ as h,i as p,M as F,N as z,g as b,S as B,h as G,v as J,f as O,l as g,n as x,U as D}from"./index-vA9N45XP.js";import{_ as u}from"./FormField-BJ53twuK.js";import{_ as y}from"./FormControl-CbA50xCq.js";import{_ as c}from"./FormCheckRadio-Roj-HW28.js";class d{static get cardList(){const s=P.filter(a=>!a.skip).map(a=>({id:a.assetId?a.assetId:a.id,label:a.name}));return[...this.baseCardList,...s]}}m(d,"baseCardList",[{id:"time",label:"Default"},{id:"carpet",label:"Arcade Carpet"},{id:"gradient",label:"Pink/Purple Gradient"},{id:"pride",label:"Pride Flag"},{id:"trans",label:"Trans Flag"},{id:"nonbinary",label:"Non-Binary Flag"},{id:"lesbian",label:"Lesbian Flag"},{id:"loveplus",label:"LovePlus"},{id:"paint",label:"i eat paint"}]),m(d,"borderList",[{id:"",label:"None"},{id:"test",label:"Basic"},{id:"swirl",label:"Swirl"},{id:"pride",label:"Pride Flag"},{id:"trans",label:"Trans Flag"},{id:"nonbinary",label:"Non-Binary Flag"},{id:"lesbian",label:"Lesbian Flag"},{id:"leaves",label:"Leaves"}]);const A={class:"space-x-2"},W={__name:"CustomizeView",setup(o){const s=S(),a=U(),e=w(a.userCustomize);var f=JSON.parse(JSON.stringify(a.userCustomize));$(()=>a.userCustomize,r=>{e.value=r,f=JSON.parse(JSON.stringify(r))});async function L(){var r=null;try{r=await D(e.value)}catch(i){console.error("Failed to update customize:",i)}(r==null?void 0:r.status)==="success"&&(a.userLoaded=!1,s.go())}function V(){return JSON.stringify(f)!==JSON.stringify(e.value)}async function C(){a.userLoaded=!1,s.go()}return(r,i)=>(_(),v(x,null,{default:n(()=>[l(h,null,{default:n(()=>[l(F,{class:"mb-6"}),l(z,{icon:b(B),title:"Profile Customizations",main:""},null,8,["icon"]),p("div",null,[l(G,null,{default:n(()=>[p("form",{onSubmit:J(L,["prevent"])},[l(u,{label:"Profile Background"},{default:n(()=>[l(y,{modelValue:e.value.card,"onUpdate:modelValue":i[0]||(i[0]=t=>e.value.card=t),options:b(d).cardList,"model-value":e.value.card??"time",name:"card"},null,8,["modelValue","options","model-value"])]),_:1}),l(u,{label:"Profile Border"},{default:n(()=>[l(y,{modelValue:e.value.border,"onUpdate:modelValue":i[1]||(i[1]=t=>e.value.border=t),options:b(d).borderList,"model-value":e.value.border??"",name:"border"},null,8,["modelValue","options","model-value"])]),_:1}),l(u,{label:"Disable Greeting"},{default:n(()=>[l(c,{modelValue:e.value.disableGreeting,"onUpdate:modelValue":i[2]||(i[2]=t=>e.value.disableGreeting=t),type:"switch","input-value":e.value.disableGreeting??!1,name:"disableGreeting"},null,8,["modelValue","input-value"])]),_:1}),l(u,{label:"Disable WebUI Update Popup"},{default:n(()=>[l(c,{modelValue:e.value.disableUpdatePopup,"onUpdate:modelValue":i[3]||(i[3]=t=>e.value.disableUpdatePopup=t),type:"switch","input-value":e.value.disableUpdatePopup??!1,name:"disableUpdatePopup"},null,8,["modelValue","input-value"])]),_:1}),l(u,{label:"Shrimp Links",help:"Allow my mind to be probed by shrimps",class:"text-pink-300"},{default:n(()=>[l(c,{modelValue:e.value.shrimpLinks,"onUpdate:modelValue":i[4]||(i[4]=t=>e.value.shrimpLinks=t),type:"switch","input-value":e.value.shrimpLinks??!1,name:"shrimpLinks"},null,8,["modelValue","input-value"])]),_:1}),p("div",A,[l(g,{type:"submit",color:"success",label:"Save"}),V()?(_(),v(g,{key:0,color:"danger",label:"Revert",onClick:C})):O("",!0)])],32)]),_:1})])]),_:1})]),_:1}))}};export{W as default};
var P=Object.defineProperty;var k=(u,s,a)=>s in u?P(u,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):u[s]=a;var m=(u,s,a)=>k(u,typeof s!="symbol"?s+"":s,a);import{V as N,b as S,u as U,r as w,M as $,c as v,d as _,w as n,e as l,_ as h,i as p,O as F,P as z,g as b,W as B,h as O,v as G,f as J,l as g,n as x,X as D}from"./index-CHivKhhP.js";import{_ as o}from"./FormField-vtioLqMT.js";import{_ as V}from"./FormControl-BLuW9GWW.js";import{_ as c}from"./FormCheckRadio-DdZBsrII.js";class d{static get cardList(){const s=N.filter(a=>!a.skip).map(a=>({id:a.assetId?a.assetId:a.id,label:a.name}));return[...this.baseCardList,...s]}}m(d,"baseCardList",[{id:"time",label:"Default"},{id:"carpet",label:"Arcade Carpet"},{id:"gradient",label:"Pink/Purple Gradient"},{id:"pride",label:"Pride Flag"},{id:"trans",label:"Trans Flag"},{id:"nonbinary",label:"Non-Binary Flag"},{id:"lesbian",label:"Lesbian Flag"},{id:"loveplus",label:"LovePlus"},{id:"paint",label:"i eat paint"}]),m(d,"borderList",[{id:"",label:"None"},{id:"test",label:"Basic"},{id:"swirl",label:"Swirl"},{id:"pride",label:"Pride Flag"},{id:"trans",label:"Trans Flag"},{id:"nonbinary",label:"Non-Binary Flag"},{id:"lesbian",label:"Lesbian Flag"},{id:"leaves",label:"Leaves"}]);const A={class:"space-x-2"},H={__name:"CustomizeView",setup(u){const s=S(),a=U(),e=w(a.userCustomize);var f=JSON.parse(JSON.stringify(a.userCustomize));$(()=>a.userCustomize,r=>{e.value=r,f=JSON.parse(JSON.stringify(r))});async function y(){var r=null;try{r=await D(e.value)}catch(i){console.error("Failed to update customize:",i)}(r==null?void 0:r.status)==="success"&&(a.userLoaded=!1,s.go())}function L(){return JSON.stringify(f)!==JSON.stringify(e.value)}async function C(){a.userLoaded=!1,s.go()}return(r,i)=>(_(),v(x,null,{default:n(()=>[l(h,null,{default:n(()=>[l(F,{class:"mb-6"}),l(z,{icon:b(B),title:"Profile Customizations",main:""},null,8,["icon"]),p("div",null,[l(O,null,{default:n(()=>[p("form",{onSubmit:G(y,["prevent"])},[l(o,{label:"Profile Background"},{default:n(()=>[l(V,{modelValue:e.value.card,"onUpdate:modelValue":i[0]||(i[0]=t=>e.value.card=t),options:b(d).cardList,"model-value":e.value.card??"time",name:"card"},null,8,["modelValue","options","model-value"])]),_:1}),l(o,{label:"Profile Border"},{default:n(()=>[l(V,{modelValue:e.value.border,"onUpdate:modelValue":i[1]||(i[1]=t=>e.value.border=t),options:b(d).borderList,"model-value":e.value.border??"",name:"border"},null,8,["modelValue","options","model-value"])]),_:1}),l(o,{label:"Disable Greeting"},{default:n(()=>[l(c,{modelValue:e.value.disableGreeting,"onUpdate:modelValue":i[2]||(i[2]=t=>e.value.disableGreeting=t),type:"switch","input-value":e.value.disableGreeting??!1,name:"disableGreeting"},null,8,["modelValue","input-value"])]),_:1}),l(o,{label:"Disable WebUI Update Popup"},{default:n(()=>[l(c,{modelValue:e.value.disableUpdatePopup,"onUpdate:modelValue":i[3]||(i[3]=t=>e.value.disableUpdatePopup=t),type:"switch","input-value":e.value.disableUpdatePopup??!1,name:"disableUpdatePopup"},null,8,["modelValue","input-value"])]),_:1}),l(o,{label:"Shrimp Links",help:"Allow my mind to be probed by shrimps",class:"text-pink-300"},{default:n(()=>[l(c,{modelValue:e.value.shrimpLinks,"onUpdate:modelValue":i[4]||(i[4]=t=>e.value.shrimpLinks=t),type:"switch","input-value":e.value.shrimpLinks??!1,name:"shrimpLinks"},null,8,["modelValue","input-value"])]),_:1}),p("div",A,[l(g,{type:"submit",color:"success",label:"Save"}),L()?(_(),v(g,{key:0,color:"danger",label:"Revert",onClick:C})):J("",!0)])],32)]),_:1})])]),_:1})]),_:1}))}};export{H as default};

View File

@@ -0,0 +1 @@
import{r as C,o as T,c as j,d as S,w as o,e,_ as G,j as H,f as M,F as U,i,h as u,P as c,g as m,av as W,an as s,aw as $,n as q}from"./index-CHivKhhP.js";import{_ as E}from"./GeneralTable-Dm8yzA2j.js";import{A as z}from"./admin-YL_-tKB5.js";const J={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 mb-6"},K={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},O={class:"w-full"},Q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},X={class:"w-full"},te={__name:"DashboardView",setup(Y){const t=C({}),b=C(!0);T(async()=>{try{const l=await z();t.value=l,b.value=!1}catch(l){console.log("Failed to fetch admin data:",l)}});const N=[{text:"Timestamp",value:"date",width:120},{text:"IP Address",value:"data.ip",width:120},{text:"Game",value:"data.model",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Name",value:"data.name",width:120},{text:"Value",value:"data.value",width:120}],V=[{text:"Timestamp",value:"date",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Delta",value:"data.delta",width:120},{text:"Remaining Balance",value:"data.balance",width:120},{text:"Reason",value:"data.reason",width:120}];function F(l){var n=[];for(var a of l)if(a.type=="paseli_transaction"){if(a.timestamp){const r=new Date(a.timestamp*1e3);a.date=r.toLocaleString()}n.push(a)}return n}function L(l){var n=[];for(var a of l)if(a.type=="pcbevent"){if(a.timestamp){const r=new Date(a.timestamp*1e3);a.date=r.toLocaleString()}n.push(a)}return n}return(l,n)=>(S(),j(q,null,{default:o(()=>[e(G,null,{default:o(()=>{var a,r,v,f,h,_,p,g,w,x,A,k,y,P,D,I,B,R;return[b.value?M("",!0):(S(),H(U,{key:0},[e(u,{class:"mb-6 p-1"},{default:o(()=>n[0]||(n[0]=[i("h1",{class:"text-3xl"},"PhaseII eAmusement Network",-1),i("p",{class:"text-sm text-gray-400"},"Welcome to the backend ;)",-1)])),_:1}),e(c,{icon:m(W),title:"Admin Dashboard",color:"text-red-600",main:""},null,8,["icon"]),i("div",J,[e(s,{number:(r=(a=t.value)==null?void 0:a.statistics)==null?void 0:r.user,label:"User Account(s)"},null,8,["number"]),e(s,{number:(f=(v=t.value)==null?void 0:v.statistics)==null?void 0:f.card,label:"Registered Cards"},null,8,["number"]),e(s,{number:(_=(h=t.value)==null?void 0:h.statistics)==null?void 0:_.profile,label:"Game Profiles"},null,8,["number"]),e(s,{number:(g=(p=t.value)==null?void 0:p.statistics)==null?void 0:g.link,label:"Rivals"},null,8,["number"]),e(s,{number:(x=(w=t.value)==null?void 0:w.statistics)==null?void 0:x.arcade,label:"Registered Arcades"},null,8,["number"]),e(s,{number:(k=(A=t.value)==null?void 0:A.statistics)==null?void 0:k.score,label:"Published Scores"},null,8,["number"]),e(s,{number:(P=(y=t.value)==null?void 0:y.statistics)==null?void 0:P.score_history,label:"Score Attempts"},null,8,["number"]),e(s,{number:(I=(D=t.value)==null?void 0:D.statistics)==null?void 0:I.achievement,label:"Achievements"},null,8,["number"]),e(s,{number:(R=(B=t.value)==null?void 0:B.statistics)==null?void 0:R.audit,label:"Recent Event Logs"},null,8,["number"])]),e(c,{icon:m($),title:"Recent PCB Events"},null,8,["icon"]),e(u,{"has-table":""},{default:o(()=>{var d;return[i("div",K,[i("div",O,[e(E,{headers:N,items:L((d=t.value)==null?void 0:d.audit)},null,8,["items"])])])]}),_:1}),e(c,{icon:m($),title:"Recent PASELI Transactions"},null,8,["icon"]),e(u,{"has-table":""},{default:o(()=>{var d;return[i("div",Q,[i("div",X,[e(E,{headers:V,items:F((d=t.value)==null?void 0:d.audit)},null,8,["items"])])])]}),_:1})],64))]}),_:1})]),_:1}))}};export{te as default};

View File

@@ -1 +0,0 @@
import{r as C,o as T,c as j,d as N,w as o,e,_ as G,j as H,f as M,F as U,i,h as u,N as c,g as m,as as W,ak as s,at as S,n as q}from"./index-vA9N45XP.js";import{_ as $}from"./GeneralTable-7ScsFktP.js";import{A as z}from"./admin-DLWnlEF3.js";const J={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 mb-6"},K={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},O={class:"w-full"},Q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},X={class:"w-full"},ae={__name:"DashboardView",setup(Y){const a=C({}),b=C(!0);T(async()=>{try{const l=await z();a.value=l,b.value=!1}catch(l){console.log("Failed to fetch admin data:",l)}});const E=[{text:"Timestamp",value:"date",width:120},{text:"IP Address",value:"data.ip",width:120},{text:"Game",value:"data.model",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Name",value:"data.name",width:120},{text:"Value",value:"data.value",width:120}],V=[{text:"Timestamp",value:"date",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Delta",value:"data.delta",width:120},{text:"Remaining Balance",value:"data.balance",width:120},{text:"Reason",value:"data.reason",width:120}];function F(l){var n=[];for(var t of l)if(t.type=="paseli_transaction"){if(t.timestamp){const r=new Date(t.timestamp*1e3);t.date=r.toLocaleString()}n.push(t)}return n}function L(l){var n=[];for(var t of l)if(t.type=="pcbevent"){if(t.timestamp){const r=new Date(t.timestamp*1e3);t.date=r.toLocaleString()}n.push(t)}return n}return(l,n)=>(N(),j(q,null,{default:o(()=>[e(G,null,{default:o(()=>{var t,r,f,v,h,_,p,g,x,w,k,A,y,D,I,P,B,R;return[b.value?M("",!0):(N(),H(U,{key:0},[e(u,{class:"mb-6 p-1"},{default:o(()=>n[0]||(n[0]=[i("h1",{class:"text-3xl"},"PhaseII eAmusement Network",-1),i("p",{class:"text-sm text-gray-400"},"Welcome to the backend ;)",-1)])),_:1}),e(c,{icon:m(W),title:"Admin Dashboard",color:"text-red-600",main:""},null,8,["icon"]),i("div",J,[e(s,{number:(r=(t=a.value)==null?void 0:t.statistics)==null?void 0:r.user,label:"User Account(s)"},null,8,["number"]),e(s,{number:(v=(f=a.value)==null?void 0:f.statistics)==null?void 0:v.card,label:"Registered Cards"},null,8,["number"]),e(s,{number:(_=(h=a.value)==null?void 0:h.statistics)==null?void 0:_.profile,label:"Game Profiles"},null,8,["number"]),e(s,{number:(g=(p=a.value)==null?void 0:p.statistics)==null?void 0:g.link,label:"Rivals"},null,8,["number"]),e(s,{number:(w=(x=a.value)==null?void 0:x.statistics)==null?void 0:w.arcade,label:"Registered Arcades"},null,8,["number"]),e(s,{number:(A=(k=a.value)==null?void 0:k.statistics)==null?void 0:A.score,label:"Published Scores"},null,8,["number"]),e(s,{number:(D=(y=a.value)==null?void 0:y.statistics)==null?void 0:D.score_history,label:"Score Attempts"},null,8,["number"]),e(s,{number:(P=(I=a.value)==null?void 0:I.statistics)==null?void 0:P.achievement,label:"Achievements"},null,8,["number"]),e(s,{number:(R=(B=a.value)==null?void 0:B.statistics)==null?void 0:R.audit,label:"Recent Event Logs"},null,8,["number"])]),e(c,{icon:m(S),title:"Recent PCB Events"},null,8,["icon"]),e(u,{"has-table":""},{default:o(()=>{var d;return[i("div",K,[i("div",O,[e($,{headers:E,items:L((d=a.value)==null?void 0:d.audit)},null,8,["items"])])])]}),_:1}),e(c,{icon:m(S),title:"Recent PASELI Transactions"},null,8,["icon"]),e(u,{"has-table":""},{default:o(()=>{var d;return[i("div",Q,[i("div",X,[e($,{headers:V,items:F((d=a.value)==null?void 0:d.audit)},null,8,["items"])])])]}),_:1})],64))]}),_:1})]),_:1}))}};export{ae as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{c as a,d as o,w as t,i as e,e as l,h as r,s as n,l as c}from"./index-vA9N45XP.js";import{_ as d}from"./LayoutGuest-CyALIrih.js";const i={class:"flex md:min-h-screen md:items-center md:justify-center"},m={class:"p-4 flex flex-col w-full space-y-2"},p={__name:"ErrorView",setup(f){return(u,s)=>(o(),a(d,null,{default:t(()=>[e("div",i,[l(r,{class:"w-full md:w-auto rounded-none md:rounded-xl","has-table":"","is-auth":""},{default:t(()=>[e("div",m,[s[1]||(s[1]=e("div",{class:"flex flex-col items-center text-wrap h-full"},[e("img",{src:n,class:"rounded-full shadow-lg mb-2"}),e("h1",{class:"text-xl"},[e("samp",null,"PhaseII")]),e("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Broken since 2021 "),e("hr",{class:"border-t border-1 my-1 w-full"}),e("p",{class:"text-lg relative bottom-0"},"404 - File not found")],-1)),e("div",null,[s[0]||(s[0]=e("h2",{class:"mb-2"}," The server was unable to locate the page you're trying to go to. ",-1)),l(c,{label:"Home",color:"info",href:"/"})])])]),_:1})])]),_:1}))}};export{p as default};
import{c as a,d as o,w as t,i as e,e as l,h as r,s as n,l as c}from"./index-CHivKhhP.js";import{_ as d}from"./LayoutGuest-BkkpHMD9.js";const i={class:"flex md:min-h-screen md:items-center md:justify-center"},m={class:"p-4 flex flex-col w-full space-y-2"},p={__name:"ErrorView",setup(f){return(u,s)=>(o(),a(d,null,{default:t(()=>[e("div",i,[l(r,{class:"w-full md:w-auto rounded-none md:rounded-xl","has-table":"","is-auth":""},{default:t(()=>[e("div",m,[s[1]||(s[1]=e("div",{class:"flex flex-col items-center text-wrap h-full"},[e("img",{src:n,class:"rounded-full shadow-lg mb-2"}),e("h1",{class:"text-xl"},[e("samp",null,"PhaseII")]),e("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Broken since 2021 "),e("hr",{class:"border-t border-1 my-1 w-full"}),e("p",{class:"text-lg relative bottom-0"},"404 - File not found")],-1)),e("div",null,[s[0]||(s[0]=e("h2",{class:"mb-2"}," The server was unable to locate the page you're trying to go to. ",-1)),l(c,{label:"Home",color:"info",href:"/"})])])]),_:1})])]),_:1}))}};export{p as default};

View File

@@ -0,0 +1 @@
import{r as V,p as $,a as D,o as E,V as M,M as O,c as d,d as s,w as c,e as i,_ as R,j as p,f as m,F as G,P as T,g as r,aU as W,h as q,i as u,I as z,t as H,k as K,l as U,n as Q,a7 as h}from"./index-CHivKhhP.js";import{_ as X}from"./ArcadeCard-B-wORdMu.js";import{_ as x}from"./FormField-vtioLqMT.js";import{_ as v}from"./FormControl-BLuW9GWW.js";import{_ as Y}from"./FormCheckRadio-DdZBsrII.js";import{s as y,g as f}from"./values-CmNcmtTU.js";import{A as Z,c as ee,d as ae}from"./arcade-C_iviJ_9.js";const le={class:"mb-4"},oe={class:"grid md:grid-cols-2 gap-4"},te={key:0},ne={key:0},se={class:"text-xl"},re={key:0,class:"space-x-2 mt-6"},ge={__name:"EventView",setup(ie){const t=V(null),o=$({game:null,version:null}),g=$([]),_=V(null),b=V(null),N=V(!0),w=D(),S=parseInt(w.params.id);async function A(){try{b.value=null,t.value={},_.value={};const l=await Z(S);b.value=l,N.value=!1}catch(l){console.error("Failed to fetch arcade data:",l)}}async function k(){try{t.value={},_.value={};const l=await ae(S,o.game,o.version);t.value=JSON.parse(JSON.stringify(l)),_.value=l}catch(l){console.error("Failed to fetch arcade setting data:",l)}}E(()=>{A(),I()});function I(){for(const l of M){const e=l.gameOptions;e&&g.push({game:l.id,gameOptions:e})}}function F(){var l=[];for(const e of g)e.gameOptions&&l.push({id:e.game,label:h(e.game).name});return l}function B(){const l=g.find(n=>n.game==o.game),e=h(o.game);var a=[];for(const n of Object.entries(l.gameOptions))if(e.versions==null)a.push({id:n[0],label:e.name}),o.version=1;else{const L=e.versions.find(j=>j.id==n[0]);a.push({id:n[0],label:L.label})}return a}function C(){const l=h(o.game);var e=null;return l.versions&&(e=l.versions.find(a=>a.id==o.version)),`${l.name} ${(e==null?void 0:e.label)??""}`}function P(){return g.find(e=>e.game==o.game).gameOptions[o.version]}async function J(){(await ee(S,o.game,o.version,t.value)).status!="error"&&await k()}return O(()=>o.game,()=>{o.version=null,t.value={}}),O(()=>o.version,()=>{o.version&&k()}),(l,e)=>(s(),d(Q,null,{default:c(()=>[i(R,null,{default:c(()=>[N.value?m("",!0):(s(),p(G,{key:0},[i(X,{class:"mb-6",arcade:b.value,"use-small":!0},null,8,["arcade"]),i(T,{icon:r(W),title:"Game Event Settings",main:""},null,8,["icon"]),i(q,{class:"mb-6"},{default:c(()=>[u("div",le,[i(x,{label:"Select Game",help:"Pick a game and version to get started."},{default:c(()=>[u("div",oe,[u("div",null,[e[4]||(e[4]=u("p",{class:"pb-2 text-lg"},"Game",-1)),i(v,{modelValue:o.game,"onUpdate:modelValue":e[0]||(e[0]=a=>o.game=a),name:"game",options:F()},null,8,["modelValue","options"])]),o.game?(s(),p("div",te,[e[5]||(e[5]=u("p",{class:"pb-2 text-lg"},"Version",-1)),i(v,{modelValue:o.version,"onUpdate:modelValue":e[1]||(e[1]=a=>o.version=a),name:"version",options:B()},null,8,["modelValue","options"])])):m("",!0)])]),_:1})]),o.game&&o.version?(s(),p("div",ne,[u("h2",se,[e[6]||(e[6]=z(" Settings for ")),u("b",null,H(C()),1)]),e[7]||(e[7]=u("hr",{class:"pb-1 my-2"},null,-1)),(s(!0),p(G,null,K(P(),a=>(s(),d(x,{key:a.id,label:a.name,help:a.help},{default:c(()=>[a.type=="String"?(s(),d(v,{key:0,"model-value":r(f)(t.value,a.id)??"",name:a.name,placeholder:"Not Set","onUpdate:modelValue":n=>r(y)(t.value,a.id,n)},null,8,["model-value","name","onUpdate:modelValue"])):m("",!0),a.type=="LargeText"?(s(),d(v,{key:1,"model-value":r(f)(t.value,a.id)??"",name:a.name,placeholder:"Not Set",type:"textarea","onUpdate:modelValue":n=>r(y)(t.value,a.id,n)},null,8,["model-value","name","onUpdate:modelValue"])):m("",!0),a.type=="Boolean"?(s(),d(Y,{key:2,name:a.id,"model-value":!!(r(f)(t.value,a.id)??0),"input-value":!0,type:"switch","onUpdate:modelValue":n=>r(y)(t.value,a.id,n??0)},null,8,["name","model-value","onUpdate:modelValue"])):m("",!0),a.type=="Array"?(s(),d(v,{key:3,"model-value":r(f)(t.value,a.id)??0,options:a.options,name:a.id,selected:r(f)(t.value,a.id)??0,placeholder:"Select...","onUpdate:modelValue":n=>r(y)(t.value,a.id,Number(n))},null,8,["model-value","options","name","selected","onUpdate:modelValue"])):m("",!0)]),_:2},1032,["label","help"]))),128)),JSON.stringify(t.value)!=JSON.stringify(_.value)?(s(),p("div",re,[i(U,{color:"success",label:"Save",onClick:e[2]||(e[2]=a=>J())}),i(U,{color:"danger",label:"Revert",onClick:e[3]||(e[3]=a=>k())})])):m("",!0)])):m("",!0)]),_:1})],64))]),_:1})]),_:1}))}};export{ge as default};

View File

@@ -1 +0,0 @@
import{r as y,p as $,u as j,o as D,R as E,L as O,c as d,d as s,w as c,e as i,_ as M,j as p,f as m,F as G,N as T,g as r,aR as W,h as H,i as u,H as q,t as z,k as K,l as x,n as Q,a4 as N}from"./index-vA9N45XP.js";import{_ as X}from"./ArcadeCard-DnKlr5sp.js";import{_ as U}from"./FormField-BJ53twuK.js";import{_ as v}from"./FormControl-CbA50xCq.js";import{_ as Y}from"./FormCheckRadio-Roj-HW28.js";import{s as V,g as f}from"./values-CmNcmtTU.js";import{A as Z,c as ee,d as ae}from"./arcade-CXvzpsdX.js";const le={class:"mb-4"},oe={class:"grid md:grid-cols-2 gap-4"},te={key:0},ne={key:0},se={class:"text-xl"},re={key:0,class:"space-x-2 mt-6"},ge={__name:"EventView",setup(ie){const t=y(null),o=$({game:null,version:null}),g=$([]),_=y(null),b=y(null),h=y(!0),w=j(),S=parseInt(w.params.id);async function A(){try{b.value=null,t.value={},_.value={};const l=await Z(S);b.value=l,h.value=!1}catch(l){console.error("Failed to fetch arcade data:",l)}}async function k(){try{t.value={},_.value={};const l=await ae(S,o.game,o.version);t.value=JSON.parse(JSON.stringify(l)),_.value=l}catch(l){console.error("Failed to fetch arcade setting data:",l)}}D(()=>{A(),F()});function F(){for(const l of E){const e=l.gameOptions;e&&g.push({game:l.id,gameOptions:e})}}function I(){var l=[];for(const e of g)e.gameOptions&&l.push({id:e.game,label:N(e.game).name});return l}function B(){const l=g.find(n=>n.game==o.game),e=N(o.game);var a=[];for(const n of Object.entries(l.gameOptions))if(e.versions==null)a.push({id:n[0],label:e.name}),o.version=1;else{const P=e.versions.find(R=>R.id==n[0]);a.push({id:n[0],label:P.label})}return a}function C(){const l=N(o.game);var e=null;return l.versions&&(e=l.versions.find(a=>a.id==o.version)),`${l.name} ${(e==null?void 0:e.label)??""}`}function L(){return g.find(e=>e.game==o.game).gameOptions[o.version]}async function J(){(await ee(S,o.game,o.version,t.value)).status!="error"&&await k()}return O(()=>o.game,()=>{o.version=null,t.value={}}),O(()=>o.version,()=>{o.version&&k()}),(l,e)=>(s(),d(Q,null,{default:c(()=>[i(M,null,{default:c(()=>[h.value?m("",!0):(s(),p(G,{key:0},[i(X,{class:"mb-6",arcade:b.value,"use-small":!0},null,8,["arcade"]),i(T,{icon:r(W),title:"Game Event Settings",main:""},null,8,["icon"]),i(H,{class:"mb-6"},{default:c(()=>[u("div",le,[i(U,{label:"Select Game",help:"Pick a game and version to get started."},{default:c(()=>[u("div",oe,[u("div",null,[e[4]||(e[4]=u("p",{class:"pb-2 text-lg"},"Game",-1)),i(v,{modelValue:o.game,"onUpdate:modelValue":e[0]||(e[0]=a=>o.game=a),name:"game",options:I()},null,8,["modelValue","options"])]),o.game?(s(),p("div",te,[e[5]||(e[5]=u("p",{class:"pb-2 text-lg"},"Version",-1)),i(v,{modelValue:o.version,"onUpdate:modelValue":e[1]||(e[1]=a=>o.version=a),name:"version",options:B()},null,8,["modelValue","options"])])):m("",!0)])]),_:1})]),o.game&&o.version?(s(),p("div",ne,[u("h2",se,[e[6]||(e[6]=q(" Settings for ")),u("b",null,z(C()),1)]),e[7]||(e[7]=u("hr",{class:"pb-1 my-2"},null,-1)),(s(!0),p(G,null,K(L(),a=>(s(),d(U,{key:a.id,label:a.name,help:a.help},{default:c(()=>[a.type=="String"?(s(),d(v,{key:0,"model-value":r(f)(t.value,a.id)??"",name:a.name,placeholder:"Not Set","onUpdate:modelValue":n=>r(V)(t.value,a.id,n)},null,8,["model-value","name","onUpdate:modelValue"])):m("",!0),a.type=="LargeText"?(s(),d(v,{key:1,"model-value":r(f)(t.value,a.id)??"",name:a.name,placeholder:"Not Set",type:"textarea","onUpdate:modelValue":n=>r(V)(t.value,a.id,n)},null,8,["model-value","name","onUpdate:modelValue"])):m("",!0),a.type=="Boolean"?(s(),d(Y,{key:2,name:a.id,"model-value":!!(r(f)(t.value,a.id)??0),"input-value":!0,type:"switch","onUpdate:modelValue":n=>r(V)(t.value,a.id,n??0)},null,8,["name","model-value","onUpdate:modelValue"])):m("",!0),a.type=="Array"?(s(),d(v,{key:3,"model-value":r(f)(t.value,a.id)??0,options:a.options,name:a.id,selected:r(f)(t.value,a.id)??0,placeholder:"Select...","onUpdate:modelValue":n=>r(V)(t.value,a.id,Number(n))},null,8,["model-value","options","name","selected","onUpdate:modelValue"])):m("",!0)]),_:2},1032,["label","help"]))),128)),JSON.stringify(t.value)!=JSON.stringify(_.value)?(s(),p("div",re,[i(x,{color:"success",label:"Save",onClick:e[2]||(e[2]=a=>J())}),i(x,{color:"danger",label:"Revert",onClick:e[3]||(e[3]=a=>k())})])):m("",!0)])):m("",!0)]),_:1})],64))]),_:1})]),_:1}))}};export{ge as default};

View File

@@ -1 +1 @@
import{r as c,o as x,c as b,d as u,w as l,e as s,_ as g,j as B,f as C,F as k,h as i,i as n,N as m,g as f,at as y,aC as D,n as I}from"./index-vA9N45XP.js";import{_}from"./GeneralTable-7ScsFktP.js";import{A as E}from"./admin-DLWnlEF3.js";const P={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},A={class:"w-full"},N={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},V={class:"w-full"},S={__name:"EventsView",setup($){const d=c({}),r=c(!0);x(async()=>{try{const t=await E();d.value=t,r.value=!1}catch(t){console.log("Failed to fetch admin data:",t)}});const h=[{text:"Timestamp",value:"date",width:120},{text:"IP Address",value:"data.ip",width:120},{text:"Game",value:"data.model",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Name",value:"data.name",width:120},{text:"Value",value:"data.value",width:120}],v=[{text:"Timestamp",value:"date",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Delta",value:"data.delta",width:120},{text:"Remaining Balance",value:"data.balance",width:120},{text:"Reason",value:"data.reason",width:120}];function p(t){var e=[];for(var a of t)if(a.type=="paseli_transaction"){if(a.timestamp){const o=new Date(a.timestamp*1e3);a.date=o.toLocaleString()}e.push(a)}return e}function w(t){var e=[];for(var a of t)if(a.type=="pcbevent"){if(a.timestamp){const o=new Date(a.timestamp*1e3);a.date=o.toLocaleString()}e.push(a)}return e}return(t,e)=>(u(),b(I,null,{default:l(()=>[s(g,null,{default:l(()=>[r.value?C("",!0):(u(),B(k,{key:0},[s(i,{class:"mb-6 p-1"},{default:l(()=>e[0]||(e[0]=[n("h1",{class:"text-3xl"},"Service Logs",-1)])),_:1}),s(m,{icon:f(y),title:"Recent PCB Events",color:"text-amber-400",main:""},null,8,["icon"]),s(i,{"has-table":"",class:"mb-4"},{default:l(()=>{var a;return[n("div",P,[n("div",A,[s(_,{headers:h,items:w((a=d.value)==null?void 0:a.audit)},null,8,["items"])])])]}),_:1}),s(m,{icon:f(D),title:"Recent PASELI Transactions",color:"text-emerald-400",main:""},null,8,["icon"]),s(i,{"has-table":""},{default:l(()=>{var a;return[n("div",N,[n("div",V,[s(_,{headers:v,items:p((a=d.value)==null?void 0:a.audit)},null,8,["items"])])])]}),_:1})],64))]),_:1})]),_:1}))}};export{S as default};
import{r as c,o as x,c as b,d as u,w as l,e as s,_ as g,j as B,f as k,F as y,h as i,i as n,P as m,g as f,aw as C,aF as D,n as I}from"./index-CHivKhhP.js";import{_}from"./GeneralTable-Dm8yzA2j.js";import{A as P}from"./admin-YL_-tKB5.js";const E={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},A={class:"w-full"},F={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},V={class:"w-full"},S={__name:"EventsView",setup($){const d=c({}),r=c(!0);x(async()=>{try{const t=await P();d.value=t,r.value=!1}catch(t){console.log("Failed to fetch admin data:",t)}});const h=[{text:"Timestamp",value:"date",width:120},{text:"IP Address",value:"data.ip",width:120},{text:"Game",value:"data.model",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Name",value:"data.name",width:120},{text:"Value",value:"data.value",width:120}],v=[{text:"Timestamp",value:"date",width:120},{text:"PCBID",value:"data.pcbid",width:120},{text:"Delta",value:"data.delta",width:120},{text:"Remaining Balance",value:"data.balance",width:120},{text:"Reason",value:"data.reason",width:120}];function p(t){var e=[];for(var a of t)if(a.type=="paseli_transaction"){if(a.timestamp){const o=new Date(a.timestamp*1e3);a.date=o.toLocaleString()}e.push(a)}return e}function w(t){var e=[];for(var a of t)if(a.type=="pcbevent"){if(a.timestamp){const o=new Date(a.timestamp*1e3);a.date=o.toLocaleString()}e.push(a)}return e}return(t,e)=>(u(),b(I,null,{default:l(()=>[s(g,null,{default:l(()=>[r.value?k("",!0):(u(),B(y,{key:0},[s(i,{class:"mb-6 p-1"},{default:l(()=>e[0]||(e[0]=[n("h1",{class:"text-3xl"},"Service Logs",-1)])),_:1}),s(m,{icon:f(C),title:"Recent PCB Events",color:"text-amber-400",main:""},null,8,["icon"]),s(i,{"has-table":"",class:"mb-4"},{default:l(()=>{var a;return[n("div",E,[n("div",A,[s(_,{headers:h,items:w((a=d.value)==null?void 0:a.audit)},null,8,["items"])])])]}),_:1}),s(m,{icon:f(D),title:"Recent PASELI Transactions",color:"text-emerald-400",main:""},null,8,["icon"]),s(i,{"has-table":""},{default:l(()=>{var a;return[n("div",F,[n("div",V,[s(_,{headers:v,items:p((a=d.value)==null?void 0:a.audit)},null,8,["items"])])])]}),_:1})],64))]),_:1})]),_:1}))}};export{S as default};

View File

@@ -1 +1 @@
import{ai as u,j as c,d as m,bs as p,i as a,bw as y,t as b,q as V}from"./index-vA9N45XP.js";const v=["type","name","value"],g={class:"pl-2"},h={__name:"FormCheckRadio",props:{name:{type:String,required:!0},type:{type:String,default:"checkbox",validator:e=>["checkbox","radio","switch"].includes(e)},label:{type:String,default:null},modelValue:{type:[Array,String,Number,Boolean],default:null},inputValue:{type:[String,Number,Boolean],required:!0}},emits:["update:modelValue"],setup(e,{emit:s}){const l=e,i=s,n=u({get:()=>l.modelValue,set:o=>{i("update:modelValue",o)}}),r=u(()=>l.type==="radio"?"radio":"checkbox");return(o,t)=>(m(),c("label",{class:V(e.type)},[p(a("input",{"onUpdate:modelValue":t[0]||(t[0]=d=>n.value=d),type:r.value,name:e.name,value:e.inputValue},null,8,v),[[y,n.value]]),t[1]||(t[1]=a("span",{class:"check"},null,-1)),a("span",g,b(e.label),1)],2))}};export{h as _};
import{al as u,j as c,d as m,bv as p,i as a,bz as y,t as b,q as v}from"./index-CHivKhhP.js";const V=["type","name","value"],g={class:"pl-2"},h={__name:"FormCheckRadio",props:{name:{type:String,required:!0},type:{type:String,default:"checkbox",validator:e=>["checkbox","radio","switch"].includes(e)},label:{type:String,default:null},modelValue:{type:[Array,String,Number,Boolean],default:null},inputValue:{type:[String,Number,Boolean],required:!0}},emits:["update:modelValue"],setup(e,{emit:s}){const l=e,i=s,n=u({get:()=>l.modelValue,set:o=>{i("update:modelValue",o)}}),r=u(()=>l.type==="radio"?"radio":"checkbox");return(o,t)=>(m(),c("label",{class:v(e.type)},[p(a("input",{"onUpdate:modelValue":t[0]||(t[0]=d=>n.value=d),type:r.value,name:e.name,value:e.inputValue},null,8,V),[[y,n.value]]),t[1]||(t[1]=a("span",{class:"check"},null,-1)),a("span",g,b(e.label),1)],2))}};export{h as _};

View File

@@ -1 +1 @@
import{c as k,d as u,B as w,ai as m,b as F,r as y,o as b,bG as B,j as i,bs as g,f as E,bH as V,q as h,F as q,k as R,t as C,bt as M,bw as D}from"./index-vA9N45XP.js";const N={__name:"FormControlIcon",props:{icon:{type:String,default:null},h:{type:String,default:null}},setup(e){return(v,n)=>(u(),k(w,{path:e.icon,w:"w-10",h:e.h,class:"absolute top-0 left-0 z-10 pointer-events-none text-gray-500 dark:text-slate-400"},null,8,["path","h"]))}},U={class:"relative"},H=["id","name"],K=["value"],L=["id","name","maxlength","minlength","min","max","placeholder","required"],j=["id","name","maxlength","minlength","min","max","inputmode","autocomplete","required","placeholder","type","pattern"],A={__name:"FormControl",props:{name:{type:String,default:null},id:{type:String,default:null},autocomplete:{type:String,default:null},maxlength:{type:Number,default:null},minlength:{type:Number,default:null},max:{type:String,default:null},min:{type:String,default:null},placeholder:{type:String,default:null},inputmode:{type:String,default:null},icon:{type:String,default:null},options:{type:Array,default:null},type:{type:String,default:"text"},pattern:{type:String,default:null},modelValue:{type:[String,Number,Boolean,Array,Object],default:""},required:Boolean,borderless:Boolean,transparent:Boolean,ctrlKFocus:Boolean},emits:["update:modelValue","setRef"],setup(e,{emit:v}){const n=e,r=v,o=m({get:()=>n.modelValue,set:a=>{r("update:modelValue",a)}}),c=m(()=>{const a=["px-3 py-2 max-w-full focus:ring focus:outline-none border-blue-700 dark:border-blue-900 rounded w-full","dark:placeholder-gray-400",d.value==="textarea"?"h-24":"h-12",n.borderless?"border-0":"border",n.transparent?"bg-transparent":"bg-white dark:bg-slate-800"];return n.icon&&a.push("pl-10"),a}),d=m(()=>n.options?"select":n.type),S=m(()=>n.type==="textarea"?"h-full":"h-12"),f=F(),p=y(null),x=y(null),s=y(null);if(b(()=>{p.value?r("setRef",p.value):x.value?r("setRef",x.value):r("setRef",s.value)}),n.ctrlKFocus){const a=l=>{l.ctrlKey&&l.key==="k"?(l.preventDefault(),s.value.focus()):l.key==="Escape"&&s.value.blur()};b(()=>{f.isFieldFocusRegistered||(window.addEventListener("keydown",a),f.isFieldFocusRegistered=!0)}),B(()=>{window.removeEventListener("keydown",a),f.isFieldFocusRegistered=!1})}return(a,l)=>(u(),i("div",U,[d.value==="select"?g((u(),i("select",{key:0,id:e.id,"onUpdate:modelValue":l[0]||(l[0]=t=>o.value=t),name:e.name,class:h(c.value)},[(u(!0),i(q,null,R(e.options,t=>(u(),i("option",{key:t.id??t,value:t.id??t},C(t.label??t),9,K))),128))],10,H)),[[V,o.value]]):d.value==="textarea"?g((u(),i("textarea",{key:1,id:e.id,"onUpdate:modelValue":l[1]||(l[1]=t=>o.value=t),class:h(c.value),name:e.name,maxlength:e.maxlength,minlength:e.minlength,min:e.min,max:e.max,placeholder:e.placeholder,required:e.required},null,10,L)),[[M,o.value]]):g((u(),i("input",{key:2,id:e.id,ref_key:"inputEl",ref:s,"onUpdate:modelValue":l[2]||(l[2]=t=>o.value=t),name:e.name,maxlength:e.maxlength,minlength:e.minlength,min:e.min,max:e.max,inputmode:e.inputmode,autocomplete:e.autocomplete,required:e.required,placeholder:e.placeholder,type:d.value,class:h(c.value),pattern:e.pattern},null,10,j)),[[D,o.value]]),e.icon?(u(),k(N,{key:3,icon:e.icon,h:S.value},null,8,["icon","h"])):E("",!0)]))}};export{A as _};
import{c as k,d as u,C as w,al as m,u as F,r as y,o as b,bJ as B,j as i,bv as g,f as E,bK as V,q as h,F as q,k as R,t as C,bw as M,bz as D}from"./index-CHivKhhP.js";const K={__name:"FormControlIcon",props:{icon:{type:String,default:null},h:{type:String,default:null}},setup(e){return(v,n)=>(u(),k(w,{path:e.icon,w:"w-10",h:e.h,class:"absolute top-0 left-0 z-10 pointer-events-none text-gray-500 dark:text-slate-400"},null,8,["path","h"]))}},N={class:"relative"},U=["id","name"],z=["value"],L=["id","name","maxlength","minlength","min","max","placeholder","required"],j=["id","name","maxlength","minlength","min","max","inputmode","autocomplete","required","placeholder","type","pattern"],H={__name:"FormControl",props:{name:{type:String,default:null},id:{type:String,default:null},autocomplete:{type:String,default:null},maxlength:{type:Number,default:null},minlength:{type:Number,default:null},max:{type:String,default:null},min:{type:String,default:null},placeholder:{type:String,default:null},inputmode:{type:String,default:null},icon:{type:String,default:null},options:{type:Array,default:null},type:{type:String,default:"text"},pattern:{type:String,default:null},modelValue:{type:[String,Number,Boolean,Array,Object],default:""},required:Boolean,borderless:Boolean,transparent:Boolean,ctrlKFocus:Boolean},emits:["update:modelValue","setRef"],setup(e,{emit:v}){const n=e,r=v,o=m({get:()=>n.modelValue,set:a=>{r("update:modelValue",a)}}),c=m(()=>{const a=["px-3 py-2 max-w-full focus:ring focus:outline-none border-blue-700 dark:border-blue-900 rounded w-full","dark:placeholder-gray-400",d.value==="textarea"?"h-24":"h-12",n.borderless?"border-0":"border",n.transparent?"bg-transparent":"bg-white dark:bg-slate-800"];return n.icon&&a.push("pl-10"),a}),d=m(()=>n.options?"select":n.type),S=m(()=>n.type==="textarea"?"h-full":"h-12"),f=F(),p=y(null),x=y(null),s=y(null);if(b(()=>{p.value?r("setRef",p.value):x.value?r("setRef",x.value):r("setRef",s.value)}),n.ctrlKFocus){const a=l=>{l.ctrlKey&&l.key==="k"?(l.preventDefault(),s.value.focus()):l.key==="Escape"&&s.value.blur()};b(()=>{f.isFieldFocusRegistered||(window.addEventListener("keydown",a),f.isFieldFocusRegistered=!0)}),B(()=>{window.removeEventListener("keydown",a),f.isFieldFocusRegistered=!1})}return(a,l)=>(u(),i("div",N,[d.value==="select"?g((u(),i("select",{key:0,id:e.id,"onUpdate:modelValue":l[0]||(l[0]=t=>o.value=t),name:e.name,class:h(c.value)},[(u(!0),i(q,null,R(e.options,t=>(u(),i("option",{key:t.id??t,value:t.id??t},C(t.label??t),9,z))),128))],10,U)),[[V,o.value]]):d.value==="textarea"?g((u(),i("textarea",{key:1,id:e.id,"onUpdate:modelValue":l[1]||(l[1]=t=>o.value=t),class:h(c.value),name:e.name,maxlength:e.maxlength,minlength:e.minlength,min:e.min,max:e.max,placeholder:e.placeholder,required:e.required},null,10,L)),[[M,o.value]]):g((u(),i("input",{key:2,id:e.id,ref_key:"inputEl",ref:s,"onUpdate:modelValue":l[2]||(l[2]=t=>o.value=t),name:e.name,maxlength:e.maxlength,minlength:e.minlength,min:e.min,max:e.max,inputmode:e.inputmode,autocomplete:e.autocomplete,required:e.required,placeholder:e.placeholder,type:d.value,class:h(c.value),pattern:e.pattern},null,10,j)),[[D,o.value]]),e.icon?(u(),k(K,{key:3,icon:e.icon,h:S.value},null,8,["icon","h"])):E("",!0)]))}};export{H as _};

View File

@@ -1 +1 @@
import{bz as d,ai as i,j as s,d as a,f as o,i as u,t as r,bA as m,q as b}from"./index-vA9N45XP.js";const f={class:"mb-6 last:mb-0"},g=["for"],h={key:1,class:"text-xs text-gray-500 dark:text-slate-400 mt-1"},y={__name:"FormField",props:{label:{type:String,default:null},labelFor:{type:String,default:null},help:{type:String,default:null}},setup(e){const n=d(),c=i(()=>{const t=[],l=n.default().length;return l>1&&t.push("grid grid-cols-1 gap-3"),l===2&&t.push("md:grid-cols-2"),t});return(t,l)=>(a(),s("div",f,[e.label?(a(),s("label",{key:0,for:e.labelFor,class:"block font-bold mb-2"},r(e.label),9,g)):o("",!0),u("div",{class:b(c.value)},[m(t.$slots,"default")],2),e.help?(a(),s("div",h,r(e.help),1)):o("",!0)]))}};export{y as _};
import{bC as d,al as i,j as s,d as a,f as o,i as u,t as r,bD as m,q as b}from"./index-CHivKhhP.js";const f={class:"mb-6 last:mb-0"},g=["for"],h={key:1,class:"text-xs text-gray-500 dark:text-slate-400 mt-1"},y={__name:"FormField",props:{label:{type:String,default:null},labelFor:{type:String,default:null},help:{type:String,default:null}},setup(e){const n=d(),c=i(()=>{const t=[],l=n.default().length;return l>1&&t.push("grid grid-cols-1 gap-3"),l===2&&t.push("md:grid-cols-2"),t});return(t,l)=>(a(),s("div",f,[e.label?(a(),s("label",{key:0,for:e.labelFor,class:"block font-bold mb-2"},r(e.label),9,g)):o("",!0),u("div",{class:b(c.value)},[m(t.$slots,"default")],2),e.help?(a(),s("div",h,r(e.help),1)):o("",!0)]))}};export{y as _};

View File

@@ -1 +1 @@
import{b as p,u as v,r as _,L as $,j as i,f as m,d as t,i as l,g as c,e as y,w as k,bA as w,F as u,k as S,c as N,l as x,b0 as C,a_ as P,bC as R,bD as M,by as B,b4 as g,b5 as f}from"./index-vA9N45XP.js";import{a as V,_ as D,g as F}from"./sources-CWr6W3sX.js";const H=["src"],I={class:"bg-white dark:bg-slate-900/90 rounded-2xl card-content"},L={class:"w-full"},j={class:"w-full"},A={class:"w-full grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:flex gap-3"},q={__name:"GameHeader",props:{game:{type:Object,required:!0},version:{type:Number,default:null}},setup(s){const r=p(),h=v(),n=_(r.userProfiles);$(()=>r.userProfiles,a=>{n.value=a});const e=s;function b(){const a=[{label:`${e.game.shortName?e.game.shortName:e.game.name} Home`,icon:P,path:`/#/games/${e.game.id}/`,route:"game_page",color:"success"}];return n.value.some(d=>d.game===e.game.id)&&(a.push({label:"My Profile",icon:R,path:`/#/games/${e.game.id}/profiles/${r.userId}`,route:"game_profile",color:"info"}),a.push({label:"Edit Profile",icon:M,path:`/#/games/${e.game.id}/edit`,route:"edit_profile",color:"warning"}),e.game.noRivals||a.push({label:"Rivals",icon:B,path:`/#/games/${e.game.id}/rivals`,route:"game_rivals",color:"danger"}),e.game.noScores||a.push({label:"My Scores",icon:g,path:`/#/games/${e.game.id}/scores/${r.userId}`,color:"info"}),a.push({label:"My Records",icon:f,path:`/#/games/${e.game.id}/records/${r.userId}`,route:"personal_records",color:"success"})),e.game.noScores||a.push({label:"Network Scores",icon:g,path:`/#/games/${e.game.id}/scores`,route:"all_scores",color:"info"},{label:"Network Records",icon:f,path:`/#/games/${e.game.id}/records`,route:"all_records",color:"success"}),a}return(a,d)=>s.game?(t(),i("div",{key:0,style:C(c(F)(s.game,s.version)),class:"rounded-2xl mb-6 card-container"},[l("video",{autoplay:"",muted:"",loop:"",playsinline:"",src:c(V)(s.game,s.version),class:"background-video"},null,8,H),l("div",I,[y(D,{path:s.game.icon,title:s.game.name},{default:k(()=>[l("div",L,[l("div",j,[w(a.$slots,"default")]),l("div",A,[(t(!0),i(u,null,S(b(),o=>(t(),i(u,{key:o.path},[o.route!=c(h).name?(t(),N(x,{key:0,href:o.path,icon:o.icon,label:o.label,color:o.color},null,8,["href","icon","label","color"])):m("",!0)],64))),128))])])]),_:3},8,["path","title"])])],4)):m("",!0)}};export{q as _};
import{u as p,a as v,r as $,M as _,j as i,f as m,d as t,i as l,g as c,e as y,w as k,bD as w,F as u,k as S,c as N,l as x,b3 as M,b1 as P,bF as R,bG as B,bB as C,b7 as g,b8 as f}from"./index-CHivKhhP.js";import{a as F,_ as V,g as D}from"./sources-0lyug9Pk.js";const H=["src"],I={class:"bg-white dark:bg-slate-900/90 rounded-2xl card-content"},j={class:"w-full"},E={class:"w-full"},G={class:"w-full grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:flex gap-3"},q={__name:"GameHeader",props:{game:{type:Object,required:!0},version:{type:Number,default:null}},setup(s){const r=p(),h=v(),n=$(r.userProfiles);_(()=>r.userProfiles,a=>{n.value=a});const e=s;function b(){const a=[{label:`${e.game.shortName?e.game.shortName:e.game.name} Home`,icon:P,path:`/#/games/${e.game.id}/`,route:"game_page",color:"success"}];return n.value.some(d=>d.game===e.game.id)&&(a.push({label:"My Profile",icon:R,path:`/#/games/${e.game.id}/profiles/${r.userId}`,route:"game_profile",color:"info"}),a.push({label:"Edit Profile",icon:B,path:`/#/games/${e.game.id}/edit`,route:"edit_profile",color:"warning"}),e.game.noRivals||a.push({label:"Rivals",icon:C,path:`/#/games/${e.game.id}/rivals`,route:"game_rivals",color:"danger"}),e.game.noScores||a.push({label:"My Scores",icon:g,path:`/#/games/${e.game.id}/scores/${r.userId}`,color:"info"}),a.push({label:"My Records",icon:f,path:`/#/games/${e.game.id}/records/${r.userId}`,route:"personal_records",color:"success"})),e.game.noScores||a.push({label:"Network Scores",icon:g,path:`/#/games/${e.game.id}/scores`,route:"all_scores",color:"info"},{label:"Network Records",icon:f,path:`/#/games/${e.game.id}/records`,route:"all_records",color:"success"}),a}return(a,d)=>s.game?(t(),i("div",{key:0,style:M(c(D)(s.game,s.version)),class:"rounded-2xl mb-6 card-container"},[l("video",{autoplay:"",muted:"",loop:"",playsinline:"",src:c(F)(s.game,s.version),class:"background-video"},null,8,H),l("div",I,[y(V,{path:s.game.icon,title:s.game.name},{default:k(()=>[l("div",j,[l("div",E,[w(a.$slots,"default")]),l("div",G,[(t(!0),i(u,null,S(b(),o=>(t(),i(u,{key:o.path},[o.route!=c(h).name?(t(),N(x,{key:0,href:o.path,icon:o.icon,label:o.label,color:o.color},null,8,["href","icon","label","color"])):m("",!0)],64))),128))])])]),_:3},8,["path","title"])])],4)):m("",!0)}};export{q as _};

View File

@@ -1 +1 @@
import{u as k,a as B,p as D,L as G,a4 as R,r as g,o as C,c as L,d as m,w as c,e as o,_ as N,g as d,j as y,f as x,i as f,N as F,b3 as j,h as E,n as H}from"./index-vA9N45XP.js";import{_ as M}from"./GameHeader-DvtYwLzr.js";import{_ as S}from"./FormControl-CbA50xCq.js";import{_ as T}from"./ProfileCard-C1HnxXZz.js";import{_ as U}from"./GeneralTable-7ScsFktP.js";import{a as X,A as q}from"./profile-CSjRk0MQ.js";import{d as z}from"./userData-DZYdegtD.js";import{g as w}from"./danClass-NuRM5DAU.js";import"./sources-CWr6W3sX.js";const J={key:0,class:"w-full md:flex md:-mt-[75px] mb-4 place-content-end"},K={class:"md:w-1/3 md:text-right"},O={key:1,class:"w-full"},Q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},W={class:"w-full"},ue={__name:"GameView",setup(Y){const V=k(),p=B();var l=null,a=null;const r=D({currentVersion:null});G(()=>r.currentVersion,()=>{v()}),l=V.params.id,a=R(l),a==null&&p.push({name:"ErrorPage",params:{catchAll:"404"}});const n=g(null),_=g([]);C(async()=>{try{const s=await X(l);_.value=$(s)}catch(s){console.error("Failed to fetch profile data:",s)}v()}),a.versions||(r.currentVersion=1);async function v(){try{n.value=null;const s=await q(l,r.currentVersion);n.value=s,s&&!r.currentVersion&&(r.currentVersion=s.versions[s.versions.length-1])}catch(s){console.error("Failed to fetch user profile data:",s)}}const i=[];if(i.push({text:"Player",value:"username",sortable:!0,width:120}),a.noRivals||i.push({text:"Rival ID",value:"extid",width:100}),i.push({text:"Last Play",value:"stats.last_play_timestamp",width:150},{text:"Last Arcade",value:"stats.last_play_arcade",width:150},{text:"Plays",value:"stats.total_plays",sortable:!0,width:50}),a.playerHeaders)for(var P of a.playerHeaders)i.push(P);function $(s){var t=[];for(var e of s){if(e.extid&&(e.extid=z(e.extid)),e.stats){if(e.stats.last_play_timestamp){const u=new Date(e.stats.last_play_timestamp*1e3);e.stats.last_play_timestamp=u.toLocaleString()}e.sgrade&&(e.sgrade=w(e.sgrade).short),e.dgrade&&(e.dgrade=w(e.dgrade).short)}t.push(e)}return t.sort((u,h)=>{const b=u.stats&&u.stats.total_plays||0;return(h.stats&&h.stats.total_plays||0)-b}),t}function I(s){var t=[];for(const e of a.versions)s.includes(e.id)&&t.push(e);return t}const A=s=>{const t=s.userId;p.push(`/games/${l}/profiles/${t}`)};return(s,t)=>(m(),L(H,null,{default:c(()=>[o(N,null,{default:c(()=>[o(M,{game:d(a),version:r.currentVersion},{default:c(()=>[d(a).versions&&n.value?(m(),y("div",J,[f("div",K,[t[1]||(t[1]=f("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),o(S,{modelValue:r.currentVersion,"onUpdate:modelValue":t[0]||(t[0]=e=>r.currentVersion=e),options:I(n.value.versions)},null,8,["modelValue","options"])])])):x("",!0),n.value?(m(),y("div",O,[o(T,{game:d(l),version:r.currentVersion,profile:n.value,"use-small":""},null,8,["game","version","profile"])])):x("",!0)]),_:1},8,["game","version"]),o(F,{icon:d(j),title:"All Players",main:""},null,8,["icon"]),o(E,{"has-table":""},{default:c(()=>[f("div",Q,[f("div",W,[o(U,{headers:i,items:_.value,onRowClicked:A},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{ue as default};
import{a as k,b as B,p as D,M as G,a7 as R,r as g,o as C,c as F,d as m,w as c,e as o,_ as L,g as d,j as y,f as x,i as f,P as M,b6 as N,h as j,n as E}from"./index-CHivKhhP.js";import{_ as H}from"./GameHeader-CbS6z4E_.js";import{_ as S}from"./FormControl-BLuW9GWW.js";import{_ as T}from"./ProfileCard-D5atgNuu.js";import{_ as U}from"./GeneralTable-Dm8yzA2j.js";import{a as X,A as q}from"./profile-LMvWxmH8.js";import{d as z}from"./userData-DZYdegtD.js";import{g as w}from"./danClass-NuRM5DAU.js";import"./sources-0lyug9Pk.js";const J={key:0,class:"w-full md:flex md:-mt-[75px] mb-4 place-content-end"},K={class:"md:w-1/3 md:text-right"},O={key:1,class:"w-full"},Q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},W={class:"w-full"},ue={__name:"GameView",setup(Y){const V=k(),p=B();var l=null,a=null;const r=D({currentVersion:null});G(()=>r.currentVersion,()=>{v()}),l=V.params.id,a=R(l),a==null&&p.push({name:"ErrorPage",params:{catchAll:"404"}});const n=g(null),_=g([]);C(async()=>{try{const s=await X(l);_.value=$(s)}catch(s){console.error("Failed to fetch profile data:",s)}v()}),a.versions||(r.currentVersion=1);async function v(){try{n.value=null;const s=await q(l,r.currentVersion);n.value=s,s&&!r.currentVersion&&(r.currentVersion=s.versions[s.versions.length-1])}catch(s){console.error("Failed to fetch user profile data:",s)}}const i=[];if(i.push({text:"Player",value:"username",sortable:!0,width:120}),a.noRivals||i.push({text:"Rival ID",value:"extid",width:100}),i.push({text:"Last Play",value:"stats.last_play_timestamp",width:150},{text:"Last Arcade",value:"stats.last_play_arcade",width:150},{text:"Plays",value:"stats.total_plays",sortable:!0,width:50}),a.playerHeaders)for(var P of a.playerHeaders)i.push(P);function $(s){var t=[];for(var e of s){if(e.extid&&(e.extid=z(e.extid)),e.stats){if(e.stats.last_play_timestamp){const u=new Date(e.stats.last_play_timestamp*1e3);e.stats.last_play_timestamp=u.toLocaleString()}e.sgrade&&(e.sgrade=w(e.sgrade).short),e.dgrade&&(e.dgrade=w(e.dgrade).short)}t.push(e)}return t.sort((u,h)=>{const A=u.stats&&u.stats.total_plays||0;return(h.stats&&h.stats.total_plays||0)-A}),t}function I(s){var t=[];for(const e of a.versions)s.includes(e.id)&&t.push(e);return t}const b=s=>{const t=s.userId;p.push(`/games/${l}/profiles/${t}`)};return(s,t)=>(m(),F(E,null,{default:c(()=>[o(L,null,{default:c(()=>[o(H,{game:d(a),version:r.currentVersion},{default:c(()=>[d(a).versions&&n.value?(m(),y("div",J,[f("div",K,[t[1]||(t[1]=f("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),o(S,{modelValue:r.currentVersion,"onUpdate:modelValue":t[0]||(t[0]=e=>r.currentVersion=e),options:I(n.value.versions)},null,8,["modelValue","options"])])])):x("",!0),n.value?(m(),y("div",O,[o(T,{game:d(l),version:r.currentVersion,profile:n.value,"use-small":""},null,8,["game","version","profile"])])):x("",!0)]),_:1},8,["game","version"]),o(M,{icon:d(N),title:"All Players",main:""},null,8,["icon"]),o(j,{"has-table":""},{default:c(()=>[f("div",Q,[f("div",W,[o(U,{headers:i,items:_.value,onRowClicked:b},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{ue as default};

View File

@@ -1,3 +1,3 @@
import{bK as z,u as F,az as J,j as M,d as V,e as y,i,bL as G,w as x,aO as H,t as $,bA as I,l as D,g as T,bM as K,bN as P,bO as W,bP as X,F as Q}from"./index-vA9N45XP.js";var R={exports:{}},Y=R.exports,O;function Z(){return O||(O=1,function(p,L){(function(C,f){p.exports=f()})(Y,function(){return function C(f,_,k){var s=window,l="application/octet-stream",a=k||l,t=f,r=!_&&!k&&t,e=document.createElement("a"),d=function(o){return String(o)},n=s.Blob||s.MozBlob||s.WebKitBlob||d,u=_||"download",c,S;if(n=n.call?n.bind(s):Blob,String(this)==="true"&&(t=[t,a],a=t[0],t=t[1]),r&&r.length<2048&&(u=r.split("/").pop().split("?")[0],e.href=r,e.href.indexOf(r)!==-1)){var b=new XMLHttpRequest;return b.open("GET",r,!0),b.responseType="blob",b.onload=function(o){C(o.target.response,u,l)},setTimeout(function(){b.send()},0),b}if(/^data:([\w+-]+\/[\w+.-]+)?[,;]/.test(t))if(t.length>1024*1024*1.999&&n!==d)t=A(t),a=t.type||l;else return navigator.msSaveBlob?navigator.msSaveBlob(A(t),u):w(t);else if(/([\x80-\xff])/.test(t)){var h=0,B=new Uint8Array(t.length),j=B.length;for(h;h<j;++h)B[h]=t.charCodeAt(h);t=new n([B],{type:a})}c=t instanceof n?t:new n([t],{type:a});function A(o){var m=o.split(/[:;,]/),v=m[1],q=m[2]=="base64"?atob:decodeURIComponent,U=q(m.pop()),E=U.length,g=0,N=new Uint8Array(E);for(g;g<E;++g)N[g]=U.charCodeAt(g);return new n([N],{type:v})}function w(o,m){if("download"in e)return e.href=o,e.setAttribute("download",u),e.className="download-js-link",e.innerHTML="downloading...",e.style.display="none",document.body.appendChild(e),setTimeout(function(){e.click(),document.body.removeChild(e),m===!0&&setTimeout(function(){s.URL.revokeObjectURL(e.href)},250)},66),!0;if(/(Version)\/(\d+)\.(\d+)(?:\.(\d+))?.*Safari\//.test(navigator.userAgent))return/^data:/.test(o)&&(o="data:"+o.replace(/^data:([\w\/\-\+]+)/,l)),window.open(o)||confirm(`Displaying New Document
import{bN as F,a as J,aC as V,j as z,d as G,e as y,i,bO as H,w as x,aR as I,t as $,bD as M,l as D,g as T,bP as P,bQ as K,bR as Q,bS as W,F as X}from"./index-CHivKhhP.js";var R={exports:{}},Y=R.exports,O;function Z(){return O||(O=1,function(p,L){(function(C,f){p.exports=f()})(Y,function(){return function C(f,_,k){var s=window,l="application/octet-stream",a=k||l,t=f,r=!_&&!k&&t,e=document.createElement("a"),d=function(o){return String(o)},n=s.Blob||s.MozBlob||s.WebKitBlob||d,u=_||"download",c,S;if(n=n.call?n.bind(s):Blob,String(this)==="true"&&(t=[t,a],a=t[0],t=t[1]),r&&r.length<2048&&(u=r.split("/").pop().split("?")[0],e.href=r,e.href.indexOf(r)!==-1)){var b=new XMLHttpRequest;return b.open("GET",r,!0),b.responseType="blob",b.onload=function(o){C(o.target.response,u,l)},setTimeout(function(){b.send()},0),b}if(/^data:([\w+-]+\/[\w+.-]+)?[,;]/.test(t))if(t.length>1024*1024*1.999&&n!==d)t=U(t),a=t.type||l;else return navigator.msSaveBlob?navigator.msSaveBlob(U(t),u):w(t);else if(/([\x80-\xff])/.test(t)){var h=0,B=new Uint8Array(t.length),j=B.length;for(h;h<j;++h)B[h]=t.charCodeAt(h);t=new n([B],{type:a})}c=t instanceof n?t:new n([t],{type:a});function U(o){var m=o.split(/[:;,]/),v=m[1],q=m[2]=="base64"?atob:decodeURIComponent,A=q(m.pop()),E=A.length,g=0,N=new Uint8Array(E);for(g;g<E;++g)N[g]=A.charCodeAt(g);return new n([N],{type:v})}function w(o,m){if("download"in e)return e.href=o,e.setAttribute("download",u),e.className="download-js-link",e.innerHTML="downloading...",e.style.display="none",document.body.appendChild(e),setTimeout(function(){e.click(),document.body.removeChild(e),m===!0&&setTimeout(function(){s.URL.revokeObjectURL(e.href)},250)},66),!0;if(/(Version)\/(\d+)\.(\d+)(?:\.(\d+))?.*Safari\//.test(navigator.userAgent))return/^data:/.test(o)&&(o="data:"+o.replace(/^data:([\w\/\-\+]+)/,l)),window.open(o)||confirm(`Displaying New Document
Use Save As... to download, then click back to return to this page.`)&&(location.href=o),!0;var v=document.createElement("iframe");document.body.appendChild(v),!m&&/^data:/.test(o)&&(o="data:"+o.replace(/^data:([\w\/\-\+]+)/,l)),v.src=o,setTimeout(function(){document.body.removeChild(v)},333)}if(navigator.msSaveBlob)return navigator.msSaveBlob(c,u);if(s.URL)w(s.URL.createObjectURL(c),!0);else{if(typeof c=="string"||c.constructor===d)try{return w("data:"+a+";base64,"+s.btoa(c))}catch{return w("data:"+a+","+encodeURIComponent(c))}S=new FileReader,S.onload=function(o){w(this.result)},S.readAsDataURL(c)}return!0}})}(R)),R.exports}var ee=Z();const te=z(ee),oe={class:"flex items-center"},ne={class:"m-1 p-1 bg-slate-800 rounded-md"},ae={class:"username-wrapper flex items-center gap-2"},se={class:"w-6"},re={class:"p-2 w-full flex md:justify-end"},le={__name:"GeneralTable",props:["headers","items","hasAvatar"],emits:["row-clicked"],setup(p,{emit:L}){const C=F(),f=p,_=L,k=l=>{_("row-clicked",l)};function s(){te(JSON.stringify({headers:f.headers,data:f.items}),`export${C.fullPath}_data.json`,"text/plain")}return(l,a)=>{const t=J("EasyDataTable");return V(),M(Q,null,[y(t,{headers:p.headers,items:p.items,"theme-color":"#c0c7d2","table-class-name":"customize-table","header-text-direction":"left","body-text-direction":"left",onClickRow:k},G({loading:x(()=>[a[0]||(a[0]=i("div",{class:"text-center align-center grid"},[i("img",{class:"rounded-full place-self-center",src:W,width:"60"}),i("h1",{class:"text-lg text-gray-100"},"Loading")],-1))]),"empty-message":x(()=>[a[1]||(a[1]=i("h1",{class:"text-xl text-gray-100"},"No data to show... 😔",-1))]),pagination:x(({prevPage:r,nextPage:e,isFirstPage:d,isLastPage:n,currentPaginationNumber:u})=>[i("div",oe,[y(D,{icon:T(K),color:"info","very-small":"",disabled:d,onClick:r},null,8,["icon","disabled","onClick"]),i("span",ne,$(u),1),y(D,{icon:T(P),color:"info","very-small":"",small:"",disabled:n,onClick:e},null,8,["icon","disabled","onClick"])])]),default:x(()=>[I(l.$slots,"default")]),_:2},[f.hasAvatar?{name:"item-username",fn:x(({username:r,data:e})=>{var d,n;return[i("div",ae,[i("div",se,[y(H,{avatar:e!=null&&e.discord?`https://cdn.discordapp.com/avatars/${(d=e==null?void 0:e.discord)==null?void 0:d.id}/${(n=e==null?void 0:e.discord)==null?void 0:n.avatar}`:null},null,8,["avatar"])]),i("span",null,$(r),1)])]}),key:"0"}:void 0]),1032,["headers","items"]),i("div",re,[y(D,{label:"Export Table",icon:T(X),color:"info",onClick:s},null,8,["icon"])])],64)}}};export{le as _};
Use Save As... to download, then click back to return to this page.`)&&(location.href=o),!0;var v=document.createElement("iframe");document.body.appendChild(v),!m&&/^data:/.test(o)&&(o="data:"+o.replace(/^data:([\w\/\-\+]+)/,l)),v.src=o,setTimeout(function(){document.body.removeChild(v)},333)}if(navigator.msSaveBlob)return navigator.msSaveBlob(c,u);if(s.URL)w(s.URL.createObjectURL(c),!0);else{if(typeof c=="string"||c.constructor===d)try{return w("data:"+a+";base64,"+s.btoa(c))}catch{return w("data:"+a+","+encodeURIComponent(c))}S=new FileReader,S.onload=function(o){w(this.result)},S.readAsDataURL(c)}return!0}})}(R)),R.exports}var ee=Z();const te=F(ee),oe={class:"flex items-center"},ne={class:"m-1 p-1 bg-slate-800 rounded-md"},ae={class:"username-wrapper flex items-center gap-2"},se={class:"w-6"},re={class:"p-2 w-full flex md:justify-end"},le={__name:"GeneralTable",props:["headers","items","hasAvatar"],emits:["row-clicked"],setup(p,{emit:L}){const C=J(),f=p,_=L,k=l=>{_("row-clicked",l)};function s(){te(JSON.stringify({headers:f.headers,data:f.items}),`export${C.fullPath}_data.json`,"text/plain")}return(l,a)=>{const t=V("EasyDataTable");return G(),z(X,null,[y(t,{headers:p.headers,items:p.items,"theme-color":"#c0c7d2","table-class-name":"customize-table","header-text-direction":"left","body-text-direction":"left",onClickRow:k},H({loading:x(()=>[a[0]||(a[0]=i("div",{class:"text-center align-center grid"},[i("img",{class:"rounded-full place-self-center",src:Q,width:"60"}),i("h1",{class:"text-lg text-gray-100"},"Loading")],-1))]),"empty-message":x(()=>[a[1]||(a[1]=i("h1",{class:"text-xl text-gray-100"},"No data to show... 😔",-1))]),pagination:x(({prevPage:r,nextPage:e,isFirstPage:d,isLastPage:n,currentPaginationNumber:u})=>[i("div",oe,[y(D,{icon:T(P),color:"info","very-small":"",disabled:d,onClick:r},null,8,["icon","disabled","onClick"]),i("span",ne,$(u),1),y(D,{icon:T(K),color:"info","very-small":"",small:"",disabled:n,onClick:e},null,8,["icon","disabled","onClick"])])]),default:x(()=>[M(l.$slots,"default")]),_:2},[f.hasAvatar?{name:"item-username",fn:x(({username:r,data:e})=>{var d,n;return[i("div",ae,[i("div",se,[y(I,{avatar:e!=null&&e.discord?`https://cdn.discordapp.com/avatars/${(d=e==null?void 0:e.discord)==null?void 0:d.id}/${(n=e==null?void 0:e.discord)==null?void 0:n.avatar}`:null},null,8,["avatar"])]),i("span",null,$(r),1)])]}),key:"0"}:void 0]),1032,["headers","items"]),i("div",re,[y(D,{label:"Export Table",icon:T(W),color:"info",onClick:s},null,8,["icon"])])],64)}}};export{le as _};

View File

@@ -1 +0,0 @@
import{u as I,a as U,r as w,b as L,L as R,V as D,c as u,d as i,w as _,e as c,_ as F,i as m,M as x,N as C,g as N,W as P,j as h,F as V,k as T,X as B,Y as H,h as O,f as d,O as M,H as W,t as f,l as k,n as j,Z as q}from"./index-vA9N45XP.js";const z={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},E={key:0,class:"text-lg"},K={key:1,class:"text-lg"},Q={class:"space-x-2"},G={__name:"IntegrationView",setup(X){const b=I(),p=U(),y="https://discord.com/oauth2/authorize?client_id=947985989421395988&response_type=code&redirect_uri=https%3A%2F%2Fweb3.phaseii.network%2F%23%2Fprofile%2Fintegrate%2Fdiscord&scope=identify",S="https://kamai.tachi.ac/oauth/request-auth?clientID=CIce4260e1939ceed11c8e48ee857a3aef2a87ba56",g=w(b.params.service);if(g.value){const t=new URLSearchParams(window.location.search),r=t.get("code");t.delete("code"),r!==void 0&&A(g.value,r)}const l=L(),a=w(l.userData);R(()=>l.userData,t=>{a.value=t});const $=[{id:"discord",name:"Discord",icon:B,oAuth:y},{id:"tachi",name:"Kamaitachi",icon:H,oAuth:S}];async function v(t){await q(t.id)&&(l.userLoaded=!1,l.loadUser(),p.push({name:"profile_integrations"}))}async function A(t,r){if(await D(t,r)){const n=new URLSearchParams(window.location.search);n.delete("code");const o=n.toString(),s=`${window.location.pathname}${o?"?"+o:""}`;window.history.replaceState(null,"",s),l.userLoaded=!1,l.loadUser(),p.push({name:"profile_integrations"})}}return(t,r)=>(i(),u(j,null,{default:_(()=>[c(F,null,{default:_(()=>[c(x,{class:"mb-6","use-small":"","even-smaller":""}),c(C,{icon:N(P),title:"Server Integrations",main:""},null,8,["icon"]),m("div",z,[(i(),h(V,null,T($,e=>c(O,{key:e.id},{footer:_(()=>{var n,o,s;return[m("div",Q,[!a.value[e.id]||!((n=a.value[e.id])!=null&&n.linked)?(i(),u(k,{key:0,color:"success",label:"Link Now",href:e.oAuth,target:"_blank"},null,8,["href"])):d("",!0),a.value[e.id]&&((o=a.value[e.id])!=null&&o.linked)?(i(),u(k,{key:1,color:"info",label:"Relink",href:e.oAuth,target:"_blank"},null,8,["href"])):d("",!0),a.value[e.id]&&((s=a.value[e.id])!=null&&s.linked)?(i(),u(k,{key:2,color:"danger",label:"Unlink",onClick:Y=>v(e)},null,8,["onClick"])):d("",!0)])]}),default:_(()=>{var n,o,s;return[c(M,{color:"info",icon:e.icon,label:e.name,class:"mb-2"},null,8,["icon","label"]),a.value[e.id]&&((n=a.value[e.id])!=null&&n.linked)?(i(),h("h1",E,[W(f(e.name)+" is linked to ",1),m("b",null,f((o=a.value[e.id])==null?void 0:o.username),1)])):d("",!0),!a.value[e.id]||!((s=a.value[e.id])!=null&&s.linked)?(i(),h("h1",K,f(e.name)+" isn't linked! ",1)):d("",!0)]}),_:2},1024)),64))])]),_:1})]),_:1}))}};export{G as default};

View File

@@ -0,0 +1,18 @@
import{a as S,b as $,r as w,u as A,M as U,Y as L,c as u,d as i,w as m,e as c,_ as R,i as h,O as F,P as x,g as C,Z as N,j as f,F as K,k as V,$ as B,a0 as T,h as M,f as d,Q as O,t as _,I as H,l as p,n as W,a1 as j}from"./index-CHivKhhP.js";const z={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},Q={class:"font-sans text-wrap mb-6"},X={key:0,class:"text-lg"},Y={key:1,class:"text-lg"},q={class:"space-x-2"},J={__name:"IntegrationView",setup(E){const I=S(),k=$(),y="https://discord.com/oauth2/authorize?client_id=947985989421395988&response_type=code&redirect_uri=https%3A%2F%2Fweb3.phaseii.network%2F%23%2Fprofile%2Fintegrate%2Fdiscord&scope=identify",b="https://kamai.tachi.ac/oauth/request-auth?clientID=CIce4260e1939ceed11c8e48ee857a3aef2a87ba56",g=w(I.params.service);if(g.value){const t=new URLSearchParams(window.location.search),l=t.get("code");t.delete("code"),l!==void 0&&P(g.value,l)}const r=A(),e=w(r.userData);U(()=>r.userData,t=>{e.value=t});const v=[{id:"discord",name:"Discord",icon:B,oAuth:y,description:`Linking your Discord account to PhaseII gives you an avatar, enables push notifications, and more via our Discord bot, BadManiac.
PhaseII *does not* use Discord's API aside from the initial linkage. All data PhaseII uses is sent via our bot.
No data aside from your avatar, User ID, and name is saved.
We do not save a token nor a cookie.`},{id:"tachi",name:"Kamaitachi",icon:T,oAuth:b,description:`Kamaitachi is an open source score tracker using standardized schemas.
Linking Kamaitachi to PhaseII will enable the uploading of all supported scores to Kamaitachi directly, with no user intervention.
You must follow all rules of Kamaitachi. Failure to adhere to rules will not only put your Kamaitachi account at risk, but also your PhaseII account.
Currently supported games:
- DDR
- IIDX
- SDVX
- pop'n (some versions)
- jubeat`}];async function D(t){await j(t.id)&&(r.userLoaded=!1,r.loadUser(),k.push({name:"profile_integrations"}))}async function P(t,l){if(await L(t,l)){const n=new URLSearchParams(window.location.search);n.delete("code");const o=n.toString(),s=`${window.location.pathname}${o?"?"+o:""}`;window.history.replaceState(null,"",s),r.userLoaded=!1,r.loadUser(),k.push({name:"profile_integrations"})}}return(t,l)=>(i(),u(W,null,{default:m(()=>[c(R,null,{default:m(()=>[c(F,{class:"mb-6","use-small":"","even-smaller":""}),c(x,{icon:C(N),title:"Server Integrations",main:""},null,8,["icon"]),h("div",z,[(i(),f(K,null,V(v,a=>c(M,{key:a.id},{footer:m(()=>{var n,o,s;return[h("div",q,[!e.value[a.id]||!((n=e.value[a.id])!=null&&n.linked)?(i(),u(p,{key:0,color:"success",label:"Link Now",href:a.oAuth,target:"_blank"},null,8,["href"])):d("",!0),e.value[a.id]&&((o=e.value[a.id])!=null&&o.linked)?(i(),u(p,{key:1,color:"info",label:"Relink",href:a.oAuth,target:"_blank"},null,8,["href"])):d("",!0),e.value[a.id]&&((s=e.value[a.id])!=null&&s.linked)?(i(),u(p,{key:2,color:"danger",label:"Unlink",onClick:Z=>D(a)},null,8,["onClick"])):d("",!0)])]}),default:m(()=>{var n,o,s;return[c(O,{color:"info",icon:a.icon,label:a.name,class:"mb-2"},null,8,["icon","label"]),h("pre",Q,_(a.description??""),1),e.value[a.id]&&((n=e.value[a.id])!=null&&n.linked)?(i(),f("h1",X,[H(_(a.name)+" is linked to ",1),h("b",null,_((o=e.value[a.id])==null?void 0:o.username),1)])):d("",!0),!e.value[a.id]||!((s=e.value[a.id])!=null&&s.linked)?(i(),f("h1",Y,_(a.name)+" isn't linked! ",1)):d("",!0)]}),_:2},1024)),64))])]),_:1})]),_:1}))}};export{J as default};

View File

@@ -1 +1 @@
import{b as d,r as t,bI as u,L as r,j as v,d as _,e as p,i as n,q as c,bJ as m,bA as g,g as S}from"./index-vA9N45XP.js";const f={class:"bg-gray-950 dark:text-slate-100"},y={class:"animated animatedFadeInUp fadeInUp"},C={__name:"LayoutGuest",setup(b){const e=d(),o=t(e.isLoading),s=t(e.isSaving),i=t(e.errorCode),l=u();return r(()=>e.isLoading,a=>{o.value=a}),r(()=>e.isSaving,a=>{s.value=a}),r(()=>e.errorCode,a=>{i.value=a}),(a,k)=>(_(),v("div",{class:c({dark:S(l).darkMode})},[p(m,{active:o.value||s.value,"is-save":s.value,"error-code":i.value,class:c(["transition-opacity duration-300 ease-out",{"opacity-100":o.value||s.value,"opacity-0":!o.value&&!s.value}])},null,8,["active","is-save","error-code","class"]),n("div",f,[n("div",y,[g(a.$slots,"default")])])],2))}};export{C as _};
import{u as d,r as t,bL as u,M as r,j as v,d as _,e as p,i as n,q as c,bM as m,bD as g,g as S}from"./index-CHivKhhP.js";const f={class:"bg-gray-950 dark:text-slate-100"},y={class:"animated animatedFadeInUp fadeInUp"},C={__name:"LayoutGuest",setup(k){const e=d(),o=t(e.isLoading),s=t(e.isSaving),i=t(e.errorCode),l=u();return r(()=>e.isLoading,a=>{o.value=a}),r(()=>e.isSaving,a=>{s.value=a}),r(()=>e.errorCode,a=>{i.value=a}),(a,b)=>(_(),v("div",{class:c({dark:S(l).darkMode})},[p(m,{active:o.value||s.value,"is-save":s.value,"error-code":i.value,class:c(["transition-opacity duration-300 ease-out",{"opacity-100":o.value||s.value,"opacity-0":!o.value&&!s.value}])},null,8,["active","is-save","error-code","class"]),n("div",f,[n("div",y,[g(a.$slots,"default")])])],2))}};export{C as _};

View File

@@ -0,0 +1 @@
import{b as x,u as b,p as g,c as w,d as c,w as r,i as s,e as o,h as _,q as v,s as V,v as y,g as a,x as $,y as k,l as n}from"./index-CHivKhhP.js";import{_ as P}from"./FormCheckRadio-DdZBsrII.js";import{_ as i}from"./FormField-vtioLqMT.js";import{_ as m}from"./FormControl-BLuW9GWW.js";import{_ as S}from"./LayoutGuest-BkkpHMD9.js";const U={class:"flex md:min-h-screen md:items-center md:justify-center"},R={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},q={class:"flex flex-col items-center text-wrap h-full md:mt-5"},B={class:"flex flex-col gap-2 mt-4"},C={class:"flex flex-col gap-2 my-4"},j={__name:"LoginView",setup(I){const d=x(),u=b(),l=g({login:"",pass:"",remember:!0,spinin:!1}),p=async()=>{if(!l.login||!l.pass){alert("Please fill in all fields.");return}await u.createUserSession(l.login,l.pass,l.remember)&&d.push("/")};return(f,e)=>(c(),w(S,null,{default:r(()=>[s("div",U,[o(_,{class:v(["w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl",l.spinin?"animate-spin":"animate-none"]),"has-table":"","is-auth":""},{default:r(()=>[s("div",R,[s("div",q,[e[5]||(e[5]=s("img",{src:V,class:"rounded-full shadow-lg mb-2"},null,-1)),e[6]||(e[6]=s("h1",{class:"text-xl"},[s("samp",null,"PhaseII")],-1)),s("button",{class:"text-sm text-gray-700 dark:text-white/75",onClick:e[0]||(e[0]=t=>l.spinin=!l.spinin)}," Spinnin' since 2021 "),e[7]||(e[7]=s("hr",{class:"border-r-1 my-1 w-full"},null,-1)),e[8]||(e[8]=s("p",{class:"text-lg relative bottom-0"},"Please log in.",-1))]),e[12]||(e[12]=s("div",{class:"md:border-r"},null,-1)),s("form",{onSubmit:e[4]||(e[4]=y(t=>p(),["prevent"]))},[o(i,{label:"Username"},{default:r(()=>[o(m,{modelValue:l.login,"onUpdate:modelValue":e[1]||(e[1]=t=>l.login=t),icon:a($),name:"login",autocomplete:"username",required:""},null,8,["modelValue","icon"])]),_:1}),o(i,{label:"Password"},{default:r(()=>[o(m,{modelValue:l.pass,"onUpdate:modelValue":e[2]||(e[2]=t=>l.pass=t),icon:a(k),type:"password",name:"password",autocomplete:"current-password",required:""},null,8,["modelValue","icon"])]),_:1}),o(P,{modelValue:l.remember,"onUpdate:modelValue":e[3]||(e[3]=t=>l.remember=t),name:"remember",label:"Remember Me","input-value":!0},null,8,["modelValue"]),s("div",B,[o(n,{label:"Log In",color:"success",type:"submit"})]),e[11]||(e[11]=s("hr",{class:"border-t my-4 w-full"},null,-1)),s("div",C,[e[9]||(e[9]=s("h2",null,"Not Registered?",-1)),o(n,{label:"Register",color:"info",href:"/#/auth/register"}),e[10]||(e[10]=s("h2",null,"Forgot Password?",-1)),o(n,{label:"i forgor",color:"warning",href:"/#/auth/reset"})])],32)])]),_:1},8,["class"])])]),_:1}))}};export{j as default};

View File

@@ -1 +0,0 @@
import{a as x,b,p as g,c as w,d as c,w as r,i as s,e as o,h as _,q as v,s as V,v as y,g as a,x as $,y as k,l as n}from"./index-vA9N45XP.js";import{_ as P}from"./FormCheckRadio-Roj-HW28.js";import{_ as i}from"./FormField-BJ53twuK.js";import{_ as m}from"./FormControl-CbA50xCq.js";import{_ as S}from"./LayoutGuest-CyALIrih.js";const U={class:"flex md:min-h-screen md:items-center md:justify-center"},R={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},q={class:"flex flex-col items-center text-wrap h-full md:mt-5"},B={class:"flex flex-col gap-2 mt-4"},C={class:"flex flex-col gap-2 my-4"},j={__name:"LoginView",setup(I){const d=x(),u=b(),l=g({login:"",pass:"",remember:!0,spinin:!1}),p=async()=>{if(!l.login||!l.pass){alert("Please fill in all fields.");return}await u.createUserSession(l.login,l.pass,l.remember)&&d.push("/")};return(f,e)=>(c(),w(S,null,{default:r(()=>[s("div",U,[o(_,{class:v(["w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl",l.spinin?"animate-spin":"animate-none"]),"has-table":"","is-auth":""},{default:r(()=>[s("div",R,[s("div",q,[e[5]||(e[5]=s("img",{src:V,class:"rounded-full shadow-lg mb-2"},null,-1)),e[6]||(e[6]=s("h1",{class:"text-xl"},[s("samp",null,"PhaseII")],-1)),s("button",{class:"text-sm text-gray-700 dark:text-white/75",onClick:e[0]||(e[0]=t=>l.spinin=!l.spinin)}," Spinnin' since 2021 "),e[7]||(e[7]=s("hr",{class:"border-r-1 my-1 w-full"},null,-1)),e[8]||(e[8]=s("p",{class:"text-lg relative bottom-0"},"Please log in.",-1))]),e[12]||(e[12]=s("div",{class:"md:border-r"},null,-1)),s("form",{onSubmit:e[4]||(e[4]=y(t=>p(),["prevent"]))},[o(i,{label:"Username"},{default:r(()=>[o(m,{modelValue:l.login,"onUpdate:modelValue":e[1]||(e[1]=t=>l.login=t),icon:a($),name:"login",autocomplete:"username",required:""},null,8,["modelValue","icon"])]),_:1}),o(i,{label:"Password"},{default:r(()=>[o(m,{modelValue:l.pass,"onUpdate:modelValue":e[2]||(e[2]=t=>l.pass=t),icon:a(k),type:"password",name:"password",autocomplete:"current-password",required:""},null,8,["modelValue","icon"])]),_:1}),o(P,{modelValue:l.remember,"onUpdate:modelValue":e[3]||(e[3]=t=>l.remember=t),name:"remember",label:"Remember Me","input-value":!0},null,8,["modelValue"]),s("div",B,[o(n,{label:"Log In",color:"success",type:"submit"})]),e[11]||(e[11]=s("hr",{class:"border-t my-4 w-full"},null,-1)),s("div",C,[e[9]||(e[9]=s("h2",null,"Not Registered?",-1)),o(n,{label:"Register",color:"info",href:"/#/auth/register"}),e[10]||(e[10]=s("h2",null,"Forgot Password?",-1)),o(n,{label:"i forgor",color:"warning",href:"/#/auth/reset"})])],32)])]),_:1},8,["class"])])]),_:1}))}};export{j as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{r as v,p as h,o as M,az as b,c as g,d as x,w as n,e as a,_ as y,h as d,i as l,N as c,g as u,aA as T,aB as V,v as k,l as P,n as $}from"./index-vA9N45XP.js";import{_ as D}from"./GeneralTable-7ScsFktP.js";import{_ as f}from"./FormField-BJ53twuK.js";import{_ as A}from"./FormControl-CbA50xCq.js";import{d as C,e as B}from"./admin-DLWnlEF3.js";const N={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},S={class:"w-full"},j={__name:"MaintView",setup(W){const r=v([]),p=[{text:"Start Timestamp",value:"timestamp",width:120},{text:"End Timestamp",value:"data.endTimestamp",width:120},{text:"Reason",value:"data.reason",width:120}],_={endTimestamp:Date.now()},o=h({..._});M(async()=>{m()});async function m(){try{const s=await C();var i=[];for(var e of s){if(e.timestamp){const t=new Date(e.timestamp*1e3);e.timestamp=t.toLocaleString()}if(e.data.endTimestamp){const t=new Date(e.data.endTimestamp*1e3);e.data.endTimestamp=t.toLocaleString()}i.push(e)}r.value=i}catch(s){console.error("Failed to fetch maint data:",s)}}async function w(){if(window.confirm("Are you really?"))try{const e=await B(o);r.value=e,m()}catch(e){console.error("Failed to post maint:",e)}}return(i,e)=>{const s=b("VueDatePicker");return x(),g($,null,{default:n(()=>[a(y,null,{default:n(()=>[a(d,{class:"mb-6 p-1"},{default:n(()=>e[4]||(e[4]=[l("h1",{class:"text-3xl"},"Network Maintenance",-1)])),_:1}),a(c,{icon:u(T),title:"Recent Maintenance Periods",color:"text-blue-400",main:""},null,8,["icon"]),a(d,{"has-table":"",class:"mb-6"},{default:n(()=>[l("div",N,[l("div",S,[a(D,{headers:p,items:r.value},null,8,["items"])])])]),_:1}),a(c,{icon:u(V),title:"Create Maintenance Period",color:"text-yellow-600",main:""},null,8,["icon"]),a(d,{"is-form":"",class:"row-span-1",onSubmit:e[3]||(e[3]=k(t=>w(),["prevent"]))},{default:n(()=>[a(f,{label:"Reason",help:"Why are we going under maintenance?"},{default:n(()=>[a(A,{modelValue:o.reason,"onUpdate:modelValue":e[0]||(e[0]=t=>o.reason=t),required:""},null,8,["modelValue"])]),_:1}),a(f,{label:"Period End",help:"When the network will release the maintenance window."},{default:n(()=>[a(s,{modelValue:o.endTimestamp,"onUpdate:modelValue":[e[1]||(e[1]=t=>o.endTimestamp=t),e[2]||(e[2]=t=>o.endTimestamp=new Date(t).getTime())],dark:""},null,8,["modelValue"])]),_:1}),l("div",null,[a(P,{type:"submit",color:"warning",label:"Enter Maintenance",small:!1})])]),_:1})]),_:1})]),_:1})}}};export{j as default};
import{r as v,p as h,o as M,aC as b,c as g,d as x,w as n,e as a,_ as y,h as d,i as l,P as c,g as u,aD as T,aE as V,v as P,l as k,n as $}from"./index-CHivKhhP.js";import{_ as D}from"./GeneralTable-Dm8yzA2j.js";import{_ as f}from"./FormField-vtioLqMT.js";import{_ as C}from"./FormControl-BLuW9GWW.js";import{d as A,e as E}from"./admin-YL_-tKB5.js";const S={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},W={class:"w-full"},j={__name:"MaintView",setup(B){const r=v([]),p=[{text:"Start Timestamp",value:"timestamp",width:120},{text:"End Timestamp",value:"data.endTimestamp",width:120},{text:"Reason",value:"data.reason",width:120}],_={endTimestamp:Date.now()},o=h({..._});M(async()=>{m()});async function m(){try{const s=await A();var i=[];for(var e of s){if(e.timestamp){const t=new Date(e.timestamp*1e3);e.timestamp=t.toLocaleString()}if(e.data.endTimestamp){const t=new Date(e.data.endTimestamp*1e3);e.data.endTimestamp=t.toLocaleString()}i.push(e)}r.value=i}catch(s){console.error("Failed to fetch maint data:",s)}}async function w(){if(window.confirm("Are you really?"))try{const e=await E(o);r.value=e,m()}catch(e){console.error("Failed to post maint:",e)}}return(i,e)=>{const s=b("VueDatePicker");return x(),g($,null,{default:n(()=>[a(y,null,{default:n(()=>[a(d,{class:"mb-6 p-1"},{default:n(()=>e[4]||(e[4]=[l("h1",{class:"text-3xl"},"Network Maintenance",-1)])),_:1}),a(c,{icon:u(T),title:"Recent Maintenance Periods",color:"text-blue-400",main:""},null,8,["icon"]),a(d,{"has-table":"",class:"mb-6"},{default:n(()=>[l("div",S,[l("div",W,[a(D,{headers:p,items:r.value},null,8,["items"])])])]),_:1}),a(c,{icon:u(V),title:"Create Maintenance Period",color:"text-yellow-600",main:""},null,8,["icon"]),a(d,{"is-form":"",class:"row-span-1",onSubmit:e[3]||(e[3]=P(t=>w(),["prevent"]))},{default:n(()=>[a(f,{label:"Reason",help:"Why are we going under maintenance?"},{default:n(()=>[a(C,{modelValue:o.reason,"onUpdate:modelValue":e[0]||(e[0]=t=>o.reason=t),required:""},null,8,["modelValue"])]),_:1}),a(f,{label:"Period End",help:"When the network will release the maintenance window."},{default:n(()=>[a(s,{modelValue:o.endTimestamp,"onUpdate:modelValue":[e[1]||(e[1]=t=>o.endTimestamp=t),e[2]||(e[2]=t=>o.endTimestamp=new Date(t).getTime())],dark:""},null,8,["modelValue"])]),_:1}),l("div",null,[a(k,{type:"submit",color:"warning",label:"Enter Maintenance",small:!1})])]),_:1})]),_:1})]),_:1})}}};export{j as default};

View File

@@ -0,0 +1 @@
import{a as F,b as I,a7 as R,r as B,p as D,o as G,al as $,c as p,d as s,w as u,f as v,g as l,_ as L,e as f,j as c,P,bU as T,i,F as g,k,h as U,t as m,l as j,I as A,n as C}from"./index-CHivKhhP.js";import{_ as E}from"./FormControl-BLuW9GWW.js";import{_ as M}from"./GameHeader-CbS6z4E_.js";import{b as W}from"./music-BegIU2Dv.js";import"./sources-0lyug9Pk.js";const q={key:0,class:"md:w-1/3 md:text-right"},z={class:"md:flex w-full md:place-content-between"},H={class:"mb-4 md:mb-0 space-y-1"},J={class:"text-lg md:text-xl"},K={class:"text-md md:text-lg"},O={class:"grid md:flex gap-2 md:justify-end md:place-content-end"},Q={key:0,class:"bg-gray-900 dark:bg-gray-700 p-4 rounded-lg"},X={class:"text-md md:text-lg"},ae={__name:"NetworkRecords",setup(Y){const w=F(),S=I();var _=w.params.game;const t=R(_);var d=B([]);const r=D({currentVersion:null});t||S.push({name:"ErrorPage",params:{catchAll:"404"}}),t.versions||(r.currentVersion=1),G(async()=>{var a;try{const e=await W(_);d.value=e,t.versions&&!r.currentVersion&&(r.currentVersion=((a=h.value.at(-1))==null?void 0:a.id)??null)}catch(e){console.error("Failed to fetch score data:",e)}});const h=$(()=>{if(!t.versions)return[];const a=new Set(d.value.map(e=>e.version));return t.versions.filter(e=>a.has(e.id))}),N=$(()=>r.currentVersion?d.value.filter(a=>a.version===r.currentVersion):d.value);return(a,e)=>(s(),p(C,null,{default:u(()=>[l(d)?(s(),p(L,{key:0},{default:u(()=>[f(M,{game:l(t)},null,8,["game"]),f(P,{icon:l(T),title:"Top Records",main:""},{default:u(()=>[l(t).versions?(s(),c("div",q,[e[1]||(e[1]=i("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),f(E,{modelValue:r.currentVersion,"onUpdate:modelValue":e[0]||(e[0]=o=>r.currentVersion=o),options:h.value.slice().reverse()},null,8,["modelValue","options"])])):v("",!0)]),_:1},8,["icon"]),(s(!0),c(g,null,k(N.value,o=>(s(),p(U,{key:o.id,class:"mb-6"},{default:u(()=>[i("div",z,[i("div",H,[i("h1",J,m(o.name),1),i("h2",K,m(o.artist),1),f(j,{label:"View Song",color:"info",href:`/#/games/${l(_)}/song/${o.id}`},null,8,["href"])]),i("div",O,[(s(!0),c(g,null,k(o.charts,n=>{var x,V,b,y;return s(),c(g,{key:n.db_id},[((x=n.data)==null?void 0:x.difficulty)!=0?(s(),c("div",Q,[i("h2",X,m(l(t).chartTable[n.chart])+" - "+m((V=n.data)==null?void 0:V.difficulty),1),A(" "+m(n.record?`${(b=n.record)==null?void 0:b.username} - ${(y=n.record.points)==null?void 0:y.toLocaleString()}`:"Unclaimed"),1)])):v("",!0)],64)}),128))])])]),_:2},1024))),128))]),_:1})):v("",!0)]),_:1}))}};export{ae as default};

View File

@@ -1 +0,0 @@
import{u as R,a as F,a4 as B,r as I,p as D,o as G,ai as $,c as p,d as s,w as u,f as v,g as l,_ as L,e as f,j as c,N as T,bR as j,i,F as g,k,h as A,t as m,l as C,H as E,n as P}from"./index-vA9N45XP.js";import{_ as U}from"./FormControl-CbA50xCq.js";import{_ as H}from"./GameHeader-DvtYwLzr.js";import{b as M}from"./music-DCIRUh38.js";import"./sources-CWr6W3sX.js";const W={key:0,class:"md:w-1/3 md:text-right"},q={class:"md:flex w-full md:place-content-between"},z={class:"mb-4 md:mb-0 space-y-1"},J={class:"text-lg md:text-xl"},K={class:"text-md md:text-lg"},O={class:"grid md:flex gap-2 md:justify-end md:place-content-end"},Q={key:0,class:"bg-gray-900 dark:bg-gray-700 p-4 rounded-lg"},X={class:"text-md md:text-lg"},ae={__name:"NetworkRecords",setup(Y){const w=R(),N=F();var _=w.params.game;const t=B(_);var d=I([]);const r=D({currentVersion:null});t||N.push({name:"ErrorPage",params:{catchAll:"404"}}),t.versions||(r.currentVersion=1),G(async()=>{var a;try{const e=await M(_);d.value=e,t.versions&&!r.currentVersion&&(r.currentVersion=((a=h.value.at(-1))==null?void 0:a.id)??null)}catch(e){console.error("Failed to fetch score data:",e)}});const h=$(()=>{if(!t.versions)return[];const a=new Set(d.value.map(e=>e.version));return t.versions.filter(e=>a.has(e.id))}),S=$(()=>r.currentVersion?d.value.filter(a=>a.version===r.currentVersion):d.value);return(a,e)=>(s(),p(P,null,{default:u(()=>[l(d)?(s(),p(L,{key:0},{default:u(()=>[f(H,{game:l(t)},null,8,["game"]),f(T,{icon:l(j),title:"Top Records",main:""},{default:u(()=>[l(t).versions?(s(),c("div",W,[e[1]||(e[1]=i("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),f(U,{modelValue:r.currentVersion,"onUpdate:modelValue":e[0]||(e[0]=o=>r.currentVersion=o),options:h.value.slice().reverse()},null,8,["modelValue","options"])])):v("",!0)]),_:1},8,["icon"]),(s(!0),c(g,null,k(S.value,o=>(s(),p(A,{key:o.id,class:"mb-6"},{default:u(()=>[i("div",q,[i("div",z,[i("h1",J,m(o.name),1),i("h2",K,m(o.artist),1),f(C,{label:"View Song",color:"info",href:`/#/games/${l(_)}/song/${o.id}`},null,8,["href"])]),i("div",O,[(s(!0),c(g,null,k(o.charts,n=>{var x,V,y,b;return s(),c(g,{key:n.db_id},[((x=n.data)==null?void 0:x.difficulty)!=0?(s(),c("div",Q,[i("h2",X,m(l(t).chartTable[n.chart])+" - "+m((V=n.data)==null?void 0:V.difficulty),1),E(" "+m(n.record?`${(y=n.record)==null?void 0:y.username} - ${(b=n.record.points)==null?void 0:b.toLocaleString()}`:"Unclaimed"),1)])):v("",!0)],64)}),128))])])]),_:2},1024))),128))]),_:1})):v("",!0)]),_:1}))}};export{ae as default};

View File

@@ -1 +1 @@
import{u as O,a as Q,b as U,a4 as W,r as Y,o as Z,c as aa,d as ea,w as l,e as r,_ as sa,g as n,N as ta,ap as ra,h as na,n as da}from"./index-vA9N45XP.js";import{_ as la}from"./GeneralTable-7ScsFktP.js";import{_ as oa}from"./GameHeader-DvtYwLzr.js";import"./sources-CWr6W3sX.js";const pa={__name:"NetworkScores",setup(ca){const X=O(),o=Q(),j=U();var d=null,e=null;d=X.params.game,e=W(d),e||o.push({name:"ErrorPage",params:{catchAll:"404"}});const c=Y([]),u=[{text:"Player",value:"username",width:120},{text:"New PB",value:"newRecord",width:100},{text:"Timestamp",value:"timestamp",width:140},{text:"Song",value:"song.name",width:180},{text:"Artist",value:"song.artist",width:150},{text:"Chart",value:"song.chart",width:100},{text:"Grade",value:"data.rank",width:80},{text:"Score",value:"points",width:120}];if(e.scoreHeaders)for(var q of e.scoreHeaders)u.push(q);Z(async()=>{try{const s=await j.getAttemptData(d);c.value=z(s)}catch(s){console.error("Failed to fetch score data:",s)}});function z(s){var f,_,i,p,h,g,k,w,b,v,T,x,$,S,R,C,m,A,N,B,D,E,I,F,y,G,L,P,H,M,V;var t=[];for(var a of s){if(a.newRecord?a.newRecord="✅":a.newRecord="",a.timestamp){const K=new Date(a.timestamp*1e3);a.timestamp=K.toLocaleString()}a.points!=null&&(a.points=a.points.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((_=(f=a.data)==null?void 0:f.stats)==null?void 0:_.score)!=null&&(a.exscore=a.points.toString(),a.points=(p=(i=a.data)==null?void 0:i.stats)==null?void 0:p.score.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((h=a.song)==null?void 0:h.chart)!=null&&e.chartTable&&(a.song.chart=e.chartTable[(g=a.song)==null?void 0:g.chart]),((k=a.data)==null?void 0:k.halo)!=null&&e.haloTable&&(a.data.halo=e.haloTable[(w=a.data)==null?void 0:w.halo]),((b=a.data)==null?void 0:b.medal)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(v=a.data)==null?void 0:v.medal]),((T=a.data)==null?void 0:T.clear_status)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(x=a.data)==null?void 0:x.clear_status]),(($=a.data)==null?void 0:$.rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(S=a.data)==null?void 0:S.rank]),((R=a.data)==null?void 0:R.result_rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(C=a.data)==null?void 0:C.result_rank]),((m=a.data)==null?void 0:m.grade)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(A=a.data)==null?void 0:A.grade]),((N=a.data)==null?void 0:N.skill_perc)>0?a.data.skill_perc=`${((B=a.data)==null?void 0:B.skill_perc)/100}%`:a.data.skill_perc="0%",(D=a.data)!=null&&D.skill_points&&(a.data.skill_points=((E=a.data)==null?void 0:E.skill_points)/10),((I=a.data)==null?void 0:I.perc)>0?a.data.perc=`${((F=a.data)==null?void 0:F.perc)/100}%`:a.data.perc="0%",(y=a.data)!=null&&y.new_skill&&(a.data.new_skill=((G=a.data)==null?void 0:G.new_skill)/10),(L=a.data)!=null&&L.music_rate&&(a.data.music_rate=((P=a.data)==null?void 0:P.music_rate)/10),(H=a.data)!=null&&H.excellent?a.medal="EX FC":(M=a.data)!=null&&M.fullcombo?a.medal="FC":(V=a.data)!=null&&V.clear?a.medal="CLEARED":a.medal="FAILED",t.push(a)}return t}const J=s=>{const t=s.song.id;o.push(`/games/${d}/song/${t}`)};return(s,t)=>(ea(),aa(da,null,{default:l(()=>[r(sa,null,{default:l(()=>[r(oa,{game:n(e)},null,8,["game"]),r(ta,{icon:n(ra),title:`All ${n(e).shortName?n(e).shortName:n(e).name} Scores`,main:""},null,8,["icon","title"]),r(na,{"has-table":""},{default:l(()=>[r(la,{headers:u,items:c.value,onRowClicked:J},null,8,["items"])]),_:1})]),_:1})]),_:1}))}};export{pa as default};
import{a as O,b as Q,u as U,a7 as W,r as Y,o as Z,c as aa,d as ea,w as l,e as r,_ as sa,g as n,P as ta,as as ra,h as na,n as da}from"./index-CHivKhhP.js";import{_ as la}from"./GeneralTable-Dm8yzA2j.js";import{_ as oa}from"./GameHeader-CbS6z4E_.js";import"./sources-0lyug9Pk.js";const pa={__name:"NetworkScores",setup(ca){const X=O(),o=Q(),j=U();var d=null,e=null;d=X.params.game,e=W(d),e||o.push({name:"ErrorPage",params:{catchAll:"404"}});const c=Y([]),u=[{text:"Player",value:"username",width:120},{text:"New PB",value:"newRecord",width:100},{text:"Timestamp",value:"timestamp",width:140},{text:"Song",value:"song.name",width:180},{text:"Artist",value:"song.artist",width:150},{text:"Chart",value:"song.chart",width:100},{text:"Grade",value:"data.rank",width:80},{text:"Score",value:"points",width:120}];if(e.scoreHeaders)for(var q of e.scoreHeaders)u.push(q);Z(async()=>{try{const s=await j.getAttemptData(d);c.value=z(s)}catch(s){console.error("Failed to fetch score data:",s)}});function z(s){var f,_,i,p,h,g,k,w,b,v,T,x,$,S,R,C,m,A,B,D,E,I,N,F,P,y,G,L,H,M,V;var t=[];for(var a of s){if(a.newRecord?a.newRecord="✅":a.newRecord="",a.timestamp){const K=new Date(a.timestamp*1e3);a.timestamp=K.toLocaleString()}a.points!=null&&(a.points=a.points.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((_=(f=a.data)==null?void 0:f.stats)==null?void 0:_.score)!=null&&(a.exscore=a.points.toString(),a.points=(p=(i=a.data)==null?void 0:i.stats)==null?void 0:p.score.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((h=a.song)==null?void 0:h.chart)!=null&&e.chartTable&&(a.song.chart=e.chartTable[(g=a.song)==null?void 0:g.chart]),((k=a.data)==null?void 0:k.halo)!=null&&e.haloTable&&(a.data.halo=e.haloTable[(w=a.data)==null?void 0:w.halo]),((b=a.data)==null?void 0:b.medal)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(v=a.data)==null?void 0:v.medal]),((T=a.data)==null?void 0:T.clear_status)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(x=a.data)==null?void 0:x.clear_status]),(($=a.data)==null?void 0:$.rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(S=a.data)==null?void 0:S.rank]),((R=a.data)==null?void 0:R.result_rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(C=a.data)==null?void 0:C.result_rank]),((m=a.data)==null?void 0:m.grade)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(A=a.data)==null?void 0:A.grade]),((B=a.data)==null?void 0:B.skill_perc)>0?a.data.skill_perc=`${((D=a.data)==null?void 0:D.skill_perc)/100}%`:a.data.skill_perc="0%",(E=a.data)!=null&&E.skill_points&&(a.data.skill_points=((I=a.data)==null?void 0:I.skill_points)/10),((N=a.data)==null?void 0:N.perc)>0?a.data.perc=`${((F=a.data)==null?void 0:F.perc)/100}%`:a.data.perc="0%",(P=a.data)!=null&&P.new_skill&&(a.data.new_skill=((y=a.data)==null?void 0:y.new_skill)/10),(G=a.data)!=null&&G.music_rate&&(a.data.music_rate=((L=a.data)==null?void 0:L.music_rate)/10),(H=a.data)!=null&&H.excellent?a.medal="EX FC":(M=a.data)!=null&&M.fullcombo?a.medal="FC":(V=a.data)!=null&&V.clear?a.medal="CLEARED":a.medal="FAILED",t.push(a)}return t}const J=s=>{const t=s.song.id;o.push(`/games/${d}/song/${t}`)};return(s,t)=>(ea(),aa(da,null,{default:l(()=>[r(sa,null,{default:l(()=>[r(oa,{game:n(e)},null,8,["game"]),r(ta,{icon:n(ra),title:`All ${n(e).shortName?n(e).shortName:n(e).name} Scores`,main:""},null,8,["icon","title"]),r(na,{"has-table":""},{default:l(()=>[r(la,{headers:u,items:c.value,onRowClicked:J},null,8,["items"])]),_:1})]),_:1})]),_:1}))}};export{pa as default};

View File

@@ -1 +1 @@
import{a as N,r as y,o as v,p as h,c as V,d as $,w as o,e as a,_ as k,h as r,i as n,N as f,g as p,aJ as C,v as U,l as A,aK as B,n as R}from"./index-vA9N45XP.js";import{_ as I}from"./GeneralTable-7ScsFktP.js";import{_ as d}from"./FormField-BJ53twuK.js";import{_ as u}from"./FormControl-CbA50xCq.js";import{j as L,k as j}from"./admin-DLWnlEF3.js";const q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},D={class:"w-full"},J={__name:"NewsView",setup(M){const w=N(),i=y([]),_=[{text:"Title",value:"title",width:150,sortable:!0},{text:"Body",value:"body",width:300},{text:"Image URL",value:"data.img",width:300}];v(async()=>{m()});async function m(){try{const t=await L();var l=[];for(var e of t){if(e.timestamp){const x=new Date(e.timestamp*1e3);e.timestamp=x.toLocaleString()}l.push(e)}i.value=l}catch(t){console.error("Failed to fetch news data:",t)}}const b=l=>{const e=l.id;w.push(`/news/${e}`)},c={title:null,body:null,data:{img:null}},s=h({...c});async function g(){try{const l=await j(s);i.value=l}catch(l){console.error("Failed to post news:",l)}Object.assign(s,c),m()}return(l,e)=>($(),V(R,null,{default:o(()=>[a(k,null,{default:o(()=>[a(r,{class:"mb-6 p-1"},{default:o(()=>e[4]||(e[4]=[n("h1",{class:"text-3xl"},"News Management",-1),n("p",{class:"text-sm text-gray-400"},"Enter an post to read it",-1)])),_:1}),a(f,{icon:p(C),title:"Create News",color:"text-emerald-600",main:""},null,8,["icon"]),a(r,{"is-form":"",class:"row-span-1 mb-6",onSubmit:e[3]||(e[3]=U(t=>g(),["prevent"]))},{default:o(()=>[a(d,{label:"Title",help:"News headline."},{default:o(()=>[a(u,{modelValue:s.title,"onUpdate:modelValue":e[0]||(e[0]=t=>s.title=t),required:""},null,8,["modelValue"])]),_:1}),a(d,{label:"Body",help:"News body."},{default:o(()=>[a(u,{modelValue:s.body,"onUpdate:modelValue":e[1]||(e[1]=t=>s.body=t),required:"",type:"textarea"},null,8,["modelValue"])]),_:1}),a(d,{label:"Image URL",help:"News image URL."},{default:o(()=>[a(u,{modelValue:s.data.img,"onUpdate:modelValue":e[2]||(e[2]=t=>s.data.img=t),required:""},null,8,["modelValue"])]),_:1}),n("div",null,[a(A,{type:"submit",color:"success",label:"Create",small:!1})])]),_:1}),a(f,{icon:p(B),title:"All News",color:"text-blue-400",main:""},null,8,["icon"]),a(r,{"has-table":"",class:"mb-6"},{default:o(()=>[n("div",q,[n("div",D,[a(I,{headers:_,items:i.value,onRowClicked:b},null,8,["items"]),e[5]||(e[5]=n("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to open arcade ",-1))])])]),_:1})]),_:1})]),_:1}))}};export{J as default};
import{b as N,r as y,o as v,p as h,c as V,d as $,w as o,e as a,_ as k,h as r,i as n,P as f,g as p,aM as C,v as U,l as A,aN as B,n as R}from"./index-CHivKhhP.js";import{_ as I}from"./GeneralTable-Dm8yzA2j.js";import{_ as d}from"./FormField-vtioLqMT.js";import{_ as u}from"./FormControl-BLuW9GWW.js";import{j as L,k as M}from"./admin-YL_-tKB5.js";const P={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},j={class:"w-full"},O={__name:"NewsView",setup(q){const w=N(),i=y([]),_=[{text:"Title",value:"title",width:150,sortable:!0},{text:"Body",value:"body",width:300},{text:"Image URL",value:"data.img",width:300}];v(async()=>{m()});async function m(){try{const t=await L();var l=[];for(var e of t){if(e.timestamp){const x=new Date(e.timestamp*1e3);e.timestamp=x.toLocaleString()}l.push(e)}i.value=l}catch(t){console.error("Failed to fetch news data:",t)}}const b=l=>{const e=l.id;w.push(`/news/${e}`)},c={title:null,body:null,data:{img:null}},s=h({...c});async function g(){try{const l=await M(s);i.value=l}catch(l){console.error("Failed to post news:",l)}Object.assign(s,c),m()}return(l,e)=>($(),V(R,null,{default:o(()=>[a(k,null,{default:o(()=>[a(r,{class:"mb-6 p-1"},{default:o(()=>e[4]||(e[4]=[n("h1",{class:"text-3xl"},"News Management",-1),n("p",{class:"text-sm text-gray-400"},"Enter an post to read it",-1)])),_:1}),a(f,{icon:p(C),title:"Create News",color:"text-emerald-600",main:""},null,8,["icon"]),a(r,{"is-form":"",class:"row-span-1 mb-6",onSubmit:e[3]||(e[3]=U(t=>g(),["prevent"]))},{default:o(()=>[a(d,{label:"Title",help:"News headline."},{default:o(()=>[a(u,{modelValue:s.title,"onUpdate:modelValue":e[0]||(e[0]=t=>s.title=t),required:""},null,8,["modelValue"])]),_:1}),a(d,{label:"Body",help:"News body."},{default:o(()=>[a(u,{modelValue:s.body,"onUpdate:modelValue":e[1]||(e[1]=t=>s.body=t),required:"",type:"textarea"},null,8,["modelValue"])]),_:1}),a(d,{label:"Image URL",help:"News image URL."},{default:o(()=>[a(u,{modelValue:s.data.img,"onUpdate:modelValue":e[2]||(e[2]=t=>s.data.img=t),required:""},null,8,["modelValue"])]),_:1}),n("div",null,[a(A,{type:"submit",color:"success",label:"Create",small:!1})])]),_:1}),a(f,{icon:p(B),title:"All News",color:"text-blue-400",main:""},null,8,["icon"]),a(r,{"has-table":"",class:"mb-6"},{default:o(()=>[n("div",P,[n("div",j,[a(I,{headers:_,items:i.value,onRowClicked:b},null,8,["items"]),e[5]||(e[5]=n("h1",{class:"mx-4 mt-1 mb-2 text-md lg:text-lg"}," Click row to open arcade ",-1))])])]),_:1})]),_:1})]),_:1}))}};export{O as default};

View File

@@ -1 +1 @@
import{p as s,c as p,d as r,w as n,e,_ as c,i,N as m,g as u,aL as f,ak as _,aM as h,h as g,l as V,n as b}from"./index-vA9N45XP.js";import{_ as o}from"./FormField-BJ53twuK.js";import{_ as v}from"./FormCheckRadio-Roj-HW28.js";import{_ as d}from"./FormControl-CbA50xCq.js";const D={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 mb-6"},A={__name:"OTAView",setup(U){const a=s({...{name:"",game:"",mCode:"",fromDatecode:"",toDatecode:"",fileType:"",betaOnly:!1}});return(C,t)=>(r(),p(b,null,{default:n(()=>[e(c,null,{default:n(()=>[e(m,{icon:u(f),title:"OTA Update Administration",color:"text-red-600",main:""},null,8,["icon"]),i("div",D,[e(_,{number:1,label:"Active Updates"})]),e(m,{icon:u(h),title:"Add an Update",main:""},null,8,["icon"]),e(g,{"is-form":"",class:"row-span-1"},{default:n(()=>[e(o,{label:"Update Name",help:"This is only for documentation and does not change the update filepath."},{default:n(()=>[e(d,{modelValue:a.name,"onUpdate:modelValue":t[0]||(t[0]=l=>a.name=l),"input-value":a.name,name:"updateName",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"MCODE",help:"The MCODE of the destination image. Leave blank for any MCODE (not recommended!). ex: JAB"},{default:n(()=>[e(d,{modelValue:a.mCode,"onUpdate:modelValue":t[1]||(t[1]=l=>a.mCode=l),"input-value":a.mCode,name:"updateMCode",maxlength:"3",minlength:"3"},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Initial Datecode",help:"The starting datecode, what will download this update. ex: 2024122600"},{default:n(()=>[e(d,{modelValue:a.fromDatecode,"onUpdate:modelValue":t[2]||(t[2]=l=>a.fromDatecode=l),"input-value":a.fromDatecode,name:"fromDatecode",maxlength:"10",minlength:"10",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Destination Datecode",help:"The resulting datecode, what this update will contain. ex: 2024122700"},{default:n(()=>[e(d,{modelValue:a.toDatecode,"onUpdate:modelValue":t[3]||(t[3]=l=>a.toDatecode=l),"input-value":a.toDatecode,name:"toDatecode",maxlength:"10",minlength:"10",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Beta Restriction",help:"Limit this update to machines registered to a beta testing arcade."},{default:n(()=>[e(v,{modelValue:a.betaOnly,"onUpdate:modelValue":t[4]||(t[4]=l=>a.betaOnly=l),"input-value":a.betaOnly,name:"betaOnly",type:"switch"},null,8,["modelValue","input-value"])]),_:1}),i("div",null,[e(V,{type:"submit",color:"success",label:"Add Update",small:!1,onClick:l=>!1})])]),_:1})]),_:1})]),_:1}))}};export{A as default};
import{p as s,c as p,d as r,w as n,e,_ as c,i,P as m,g as u,aO as f,an as _,aP as h,h as g,l as V,n as b}from"./index-CHivKhhP.js";import{_ as o}from"./FormField-vtioLqMT.js";import{_ as v}from"./FormCheckRadio-DdZBsrII.js";import{_ as d}from"./FormControl-BLuW9GWW.js";const D={class:"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 mb-6"},A={__name:"OTAView",setup(U){const a=s({...{name:"",game:"",mCode:"",fromDatecode:"",toDatecode:"",fileType:"",betaOnly:!1}});return(w,t)=>(r(),p(b,null,{default:n(()=>[e(c,null,{default:n(()=>[e(m,{icon:u(f),title:"OTA Update Administration",color:"text-red-600",main:""},null,8,["icon"]),i("div",D,[e(_,{number:1,label:"Active Updates"})]),e(m,{icon:u(h),title:"Add an Update",main:""},null,8,["icon"]),e(g,{"is-form":"",class:"row-span-1"},{default:n(()=>[e(o,{label:"Update Name",help:"This is only for documentation and does not change the update filepath."},{default:n(()=>[e(d,{modelValue:a.name,"onUpdate:modelValue":t[0]||(t[0]=l=>a.name=l),"input-value":a.name,name:"updateName",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"MCODE",help:"The MCODE of the destination image. Leave blank for any MCODE (not recommended!). ex: JAB"},{default:n(()=>[e(d,{modelValue:a.mCode,"onUpdate:modelValue":t[1]||(t[1]=l=>a.mCode=l),"input-value":a.mCode,name:"updateMCode",maxlength:"3",minlength:"3"},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Initial Datecode",help:"The starting datecode, what will download this update. ex: 2024122600"},{default:n(()=>[e(d,{modelValue:a.fromDatecode,"onUpdate:modelValue":t[2]||(t[2]=l=>a.fromDatecode=l),"input-value":a.fromDatecode,name:"fromDatecode",maxlength:"10",minlength:"10",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Destination Datecode",help:"The resulting datecode, what this update will contain. ex: 2024122700"},{default:n(()=>[e(d,{modelValue:a.toDatecode,"onUpdate:modelValue":t[3]||(t[3]=l=>a.toDatecode=l),"input-value":a.toDatecode,name:"toDatecode",maxlength:"10",minlength:"10",required:""},null,8,["modelValue","input-value"])]),_:1}),e(o,{label:"Beta Restriction",help:"Limit this update to machines registered to a beta testing arcade."},{default:n(()=>[e(v,{modelValue:a.betaOnly,"onUpdate:modelValue":t[4]||(t[4]=l=>a.betaOnly=l),"input-value":a.betaOnly,name:"betaOnly",type:"switch"},null,8,["modelValue","input-value"])]),_:1}),i("div",null,[e(V,{type:"submit",color:"success",label:"Add Update",small:!1,onClick:l=>!1})])]),_:1})]),_:1})]),_:1}))}};export{A as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{r as i,u as y,o as P,c as I,d as u,w as n,e,_ as S,j as B,f as $,F as k,N as m,g as f,aW as E,h as _,i as r,aX as L,n as N}from"./index-vA9N45XP.js";import{_ as h}from"./GeneralTable-7ScsFktP.js";import{_ as C}from"./ArcadeCard-DnKlr5sp.js";import{A as F,e as R}from"./arcade-CXvzpsdX.js";const T={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},V={class:"w-full"},j={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},D={class:"w-full"},W={__name:"PaseliView",setup(H){const t=i({}),s=i({}),c=i(!0),v=y(),d=parseInt(v.params.id);async function p(){try{t.value=null;const a=await F(d);t.value=a}catch(a){console.error("Failed to fetch arcade data:",a)}}async function w(){try{s.value=null;const a=await R(d);s.value=a,c.value=!1}catch(a){console.error("Failed to fetch arcade PASELI:",a)}}P(()=>{c.value=!0,p(),w()});const g=[{text:"Timestamp",value:"timestamp",width:200},{text:"Amount",value:"data.delta",width:200},{text:"Remaining Balance",value:"data.balance",width:200},{text:"Reason",value:"data.reason",width:200}],b=[{text:"Player",value:"username"},{text:"Balance",value:"balance"}];function x(a){var o=[];for(var l of JSON.parse(JSON.stringify(a))){if(l.timestamp){const A=new Date(l.timestamp*1e3);l.timestamp=A.toLocaleString()}o.push(l)}return o}return(a,o)=>(u(),I(N,null,{default:n(()=>[e(S,null,{default:n(()=>[!c.value&&t.value?(u(),B(k,{key:0},[e(C,{class:"mb-6",arcade:t.value,"use-small":!0},null,8,["arcade"]),e(m,{icon:f(E),title:"Player PASELI Balances",main:""},null,8,["icon"]),e(_,{"has-table":""},{default:n(()=>[r("div",T,[r("div",V,[e(h,{headers:b,items:s.value.balances},null,8,["items"])])])]),_:1}),e(m,{icon:f(L),title:"PASELI Transaction History",main:"",class:"pt-6"},null,8,["icon"]),e(_,{"has-table":""},{default:n(()=>[r("div",j,[r("div",D,[e(h,{headers:g,items:x(s.value.transactions)},null,8,["items"])])])]),_:1})],64)):$("",!0)]),_:1})]),_:1}))}};export{W as default};
import{r as i,a as y,o as P,c as I,d as u,w as n,e,_ as S,j as B,f as $,F as k,P as m,g as f,aZ as E,h as _,i as r,a_ as L,n as N}from"./index-CHivKhhP.js";import{_ as h}from"./GeneralTable-Dm8yzA2j.js";import{_ as C}from"./ArcadeCard-B-wORdMu.js";import{A as F,e as R}from"./arcade-C_iviJ_9.js";const T={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},V={class:"w-full"},j={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},D={class:"w-full"},Z={__name:"PaseliView",setup(H){const t=i({}),s=i({}),c=i(!0),v=y(),d=parseInt(v.params.id);async function p(){try{t.value=null;const a=await F(d);t.value=a}catch(a){console.error("Failed to fetch arcade data:",a)}}async function w(){try{s.value=null;const a=await R(d);s.value=a,c.value=!1}catch(a){console.error("Failed to fetch arcade PASELI:",a)}}P(()=>{c.value=!0,p(),w()});const g=[{text:"Timestamp",value:"timestamp",width:200},{text:"Amount",value:"data.delta",width:200},{text:"Remaining Balance",value:"data.balance",width:200},{text:"Reason",value:"data.reason",width:200}],b=[{text:"Player",value:"username"},{text:"Balance",value:"balance"}];function x(a){var o=[];for(var l of JSON.parse(JSON.stringify(a))){if(l.timestamp){const A=new Date(l.timestamp*1e3);l.timestamp=A.toLocaleString()}o.push(l)}return o}return(a,o)=>(u(),I(N,null,{default:n(()=>[e(S,null,{default:n(()=>[!c.value&&t.value?(u(),B(k,{key:0},[e(C,{class:"mb-6",arcade:t.value,"use-small":!0},null,8,["arcade"]),e(m,{icon:f(E),title:"Player PASELI Balances",main:""},null,8,["icon"]),e(_,{"has-table":""},{default:n(()=>[r("div",T,[r("div",V,[e(h,{headers:b,items:s.value.balances},null,8,["items"])])])]),_:1}),e(m,{icon:f(L),title:"PASELI Transaction History",main:"",class:"pt-6"},null,8,["icon"]),e(_,{"has-table":""},{default:n(()=>[r("div",j,[r("div",D,[e(h,{headers:g,items:x(s.value.transactions)},null,8,["items"])])])]),_:1})],64)):$("",!0)]),_:1})]),_:1}))}};export{Z as default};

View File

@@ -1 +0,0 @@
import{u as D,a as B,a4 as G,r as N,p as E,o as L,ai as S,c as $,d as o,w as g,f as p,g as a,_ as U,j as u,F as v,e as d,i as l,l as b,N as j,bR as C,k as A,h as T,t as f,H,n as M}from"./index-vA9N45XP.js";import{_ as W}from"./FormControl-CbA50xCq.js";import{_ as q}from"./GameHeader-DvtYwLzr.js";import{b as z}from"./music-DCIRUh38.js";import{A as J}from"./profile-CSjRk0MQ.js";import"./sources-CWr6W3sX.js";const K={class:"flex gap-2 mb-2 md:mb-0"},O={key:0,class:"md:w-1/3 md:text-right"},Q={class:"lg:flex w-full lg:place-content-between"},X={class:"mb-4 lg:mb-0 space-y-1"},Y={class:"text-lg lg:text-xl"},Z={class:"text-md lg:text-lg"},ee={class:"grid md:grid-cols-2 lg:flex gap-2 lg:justify-end lg:place-content-end"},se={key:0,class:"bg-gray-900 dark:bg-gray-700 p-4 rounded-lg"},re={class:"text-md lg:text-lg"},ue={__name:"PersonalRecords",setup(ae){const y=D(),V=B();var _=y.params.game;const e=G(_);var h=y.params.userId??null,m=N([]);const t=N(null),n=E({currentVersion:null});e||V.push({name:"ErrorPage",params:{catchAll:"404"}}),h||V.push({name:"ErrorPage",params:{catchAll:"404"}}),e.versions||(n.currentVersion=1),L(async()=>{var s;try{const r=await z(_,h);m.value=r,F(),e.versions&&!n.currentVersion&&(n.currentVersion=((s=x.value.at(-1))==null?void 0:s.id)??null)}catch(r){console.error("Failed to fetch score data:",r)}});async function F(){try{t.value=null;const s=await J(_,null,h);t.value=s}catch(s){console.error("Failed to fetch user profile data:",s)}}const x=S(()=>{if(!e.versions)return[];const s=new Set(m.value.map(r=>r.version));return e.versions.filter(r=>s.has(r.id))}),R=S(()=>n.currentVersion?m.value.filter(s=>s.version===n.currentVersion):m.value);return(s,r)=>(o(),$(M,null,{default:g(()=>[a(m)?(o(),$(U,{key:0},{default:g(()=>[t.value?(o(),u(v,{key:0},[d(q,{game:a(e),profile:t.value},null,8,["game","profile"]),l("div",K,[d(b,{icon:s.mdiAccountDetails,href:`/#/games/${a(e).id}/profiles/${t.value.userId}`,outline:!1,color:"info",label:`${t.value.username}'s Profile`},null,8,["icon","href","label"]),d(b,{icon:s.mdiAccountDetails,href:`/#/games/${a(e).id}/scores/${t.value.userId}`,outline:!1,color:"info",label:`${t.value.username}'s Scores`},null,8,["icon","href","label"])]),d(j,{icon:a(C),title:`${t.value.username}'s ${a(e).shortName?a(e).shortName:a(e).name} Records`,main:""},{default:g(()=>[a(e).versions?(o(),u("div",O,[r[1]||(r[1]=l("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),d(W,{modelValue:n.currentVersion,"onUpdate:modelValue":r[0]||(r[0]=i=>n.currentVersion=i),options:x.value.slice().reverse()},null,8,["modelValue","options"])])):p("",!0)]),_:1},8,["icon","title"]),(o(!0),u(v,null,A(R.value,i=>(o(),$(T,{key:i.id,class:"mb-6"},{default:g(()=>[l("div",Q,[l("div",X,[l("h1",Y,f(i.name),1),l("h2",Z,f(i.artist),1),d(b,{label:"View Song",color:"info",href:`/#/games/${a(_)}/song/${i.id}`},null,8,["href"])]),l("div",ee,[(o(!0),u(v,null,A(i.charts,c=>{var k,w,I,P;return o(),u(v,{key:c.db_id},[((k=c.data)==null?void 0:k.difficulty)!=0?(o(),u("div",se,[l("h2",re,f(a(e).chartTable[c.chart])+" - "+f((w=c.data)==null?void 0:w.difficulty),1),H(" "+f(c.record?`${(I=c.record)==null?void 0:I.username} - ${(P=c.record.points)==null?void 0:P.toLocaleString()}`:"Unclaimed"),1)])):p("",!0)],64)}),128))])])]),_:2},1024))),128))],64)):p("",!0)]),_:1})):p("",!0)]),_:1}))}};export{ue as default};

View File

@@ -0,0 +1 @@
import{a as R,b as B,a7 as G,r as S,p as U,o as E,al as A,c as $,d as o,w as g,f as p,g as a,_ as L,j as u,F as v,e as d,i as l,l as b,P as j,bU as C,k as N,h as T,t as f,I as M,n as W}from"./index-CHivKhhP.js";import{_ as q}from"./FormControl-BLuW9GWW.js";import{_ as z}from"./GameHeader-CbS6z4E_.js";import{b as H}from"./music-BegIU2Dv.js";import{A as J}from"./profile-LMvWxmH8.js";import"./sources-0lyug9Pk.js";const K={class:"flex gap-2 mb-2 md:mb-0"},O={key:0,class:"md:w-1/3 md:text-right"},Q={class:"lg:flex w-full lg:place-content-between"},X={class:"mb-4 lg:mb-0 space-y-1"},Y={class:"text-lg lg:text-xl"},Z={class:"text-md lg:text-lg"},ee={class:"grid md:grid-cols-2 lg:flex gap-2 lg:justify-end lg:place-content-end"},se={key:0,class:"bg-gray-900 dark:bg-gray-700 p-4 rounded-lg"},re={class:"text-md lg:text-lg"},ue={__name:"PersonalRecords",setup(ae){const y=R(),V=B();var _=y.params.game;const e=G(_);var h=y.params.userId??null,m=S([]);const t=S(null),n=U({currentVersion:null});e||V.push({name:"ErrorPage",params:{catchAll:"404"}}),h||V.push({name:"ErrorPage",params:{catchAll:"404"}}),e.versions||(n.currentVersion=1),E(async()=>{var s;try{const r=await H(_,h);m.value=r,F(),e.versions&&!n.currentVersion&&(n.currentVersion=((s=x.value.at(-1))==null?void 0:s.id)??null)}catch(r){console.error("Failed to fetch score data:",r)}});async function F(){try{t.value=null;const s=await J(_,null,h);t.value=s}catch(s){console.error("Failed to fetch user profile data:",s)}}const x=A(()=>{if(!e.versions)return[];const s=new Set(m.value.map(r=>r.version));return e.versions.filter(r=>s.has(r.id))}),D=A(()=>n.currentVersion?m.value.filter(s=>s.version===n.currentVersion):m.value);return(s,r)=>(o(),$(W,null,{default:g(()=>[a(m)?(o(),$(L,{key:0},{default:g(()=>[t.value?(o(),u(v,{key:0},[d(z,{game:a(e),profile:t.value},null,8,["game","profile"]),l("div",K,[d(b,{icon:s.mdiAccountDetails,href:`/#/games/${a(e).id}/profiles/${t.value.userId}`,outline:!1,color:"info",label:`${t.value.username}'s Profile`},null,8,["icon","href","label"]),d(b,{icon:s.mdiAccountDetails,href:`/#/games/${a(e).id}/scores/${t.value.userId}`,outline:!1,color:"info",label:`${t.value.username}'s Scores`},null,8,["icon","href","label"])]),d(j,{icon:a(C),title:`${t.value.username}'s ${a(e).shortName?a(e).shortName:a(e).name} Records`,main:""},{default:g(()=>[a(e).versions?(o(),u("div",O,[r[1]||(r[1]=l("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),d(q,{modelValue:n.currentVersion,"onUpdate:modelValue":r[0]||(r[0]=i=>n.currentVersion=i),options:x.value.slice().reverse()},null,8,["modelValue","options"])])):p("",!0)]),_:1},8,["icon","title"]),(o(!0),u(v,null,N(D.value,i=>(o(),$(T,{key:i.id,class:"mb-6"},{default:g(()=>[l("div",Q,[l("div",X,[l("h1",Y,f(i.name),1),l("h2",Z,f(i.artist),1),d(b,{label:"View Song",color:"info",href:`/#/games/${a(_)}/song/${i.id}`},null,8,["href"])]),l("div",ee,[(o(!0),u(v,null,N(i.charts,c=>{var k,I,P,w;return o(),u(v,{key:c.db_id},[((k=c.data)==null?void 0:k.difficulty)!=0?(o(),u("div",se,[l("h2",re,f(a(e).chartTable[c.chart])+" - "+f((I=c.data)==null?void 0:I.difficulty),1),M(" "+f(c.record?`${(P=c.record)==null?void 0:P.username} - ${(w=c.record.points)==null?void 0:w.toLocaleString()}`:"Unclaimed"),1)])):p("",!0)],64)}),128))])])]),_:2},1024))),128))],64)):p("",!0)]),_:1})):p("",!0)]),_:1}))}};export{ue as default};

View File

@@ -1 +1 @@
import{u as Z,a as aa,b as ea,a4 as ra,r as q,o as sa,c as la,d as z,w as d,e as t,_ as ta,j as na,f as oa,F as da,g as l,N as ca,ap as ua,l as fa,bC as ia,h as pa,n as _a}from"./index-vA9N45XP.js";import{_ as ha}from"./GeneralTable-7ScsFktP.js";import{_ as ga}from"./GameHeader-DvtYwLzr.js";import{A as ka}from"./profile-CSjRk0MQ.js";import"./sources-CWr6W3sX.js";const xa={__name:"PersonalScores",setup(va){const u=Z(),f=aa(),J=ea();var n=null,e=null,c=null;n=u.params.game,c=u.params.userId,e=ra(n),e||f.push({name:"ErrorPage",params:{catchAll:"404"}});const s=q(null),i=q([]),p=[{text:"Timestamp",value:"timestamp",width:140},{text:"New PB",value:"newRecord",width:100},{text:"Song",value:"song.name",width:180},{text:"Artist",value:"song.artist",width:180},{text:"Chart",value:"song.chart",width:100},{text:"Grade",value:"data.rank",width:80},{text:"Score",value:"points",width:120}];if(e.scoreHeaders)for(var K of e.scoreHeaders)p.push(K);sa(async()=>{try{const r=await J.getAttemptData(n,c);i.value=Q(r)}catch(r){console.error("Failed to fetch score data:",r)}O()});async function O(){try{s.value=null;const r=await ka(n,null,c);s.value=r}catch(r){console.error("Failed to fetch user profile data:",r)}}function Q(r){var _,h,g,k,v,w,b,m,$,T,x,S,C,I,A,P,R,F,y,B,D,E,N,G,L,H,M,V,j,U,X;var o=[];for(var a of r){if(a.newRecord?a.newRecord="✅":a.newRecord="",a.timestamp){const Y=new Date(a.timestamp*1e3);a.timestamp=Y.toLocaleString()}a.points!=null&&(a.points=a.points.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((h=(_=a.data)==null?void 0:_.stats)==null?void 0:h.score)!=null&&(a.exscore=a.points.toString(),a.points=(k=(g=a.data)==null?void 0:g.stats)==null?void 0:k.score.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((v=a.song)==null?void 0:v.chart)!=null&&e.chartTable&&(a.song.chart=e.chartTable[(w=a.song)==null?void 0:w.chart]),((b=a.data)==null?void 0:b.halo)!=null&&e.haloTable&&(a.data.halo=e.haloTable[(m=a.data)==null?void 0:m.halo]),(($=a.data)==null?void 0:$.medal)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(T=a.data)==null?void 0:T.medal]),((x=a.data)==null?void 0:x.clear_status)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(S=a.data)==null?void 0:S.clear_status]),((C=a.data)==null?void 0:C.rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(I=a.data)==null?void 0:I.rank]),((A=a.data)==null?void 0:A.result_rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(P=a.data)==null?void 0:P.result_rank]),((R=a.data)==null?void 0:R.grade)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(F=a.data)==null?void 0:F.grade]),((y=a.data)==null?void 0:y.skill_perc)>0?a.data.skill_perc=`${((B=a.data)==null?void 0:B.skill_perc)/100}%`:a.data.skill_perc="0%",(D=a.data)!=null&&D.skill_points&&(a.data.skill_points=((E=a.data)==null?void 0:E.skill_points)/10),((N=a.data)==null?void 0:N.perc)>0?a.data.perc=`${((G=a.data)==null?void 0:G.perc)/100}%`:a.data.perc="0%",(L=a.data)!=null&&L.new_skill&&(a.data.new_skill=((H=a.data)==null?void 0:H.new_skill)/10),(M=a.data)!=null&&M.music_rate&&(a.data.music_rate=((V=a.data)==null?void 0:V.music_rate)/10),(j=a.data)!=null&&j.excellent?a.medal="EX FC":(U=a.data)!=null&&U.fullcombo?a.medal="FC":(X=a.data)!=null&&X.clear?a.medal="CLEARED":a.medal="FAILED",o.push(a)}return o}const W=r=>{const o=r.song.id;f.push(`/games/${n}/song/${o}`)};return(r,o)=>(z(),la(_a,null,{default:d(()=>[t(ta,null,{default:d(()=>[s.value?(z(),na(da,{key:0},[t(ga,{game:l(e),profile:s.value},null,8,["game","profile"]),t(ca,{icon:l(ua),title:`${s.value.username}'s ${l(e).shortName?l(e).shortName:l(e).name} Scores`,main:""},{default:d(()=>[t(fa,{icon:l(ia),href:`/#/games/${l(e).id}/profiles/${s.value.userId}`,outline:!1,color:"info",label:`${s.value.username}'s Profile`},null,8,["icon","href","label"])]),_:1},8,["icon","title"]),t(pa,{"has-table":""},{default:d(()=>[t(ha,{headers:p,items:i.value,onRowClicked:W},null,8,["items"])]),_:1})],64)):oa("",!0)]),_:1})]),_:1}))}};export{xa as default};
import{a as Z,b as aa,u as ea,a7 as sa,r as q,o as ra,c as la,d as z,w as d,e as t,_ as ta,j as na,f as oa,F as da,g as l,P as ca,as as ua,l as fa,bF as ia,h as pa,n as _a}from"./index-CHivKhhP.js";import{_ as ha}from"./GeneralTable-Dm8yzA2j.js";import{_ as ga}from"./GameHeader-CbS6z4E_.js";import{A as ka}from"./profile-LMvWxmH8.js";import"./sources-0lyug9Pk.js";const xa={__name:"PersonalScores",setup(va){const u=Z(),f=aa(),J=ea();var n=null,e=null,c=null;n=u.params.game,c=u.params.userId,e=sa(n),e||f.push({name:"ErrorPage",params:{catchAll:"404"}});const r=q(null),i=q([]),p=[{text:"Timestamp",value:"timestamp",width:140},{text:"New PB",value:"newRecord",width:100},{text:"Song",value:"song.name",width:180},{text:"Artist",value:"song.artist",width:180},{text:"Chart",value:"song.chart",width:100},{text:"Grade",value:"data.rank",width:80},{text:"Score",value:"points",width:120}];if(e.scoreHeaders)for(var K of e.scoreHeaders)p.push(K);ra(async()=>{try{const s=await J.getAttemptData(n,c);i.value=Q(s)}catch(s){console.error("Failed to fetch score data:",s)}O()});async function O(){try{r.value=null;const s=await ka(n,null,c);r.value=s}catch(s){console.error("Failed to fetch user profile data:",s)}}function Q(s){var _,h,g,k,v,w,b,m,$,T,x,S,I,P,A,C,F,R,y,B,D,E,N,G,L,H,M,V,j,U,X;var o=[];for(var a of s){if(a.newRecord?a.newRecord="✅":a.newRecord="",a.timestamp){const Y=new Date(a.timestamp*1e3);a.timestamp=Y.toLocaleString()}a.points!=null&&(a.points=a.points.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((h=(_=a.data)==null?void 0:_.stats)==null?void 0:h.score)!=null&&(a.exscore=a.points.toString(),a.points=(k=(g=a.data)==null?void 0:g.stats)==null?void 0:k.score.toString().replace(new RegExp("\\B(?<!\\.\\d*)(?=(\\d{3})+(?!\\d))","g"),",")),((v=a.song)==null?void 0:v.chart)!=null&&e.chartTable&&(a.song.chart=e.chartTable[(w=a.song)==null?void 0:w.chart]),((b=a.data)==null?void 0:b.halo)!=null&&e.haloTable&&(a.data.halo=e.haloTable[(m=a.data)==null?void 0:m.halo]),(($=a.data)==null?void 0:$.medal)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(T=a.data)==null?void 0:T.medal]),((x=a.data)==null?void 0:x.clear_status)!=null&&e.medalTable&&(a.data.medal=e.medalTable[(S=a.data)==null?void 0:S.clear_status]),((I=a.data)==null?void 0:I.rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(P=a.data)==null?void 0:P.rank]),((A=a.data)==null?void 0:A.result_rank)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(C=a.data)==null?void 0:C.result_rank]),((F=a.data)==null?void 0:F.grade)!=null&&e.rankTable&&(a.data.rank=e.rankTable[(R=a.data)==null?void 0:R.grade]),((y=a.data)==null?void 0:y.skill_perc)>0?a.data.skill_perc=`${((B=a.data)==null?void 0:B.skill_perc)/100}%`:a.data.skill_perc="0%",(D=a.data)!=null&&D.skill_points&&(a.data.skill_points=((E=a.data)==null?void 0:E.skill_points)/10),((N=a.data)==null?void 0:N.perc)>0?a.data.perc=`${((G=a.data)==null?void 0:G.perc)/100}%`:a.data.perc="0%",(L=a.data)!=null&&L.new_skill&&(a.data.new_skill=((H=a.data)==null?void 0:H.new_skill)/10),(M=a.data)!=null&&M.music_rate&&(a.data.music_rate=((V=a.data)==null?void 0:V.music_rate)/10),(j=a.data)!=null&&j.excellent?a.medal="EX FC":(U=a.data)!=null&&U.fullcombo?a.medal="FC":(X=a.data)!=null&&X.clear?a.medal="CLEARED":a.medal="FAILED",o.push(a)}return o}const W=s=>{const o=s.song.id;f.push(`/games/${n}/song/${o}`)};return(s,o)=>(z(),la(_a,null,{default:d(()=>[t(ta,null,{default:d(()=>[r.value?(z(),na(da,{key:0},[t(ga,{game:l(e),profile:r.value},null,8,["game","profile"]),t(ca,{icon:l(ua),title:`${r.value.username}'s ${l(e).shortName?l(e).shortName:l(e).name} Scores`,main:""},{default:d(()=>[t(fa,{icon:l(ia),href:`/#/games/${l(e).id}/profiles/${r.value.userId}`,outline:!1,color:"info",label:`${r.value.username}'s Profile`},null,8,["icon","href","label"])]),_:1},8,["icon","title"]),t(pa,{"has-table":""},{default:d(()=>[t(ha,{headers:p,items:i.value,onRowClicked:W},null,8,["items"])]),_:1})],64)):oa("",!0)]),_:1})]),_:1}))}};export{xa as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{u as $,a as k,a4 as I,r as A,o as R,c,d as u,w as f,e as n,_ as D,i as o,b0 as N,g as s,f as h,l as g,b4 as B,b5 as C,N as S,b3 as L,h as V,n as G}from"./index-vA9N45XP.js";import{g as M,_ as j}from"./sources-CWr6W3sX.js";import{_ as F}from"./GeneralTable-7ScsFktP.js";import{a as H}from"./profile-CSjRk0MQ.js";import{d as T}from"./userData-DZYdegtD.js";import{g as y}from"./danClass-NuRM5DAU.js";const z={class:"bg-white dark:bg-slate-900/90 rounded-2xl pt-6 p-3 card-content"},E={class:"w-full"},O={class:"md:flex md:px-5 md:space-x-10 md:justify-between md:items-center"},X={class:"md:w-1/2 grid grid-cols-1 md:grid-cols-2 gap-3"},q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},J={class:"w-full"},ta={__name:"PlayersView",setup(K){const v=$(),_=k();var l=null,t=null;l=v.params.id,t=I(l),t==null&&_.push({name:"ErrorPage",params:{catchAll:"404"}});const m=A([]);R(async()=>{try{const e=await H(l);m.value=x(e)}catch(e){console.error("Failed to fetch profile data:",e)}});const i=[];if(i.push({text:"Player",value:"username",sortable:!0,width:120}),t.noRivals||i.push({text:"Rival ID",value:"extid",width:100}),i.push({text:"Last Play",value:"stats.last_play_timestamp",width:150},{text:"Last Arcade",value:"stats.last_play_arcade",width:150},{text:"Plays",value:"stats.total_plays",sortable:!0,width:50}),t.playerHeaders)for(var w of t.playerHeaders)i.push(w);function x(e){var r=[];for(var a of e){if(a.extid&&(a.extid=T(a.extid)),a.stats){if(a.stats.last_play_timestamp){const d=new Date(a.stats.last_play_timestamp*1e3);a.stats.last_play_timestamp=d.toLocaleString()}a.sgrade&&(a.sgrade=y(a.sgrade).short),a.dgrade&&(a.dgrade=y(a.dgrade).short)}r.push(a)}return r.sort((d,p)=>{const P=d.stats&&d.stats.total_plays||0;return(p.stats&&p.stats.total_plays||0)-P}),r}const b=e=>{const r=e.userId;_.push(`/games/${l}/profiles/${r}`)};return(e,r)=>(u(),c(G,null,{default:f(()=>[n(D,null,{default:f(()=>[o("div",{style:N(s(M)(s(t))),class:"rounded-2xl mb-6 card-container"},[o("div",z,[o("div",E,[o("div",O,[n(j,{path:s(t).icon,title:s(t).name},null,8,["path","title"])])]),o("div",X,[s(t).noScores?h("",!0):(u(),c(g,{key:0,href:`/#/games/${s(l)}/scores`,icon:s(B),outline:!1,color:"info",label:"Network Scores"},null,8,["href","icon"])),s(t).noRecords?h("",!0):(u(),c(g,{key:1,href:`/#/games/${s(l)}/records`,icon:s(C),outline:!1,color:"info",label:"Network Records"},null,8,["href","icon"]))])])],4),n(S,{icon:s(L),title:"All Players",main:""},null,8,["icon"]),n(V,{"has-table":""},{default:f(()=>[o("div",q,[o("div",J,[n(F,{headers:i,items:m.value,path:`/#/${s(l)}/profiles/`,onRowClicked:b},null,8,["items","path"])])])]),_:1})]),_:1})]),_:1}))}};export{ta as default};
import{a as $,b as k,a7 as I,r as A,o as R,c,d as u,w as f,e as n,_ as D,i as o,b3 as B,g as s,f as h,l as g,b7 as C,b8 as N,P as S,b6 as L,h as V,n as G}from"./index-CHivKhhP.js";import{g as M,_ as j}from"./sources-0lyug9Pk.js";import{_ as F}from"./GeneralTable-Dm8yzA2j.js";import{a as H}from"./profile-LMvWxmH8.js";import{d as T}from"./userData-DZYdegtD.js";import{g as y}from"./danClass-NuRM5DAU.js";const z={class:"bg-white dark:bg-slate-900/90 rounded-2xl pt-6 p-3 card-content"},E={class:"w-full"},O={class:"md:flex md:px-5 md:space-x-10 md:justify-between md:items-center"},X={class:"md:w-1/2 grid grid-cols-1 md:grid-cols-2 gap-3"},q={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},J={class:"w-full"},ta={__name:"PlayersView",setup(K){const v=$(),_=k();var l=null,t=null;l=v.params.id,t=I(l),t==null&&_.push({name:"ErrorPage",params:{catchAll:"404"}});const m=A([]);R(async()=>{try{const e=await H(l);m.value=x(e)}catch(e){console.error("Failed to fetch profile data:",e)}});const i=[];if(i.push({text:"Player",value:"username",sortable:!0,width:120}),t.noRivals||i.push({text:"Rival ID",value:"extid",width:100}),i.push({text:"Last Play",value:"stats.last_play_timestamp",width:150},{text:"Last Arcade",value:"stats.last_play_arcade",width:150},{text:"Plays",value:"stats.total_plays",sortable:!0,width:50}),t.playerHeaders)for(var w of t.playerHeaders)i.push(w);function x(e){var r=[];for(var a of e){if(a.extid&&(a.extid=T(a.extid)),a.stats){if(a.stats.last_play_timestamp){const d=new Date(a.stats.last_play_timestamp*1e3);a.stats.last_play_timestamp=d.toLocaleString()}a.sgrade&&(a.sgrade=y(a.sgrade).short),a.dgrade&&(a.dgrade=y(a.dgrade).short)}r.push(a)}return r.sort((d,p)=>{const P=d.stats&&d.stats.total_plays||0;return(p.stats&&p.stats.total_plays||0)-P}),r}const b=e=>{const r=e.userId;_.push(`/games/${l}/profiles/${r}`)};return(e,r)=>(u(),c(G,null,{default:f(()=>[n(D,null,{default:f(()=>[o("div",{style:B(s(M)(s(t))),class:"rounded-2xl mb-6 card-container"},[o("div",z,[o("div",E,[o("div",O,[n(j,{path:s(t).icon,title:s(t).name},null,8,["path","title"])])]),o("div",X,[s(t).noScores?h("",!0):(u(),c(g,{key:0,href:`/#/games/${s(l)}/scores`,icon:s(C),outline:!1,color:"info",label:"Network Scores"},null,8,["href","icon"])),s(t).noRecords?h("",!0):(u(),c(g,{key:1,href:`/#/games/${s(l)}/records`,icon:s(N),outline:!1,color:"info",label:"Network Records"},null,8,["href","icon"]))])])],4),n(S,{icon:s(L),title:"All Players",main:""},null,8,["icon"]),n(V,{"has-table":""},{default:f(()=>[o("div",q,[o("div",J,[n(F,{headers:i,items:m.value,path:`/#/${s(l)}/profiles/`,onRowClicked:b},null,8,["items","path"])])])]),_:1})]),_:1})]),_:1}))}};export{ta as default};

View File

@@ -0,0 +1,2 @@
import{u as k,a as g,b as v,r as p,o as A,A as $,c as w,d as n,w as c,e as d,_ as B,T as N,f as b,g as s,h as F,i as e,j as u,t as x,F as P,k as V,l as C,m as R,n as S}from"./index-CHivKhhP.js";import{_ as D}from"./BaseButtons-pRaX0ajF.js";const i=k();async function E(a){if(i.loadedArticles[a])return i.loadedArticles[a];try{const o=await i.callApi(`/news/${a}`);return i.loadedArticles[a]=o,i.loadedArticles[a]}catch(o){throw console.log("Error fetching post:",o),o}}const M={class:"flex flex-col items-center"},T=["src"],j={class:"text-left md:text-center"},z={class:"text-2xl"},G={key:1},U={__name:"PostView",setup(a){const o=g(),h=v(),f=parseInt(o.params.id);var r=p({data:{}}),m=p("");A(async()=>{try{const t=await E(f);r.value=t.news,m.value=t.news.body.split(`
`)}catch(t){console.error("Failed to fetch news data:",t)}try{await $(f)}catch(t){console.error("Failed to set news as read:",t)}});function y(){h.push("/")}return(t,l)=>(n(),w(S,null,{default:c(()=>[d(B,null,{default:c(()=>[d(N,null,{default:c(()=>[s(r)!={}?(n(),w(F,{key:0,"has-table":""},{footer:c(()=>[d(D,null,{default:c(()=>[d(C,{label:"Home",color:"info",icon:s(R),"icon-size":"20",onClick:y},null,8,["icon"])]),_:1})]),default:c(()=>[e("div",M,[e("img",{src:s(r).data.img,class:"rounded-t-2xl md:rounded-2xl md:w-1/2 md:m-4"},null,8,T)]),s(r)?(n(),u("div",{key:s(r).id,class:"flex flex-col items-center p-4"},[e("div",j,[e("h1",z,x(s(r).title),1),l[1]||(l[1]=e("hr",{class:"pb-1 my-2"},null,-1)),(n(!0),u(P,null,V(s(m),_=>(n(),u("div",{key:_},[e("p",null,x(_),1),l[0]||(l[0]=e("br",null,null,-1))]))),128))])])):(n(),u("div",G,l[2]||(l[2]=[e("h1",{class:"text-2xl"},"News not found...",-1)])))]),_:1})):b("",!0)]),_:1})]),_:1})]),_:1}))}};export{U as default};

View File

@@ -1,2 +0,0 @@
import{u as k,a as v,b as y,r as d,o as g,c as m,d as n,w as o,e as r,_ as B,T as $,f as b,g as s,h as N,i as e,j as i,t as _,F as V,k as C,l as F,m as S,n as D}from"./index-vA9N45XP.js";import{_ as I}from"./BaseButtons-vzUdhBMY.js";const M={class:"flex flex-col items-center"},R=["src"],T={class:"text-left md:text-center"},j={class:"text-2xl"},z={key:1},P={__name:"PostView",setup(E){const f=k(),p=v(),x=parseInt(f.params.id),w=y();var t=d({data:{}}),c=d("");g(async()=>{try{const l=await w.fetchNews(x);t.value=l.news,c.value=l.news.body.split(`
`)}catch(l){console.error("Failed to fetch news data:",l)}});function h(){p.push("/")}return(l,a)=>(n(),m(D,null,{default:o(()=>[r(B,null,{default:o(()=>[r($,null,{default:o(()=>[s(t)!={}?(n(),m(N,{key:0,"has-table":""},{footer:o(()=>[r(I,null,{default:o(()=>[r(F,{label:"Home",color:"info",icon:s(S),"icon-size":"20",onClick:h},null,8,["icon"])]),_:1})]),default:o(()=>[e("div",M,[e("img",{src:s(t).data.img,class:"rounded-t-2xl md:rounded-2xl md:w-1/2 md:m-4"},null,8,R)]),s(t)?(n(),i("div",{key:s(t).id,class:"flex flex-col items-center p-4"},[e("div",T,[e("h1",j,_(s(t).title),1),a[1]||(a[1]=e("hr",{class:"pb-1 my-2"},null,-1)),(n(!0),i(V,null,C(s(c),u=>(n(),i("div",{key:u},[e("p",null,_(u),1),a[0]||(a[0]=e("br",null,null,-1))]))),128))])])):(n(),i("div",z,a[2]||(a[2]=[e("h1",{class:"text-2xl"},"News not found...",-1)])))]),_:1})):b("",!0)]),_:1})]),_:1})]),_:1}))}};export{P as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
import{b as q,a as I,p as g,r as N,L as P,c as p,d as c,w as n,e,_ as L,i as A,M as B,N as E,g as t,x as S,h as V,v,O,z as M,y as f,f as _,l as J,B as U,C as $,P as F,n as z,Q as D}from"./index-vA9N45XP.js";import{_ as u}from"./FormField-BJ53twuK.js";import{_ as m}from"./FormControl-CbA50xCq.js";import{_ as G}from"./FormCheckRadio-Roj-HW28.js";const Q={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},W={__name:"ProfileView",setup(R){const r=q(),y=I(),d=g({username:JSON.parse(JSON.stringify(r.userName)),email:JSON.parse(JSON.stringify(r.userEmail)),pin:null,public:r.userPublic??!1}),l=g({username:JSON.parse(JSON.stringify(r.userName)),email:JSON.parse(JSON.stringify(r.userEmail)),pin:null,public:r.userPublic??!1}),i=g({currentPassword:"",newPassword:"",confirmPassword:""}),w=N(!1),b=N(!1);P(()=>r.userName,s=>{l.username=JSON.parse(JSON.stringify(s)),d.username=JSON.parse(JSON.stringify(s))}),P(()=>r.userEmail,s=>{l.email=JSON.parse(JSON.stringify(s)),d.email=JSON.parse(JSON.stringify(s))}),P(()=>r.userPublic,s=>{l.public=s,d.public=s});async function x(){w.value=!0,(await r.putUser(l)).status=="success"&&(w.value=!1,r.userLoaded=!1,await r.loadUser(),y.go())}async function C(){b.value=!0,(await D(i.currentPassword,i.newPassword,i.confirmPassword)).status=="success"&&(alert("Password changed."),b.value=!1,await r.loadUser(),y.go())}function k(s){s.target.value=s.target.value.replace(/\D/g,"")}function h(s,a){return JSON.stringify(s)!==JSON.stringify(a)}return(s,a)=>(c(),p(z,null,{default:n(()=>[e(L,null,{default:n(()=>[e(B,{class:"mb-6","use-small":"","even-smaller":""}),e(E,{icon:t(S),title:"Profile Settings",main:""},null,8,["icon"]),A("div",Q,[e(V,{"is-form":"",class:"row-span-1",onSubmit:v(x,["prevent"])},{footer:n(()=>[h(d,l)?(c(),p(J,{key:0,color:"success",type:"submit",label:"Update"})):_("",!0),w.value?(c(),p(U,{key:1,path:t($),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):_("",!0)]),default:n(()=>[e(O,{color:"info",label:"General",class:"mb-2"}),e(u,{label:"Username"},{default:n(()=>[e(m,{modelValue:l.username,"onUpdate:modelValue":a[0]||(a[0]=o=>l.username=o),icon:t(S),name:"username",required:"",autocomplete:"username"},null,8,["modelValue","icon"])]),_:1}),e(u,{label:"E-mail",help:"Used for password resetting and 2FA"},{default:n(()=>[e(m,{modelValue:l.email,"onUpdate:modelValue":a[1]||(a[1]=o=>l.email=o),icon:t(M),type:"email",name:"email",required:"",autocomplete:"email"},null,8,["modelValue","icon"])]),_:1}),e(u,{label:"PIN",help:"Used when logging into a game"},{default:n(()=>[e(m,{modelValue:l.pin,"onUpdate:modelValue":a[2]||(a[2]=o=>l.pin=o),icon:t(f),type:"password",name:"pin",minlength:4,maxlength:4,inputmode:"numeric",pattern:"\\d{4}",autocomplete:"pin",onInput:k},null,8,["modelValue","icon"])]),_:1}),e(u,{label:"Public Profile",help:"Show my profile publicly. If disabled, only game profiles and scores will be visible."},{default:n(()=>[e(G,{modelValue:l.public,"onUpdate:modelValue":a[3]||(a[3]=o=>l.public=o),name:"public","model-value":l.public,"input-value":l.public,type:"switch"},null,8,["modelValue","model-value","input-value"])]),_:1})]),_:1}),e(V,{"is-form":"",class:"row-span-2",onSubmit:a[7]||(a[7]=v(o=>C(),["prevent"]))},{footer:n(()=>[e(J,{type:"submit",color:"success",label:"Update"}),b.value?(c(),p(U,{key:0,path:t($),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):_("",!0)]),default:n(()=>[e(O,{color:"info",label:"Change Password",class:"mb-2"}),e(u,{label:"Current Password"},{default:n(()=>[e(m,{modelValue:i.currentPassword,"onUpdate:modelValue":a[4]||(a[4]=o=>i.currentPassword=o),icon:t(f),name:"currentPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),e(F),e(u,{label:"New Password"},{default:n(()=>[e(m,{modelValue:i.newPassword,"onUpdate:modelValue":a[5]||(a[5]=o=>i.newPassword=o),icon:t(f),name:"newPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),e(u,{label:"Confirm Password"},{default:n(()=>[e(m,{modelValue:i.confirmPassword,"onUpdate:modelValue":a[6]||(a[6]=o=>i.confirmPassword=o),icon:t(f),name:"confirmPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1})]),_:1})])]),_:1})]),_:1}))}};export{W as default};

View File

@@ -0,0 +1,2 @@
import{u as q,b as E,p as P,r as S,M as v,o as B,N as F,c as f,d as c,w as r,e as s,_ as G,i as u,O as R,P as T,g as t,x,h as _,v as N,Q as V,z,y as w,f as U,l as O,C as I,D as h,R as Q,t as Y,I as k,n as j,S as H,U as K}from"./index-CHivKhhP.js";import{_ as d}from"./FormField-vtioLqMT.js";import{_ as m}from"./FormControl-BLuW9GWW.js";import{_ as W}from"./FormCheckRadio-DdZBsrII.js";const X={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},Z={class:"my-4"},ee={class:"text-xl"},ie={__name:"ProfileView",setup(se){const o=q(),J=E(),p=P({username:JSON.parse(JSON.stringify(o.userName)),email:JSON.parse(JSON.stringify(o.userEmail)),pin:null,public:o.userPublic??!1}),n=P({username:JSON.parse(JSON.stringify(o.userName)),email:JSON.parse(JSON.stringify(o.userEmail)),pin:null,public:o.userPublic??!1}),i=P({currentPassword:"",newPassword:"",confirmPassword:""}),b=S(!1),g=S(!1),y=S(null);v(()=>o.userName,a=>{n.username=JSON.parse(JSON.stringify(a)),p.username=JSON.parse(JSON.stringify(a))}),v(()=>o.userEmail,a=>{n.email=JSON.parse(JSON.stringify(a)),p.email=JSON.parse(JSON.stringify(a))}),v(()=>o.userPublic,a=>{n.public=a,p.public=a}),B(()=>{A()});async function C(){b.value=!0,(await o.putUser(n)).status=="success"&&(b.value=!1,o.userLoaded=!1,await o.loadUser(),J.go())}async function $(){g.value=!0,(await H(i.currentPassword,i.newPassword,i.confirmPassword)).status=="success"&&(alert("Password changed."),g.value=!1,await o.loadUser(),J.go())}async function A(){const a=await F();y.value=a}async function D(){if(window.confirm(`Are you really?
This will log out every session.`)){const e=await K();y.value=e,o.userLoaded=!1,o.loadUser()}}function L(a){a.target.value=a.target.value.replace(/\D/g,"")}function M(a,e){return JSON.stringify(a)!==JSON.stringify(e)}return(a,e)=>(c(),f(j,null,{default:r(()=>[s(G,null,{default:r(()=>[s(R,{class:"mb-6","use-small":"","even-smaller":""}),s(T,{icon:t(x),title:"Profile Settings",main:""},null,8,["icon"]),u("div",X,[s(_,{"is-form":"",class:"row-span-1",onSubmit:N(C,["prevent"])},{footer:r(()=>[M(p,n)?(c(),f(O,{key:0,color:"success",type:"submit",label:"Update"})):U("",!0),b.value?(c(),f(I,{key:1,path:t(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):U("",!0)]),default:r(()=>[s(V,{color:"info",label:"General",class:"mb-2"}),s(d,{label:"Username"},{default:r(()=>[s(m,{modelValue:n.username,"onUpdate:modelValue":e[0]||(e[0]=l=>n.username=l),icon:t(x),name:"username",required:"",autocomplete:"username"},null,8,["modelValue","icon"])]),_:1}),s(d,{label:"E-mail",help:"Used for password resetting and 2FA"},{default:r(()=>[s(m,{modelValue:n.email,"onUpdate:modelValue":e[1]||(e[1]=l=>n.email=l),icon:t(z),type:"email",name:"email",required:"",autocomplete:"email"},null,8,["modelValue","icon"])]),_:1}),s(d,{label:"PIN",help:"Used when logging into a game"},{default:r(()=>[s(m,{modelValue:n.pin,"onUpdate:modelValue":e[2]||(e[2]=l=>n.pin=l),icon:t(w),type:"password",name:"pin",minlength:4,maxlength:4,inputmode:"numeric",pattern:"\\d{4}",autocomplete:"pin",onInput:L},null,8,["modelValue","icon"])]),_:1}),s(d,{label:"Public Profile",help:"Show my profile publicly. If disabled, only game profiles and scores will be visible."},{default:r(()=>[s(W,{modelValue:n.public,"onUpdate:modelValue":e[3]||(e[3]=l=>n.public=l),name:"public","model-value":n.public,"input-value":n.public,type:"switch"},null,8,["modelValue","model-value","input-value"])]),_:1})]),_:1}),s(_,{"is-form":"",class:"row-span-1",onSubmit:e[7]||(e[7]=N(l=>$(),["prevent"]))},{footer:r(()=>[s(O,{type:"submit",color:"success",label:"Update"}),g.value?(c(),f(I,{key:0,path:t(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):U("",!0)]),default:r(()=>[s(V,{color:"info",label:"Change Password",class:"mb-2"}),s(d,{label:"Current Password"},{default:r(()=>[s(m,{modelValue:i.currentPassword,"onUpdate:modelValue":e[4]||(e[4]=l=>i.currentPassword=l),icon:t(w),name:"currentPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(Q),s(d,{label:"New Password"},{default:r(()=>[s(m,{modelValue:i.newPassword,"onUpdate:modelValue":e[5]||(e[5]=l=>i.newPassword=l),icon:t(w),name:"newPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(d,{label:"Confirm Password"},{default:r(()=>[s(m,{modelValue:i.confirmPassword,"onUpdate:modelValue":e[6]||(e[6]=l=>i.confirmPassword=l),icon:t(w),name:"confirmPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1})]),_:1}),s(_,{"is-form":"",class:"row-span-1",onSubmit:e[9]||(e[9]=N(l=>$(),["prevent"]))},{default:r(()=>{var l;return[s(V,{color:"info",label:"Sessions",class:"mb-2"}),u("div",Z,[u("h1",ee," You currently have "+Y((l=y.value)==null?void 0:l.length)+" saved session(s). ",1),e[10]||(e[10]=u("p",null,[k(" Most of them are likely expired."),u("br"),k(" Sadly, due to the fact that PhaseII stores no information on your Session ID for location or IP, we cannot provide select deletion. ")],-1))]),e[11]||(e[11]=u("h1",{class:"text-xl mb-2"},"Log out of all sessions",-1)),u("div",null,[s(O,{color:"danger",label:"Delete Sessions",onClick:e[8]||(e[8]=ae=>D())})])]}),_:1})])]),_:1})]),_:1}))}};export{ie as default};

View File

@@ -1 +0,0 @@
import{u as q,r as P,o as H,ai as s,c as x,d as l,w as S,e as n,_ as L,j as f,f as k,F as g,i as T,N as _,g as v,x as Q,M as z,aj as J,k as w,ak as K,al as W,a8 as X,am as Y,h as Z,an as ee,n as ae,ao as te,a4 as re,ap as D,aq as p,ar as se}from"./index-vA9N45XP.js";const oe={class:"grid grid-cols-2 sm:grid-cols-3 gap-6 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 3xl:grid-cols-5 mb-6"},le={class:"grid grid-flow-row auto-rows-auto grid-cols-2 md:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-3 3xl:grid-cols-4 4xl:grid-cols-6 gap-5 mb-5"},ne={key:0},me={__name:"PublicView",setup(ce){const $=q().params.id,o=P({});async function O(){try{o.value={};var e=await te($);e.name||(e.name="Unclaimed Account"),o.value=e}catch(t){console.error("Failed to fetch user profile data:",t)}}H(async()=>{O(),console.log(o.value)});const c=s(()=>o.value.userProfiles),d=s(()=>o.value.userScoreStats),E=s(()=>{var e;return(e=c.value)==null?void 0:e.reduce((t,a)=>t+a.data.total_plays,0)}),I=s(()=>{var e;return(e=c.value)==null?void 0:e.length}),j=s(()=>{var a;const e=r=>{const i={};return r.forEach(u=>{const m=new Date(u*1e3).toISOString().split("T")[0];i[m]=(i[m]||0)+1}),i};var t=0;return(a=c.value)==null||a.forEach(r=>{var y,b;const i=(y=r.data)!=null&&y.arcade_history?(b=r.data)==null?void 0:b.arcade_history:{},u=[];Object.values(i).forEach(V=>{Object.values(V).forEach(N=>{u.push(...N)})});const m=e(u),h=Math.max(...Object.values(m));t=Math.max(t,h)}),t});function A(e){if(e){var t=[];for(const a of e){const r=re(a.game);r&&!r.skip&&t.push(a)}return t.sort(function(a,r){return r.data.last_play_timestamp-a.data.last_play_timestamp}),t}}const C=new Date().toISOString().split("T")[0],B=s(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.attempts)==null?void 0:t.length)||0}),U=s(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.records)==null?void 0:t.length)||0}),F=s(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.attempts)==null?void 0:t.filter(a=>new Date(a.timestamp*1e3).toISOString().split("T")[0]===C).length)||0}),G=s(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.records)==null?void 0:t.filter(a=>new Date(a.timestamp*1e3).toISOString().split("T")[0]===C).length)||0}),M=s(()=>{var a;const e=new Date().toISOString().split("T")[0];let t=0;return(a=c.value)==null||a.forEach(r=>{var u;const i=((u=r.data)==null?void 0:u.arcade_history)||{};Object.values(i).forEach(m=>{Object.values(m).forEach(h=>{h.forEach(y=>{new Date(y*1e3).toISOString().split("T")[0]===e&&t++})})})}),t}),R=P([{label:"Cumulative Plays",icon:D,iconColor:"text-emerald-600",suffix:"play",number:E},{label:"Games Played",icon:p,iconColor:"text-sky-300",suffix:"game",number:I},{label:"Plays Today",icon:D,iconColor:"text-sky-300",suffix:"play",number:M},{label:"Longest Play Streak",icon:se,iconColor:"text-red-500",suffix:"play",number:j},{label:"Total Records",icon:p,iconColor:"text-sky-300",suffix:"record",number:U},{label:"Total Attempts",icon:p,iconColor:"text-sky-300",suffix:"attempt",number:B},{label:"Records Today",icon:p,iconColor:"text-sky-300",suffix:"record",number:G},{label:"Attempts Today",icon:p,iconColor:"text-sky-300",suffix:"attempt",number:F}]);return(e,t)=>(l(),x(ae,null,{default:S(()=>[n(L,null,{default:S(()=>[o.value!=null?(l(),f(g,{key:0},[n(_,{icon:v(Q),title:`${o.value.name}'s Profile`,main:""},null,8,["icon","title"]),n(z,{class:"mb-6","override-profile":o.value,"use-small":""},null,8,["override-profile"]),n(_,{icon:v(J),title:"Quick Stats",main:""},null,8,["icon"]),T("div",oe,[(l(!0),f(g,null,w(R.value,a=>(l(),f(g,{key:a.label},[a.number?(l(),x(K,{key:0,icon:a.icon,number:a.number,label:a.label,suffix:`${a.suffix}${a.number==1?"":"s"}`,"icon-color":a.iconColor},null,8,["icon","number","label","suffix","icon-color"])):k("",!0)],64))),128))]),n(_,{icon:v(W),title:"Showcase",main:""},null,8,["icon"]),T("div",le,[(l(!0),f(g,null,w(A(c.value),a=>(l(),x(X,{key:a.game,game:a.game,value:a.data.total_plays,"profile-name":"",type:"plays"},null,8,["game","value"]))),128))]),n(_,{icon:v(Y),title:"Play Trends",main:""},null,8,["icon"]),n(Z,{class:"mb-6"},{default:S(()=>[c.value?(l(),f("div",ne,[n(ee,{data:e.generateChartData(c.value,d.value),class:"h-96"},null,8,["data"])])):k("",!0)]),_:1})],64)):k("",!0)]),_:1})]),_:1}))}};export{me as default};

View File

@@ -0,0 +1 @@
import{a as N,r as C,o as H,al as r,c as x,d as l,w as S,e as n,_ as L,j as f,f as k,F as g,i as T,P as _,g as v,x as Q,O as z,am as J,k as w,an as K,ao as W,ab as X,ap as Y,h as Z,aq as ee,n as ae,ar as te,a7 as se,as as D,at as p,au as re}from"./index-CHivKhhP.js";const oe={class:"grid grid-cols-2 sm:grid-cols-3 gap-6 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 3xl:grid-cols-5 mb-6"},le={class:"grid grid-flow-row auto-rows-auto grid-cols-2 md:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-3 3xl:grid-cols-4 4xl:grid-cols-6 gap-5 mb-5"},ne={key:0},me={__name:"PublicView",setup(ce){const O=N().params.id,o=C({});async function $(){try{o.value={};var e=await te(O);e.name||(e.name="Unclaimed Account"),o.value=e}catch(t){console.error("Failed to fetch user profile data:",t)}}H(async()=>{$(),console.log(o.value)});const c=r(()=>o.value.userProfiles),d=r(()=>o.value.userScoreStats),E=r(()=>{var e;return(e=c.value)==null?void 0:e.reduce((t,a)=>t+a.data.total_plays,0)}),I=r(()=>{var e;return(e=c.value)==null?void 0:e.length}),A=r(()=>{var a;const e=s=>{const i={};return s.forEach(u=>{const m=new Date(u*1e3).toISOString().split("T")[0];i[m]=(i[m]||0)+1}),i};var t=0;return(a=c.value)==null||a.forEach(s=>{var y,b;const i=(y=s.data)!=null&&y.arcade_history?(b=s.data)==null?void 0:b.arcade_history:{},u=[];Object.values(i).forEach(M=>{Object.values(M).forEach(q=>{u.push(...q)})});const m=e(u),h=Math.max(...Object.values(m));t=Math.max(t,h)}),t});function B(e){if(e){var t=[];for(const a of e){const s=se(a.game);s&&!s.skip&&t.push(a)}return t.sort(function(a,s){return s.data.last_play_timestamp-a.data.last_play_timestamp}),t}}const P=new Date().toISOString().split("T")[0],U=r(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.attempts)==null?void 0:t.length)||0}),j=r(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.records)==null?void 0:t.length)||0}),F=r(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.attempts)==null?void 0:t.filter(a=>new Date(a.timestamp*1e3).toISOString().split("T")[0]===P).length)||0}),G=r(()=>{var e,t;return((t=(e=d.value)==null?void 0:e.records)==null?void 0:t.filter(a=>new Date(a.timestamp*1e3).toISOString().split("T")[0]===P).length)||0}),R=r(()=>{var a;const e=new Date().toISOString().split("T")[0];let t=0;return(a=c.value)==null||a.forEach(s=>{var u;const i=((u=s.data)==null?void 0:u.arcade_history)||{};Object.values(i).forEach(m=>{Object.values(m).forEach(h=>{h.forEach(y=>{new Date(y*1e3).toISOString().split("T")[0]===e&&t++})})})}),t}),V=C([{label:"Cumulative Plays",icon:D,iconColor:"text-emerald-600",suffix:"play",number:E},{label:"Games Played",icon:p,iconColor:"text-sky-300",suffix:"game",number:I},{label:"Plays Today",icon:D,iconColor:"text-sky-300",suffix:"play",number:R},{label:"Longest Play Streak",icon:re,iconColor:"text-red-500",suffix:"play",number:A},{label:"Total Records",icon:p,iconColor:"text-sky-300",suffix:"record",number:j},{label:"Total Attempts",icon:p,iconColor:"text-sky-300",suffix:"attempt",number:U},{label:"Records Today",icon:p,iconColor:"text-sky-300",suffix:"record",number:G},{label:"Attempts Today",icon:p,iconColor:"text-sky-300",suffix:"attempt",number:F}]);return(e,t)=>(l(),x(ae,null,{default:S(()=>[n(L,null,{default:S(()=>[o.value!=null?(l(),f(g,{key:0},[n(_,{icon:v(Q),title:`${o.value.name}'s Profile`,main:""},null,8,["icon","title"]),n(z,{class:"mb-6","override-profile":o.value,"use-small":""},null,8,["override-profile"]),n(_,{icon:v(J),title:"Quick Stats",main:""},null,8,["icon"]),T("div",oe,[(l(!0),f(g,null,w(V.value,a=>(l(),f(g,{key:a.label},[a.number?(l(),x(K,{key:0,icon:a.icon,number:a.number,label:a.label,suffix:`${a.suffix}${a.number==1?"":"s"}`,"icon-color":a.iconColor},null,8,["icon","number","label","suffix","icon-color"])):k("",!0)],64))),128))]),n(_,{icon:v(W),title:"Showcase",main:""},null,8,["icon"]),T("div",le,[(l(!0),f(g,null,w(B(c.value),a=>(l(),x(X,{key:a.game,game:a.game,value:a.data.total_plays,"profile-name":"",type:"plays"},null,8,["game","value"]))),128))]),n(_,{icon:v(Y),title:"Play Trends",main:""},null,8,["icon"]),n(Z,{class:"mb-6"},{default:S(()=>[c.value?(l(),f("div",ne,[n(ee,{data:e.generateChartData(c.value,d.value),class:"h-96"},null,8,["data"])])):k("",!0)]),_:1})],64)):k("",!0)]),_:1})]),_:1}))}};export{me as default};

View File

@@ -1 +1 @@
import{a as V,r as v,p as _,c as p,d as c,w as r,i as a,e as s,h as y,s as X,v as I,g as t,x as P,z as U,y as u,A as $,f as h,l as f,B as A,C,D as q}from"./index-vA9N45XP.js";import{_ as R}from"./FormCheckRadio-Roj-HW28.js";import{_ as n}from"./FormField-BJ53twuK.js";import{_ as d}from"./FormControl-CbA50xCq.js";import{_ as k}from"./LayoutGuest-CyALIrih.js";const D={class:"flex md:min-h-screen md:items-center md:justify-center"},B={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},N={class:"flex gap-2 mt-4"},S={class:"col-span-2"},E={class:"flex flex-col gap-2 my-4"},G={__name:"RegisterView",setup(L){const g=V(),m=v(!1),l=_({username:"",email:"",newPassword:"",confirmPassword:"",pin:"",cardId:"",remember:!0});function w(i){var e=i.target.value;e=e.replace(/[^0-9]/g,""),l.pin=e}function x(i){var e=i.target.value;e=e.replace(/[^A-Za-z0-9]/g,""),e=e.toUpperCase().replace(/(.{4})/g,"$1-").replace(/-$/,""),l.cardId=e}async function b(){m.value=!0,(await q(l)).status=="success"&&(m.value=!1,alert("User account registered. Please log in!"),g.push("login"))}return(i,e)=>(c(),p(k,null,{default:r(()=>[a("div",D,[s(y,{class:"w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl","has-table":"","is-auth":""},{default:r(()=>[a("div",B,[e[10]||(e[10]=a("div",{class:"flex flex-col items-center text-wrap h-full md:mt-5"},[a("img",{src:X,class:"rounded-full shadow-lg mb-2"}),a("h1",{class:"text-xl"},[a("samp",null,"PhaseII")]),a("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Spinnin' since 2021 "),a("hr",{class:"border-t border-1 my-1 w-full"}),a("p",{class:"text-lg relative bottom-0"},"Account Registration")],-1)),e[11]||(e[11]=a("div",{class:"md:border-r md:border-1"},null,-1)),a("div",null,[a("form",{class:"grid grid-cols-2 gap-x-2",onSubmit:e[7]||(e[7]=I(o=>b(),["prevent"]))},[s(n,{label:"Desired Username"},{default:r(()=>[s(d,{modelValue:l.username,"onUpdate:modelValue":e[0]||(e[0]=o=>l.username=o),icon:t(P),name:"username",required:"",autocomplete:"username"},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Email Address"},{default:r(()=>[s(d,{modelValue:l.email,"onUpdate:modelValue":e[1]||(e[1]=o=>l.email=o),icon:t(U),type:"email",name:"email",required:"",autocomplete:"email"},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Password"},{default:r(()=>[s(d,{modelValue:l.newPassword,"onUpdate:modelValue":e[2]||(e[2]=o=>l.newPassword=o),icon:t(u),name:"newPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Password Confirmation"},{default:r(()=>[s(d,{modelValue:l.confirmPassword,"onUpdate:modelValue":e[3]||(e[3]=o=>l.confirmPassword=o),icon:t(u),name:"confirmPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Card ID",help:"The ACCESS CODE provided by the game."},{default:r(()=>[s(d,{modelValue:l.cardId,"onUpdate:modelValue":e[4]||(e[4]=o=>l.cardId=o),icon:t($),name:"cardId",type:"card",placeholder:"XXXX-XXXX-XXXX-XXXX",minlength:19,maxlength:19,required:"",onInput:x},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Game PIN"},{default:r(()=>[s(d,{modelValue:l.pin,"onUpdate:modelValue":e[5]||(e[5]=o=>l.pin=o),icon:t(u),type:"password",name:"pin",required:"",minlength:4,maxlength:4,inputmode:"numeric",pattern:"\\d{4}",autocomplete:"pin",onInput:w},null,8,["modelValue","icon"])]),_:1}),s(R,{modelValue:l.remember,"onUpdate:modelValue":e[6]||(e[6]=o=>l.remember=o),class:"col-span-2",name:"remember",label:"Remember Me","input-value":!0},null,8,["modelValue"]),a("div",N,[s(f,{type:"submit",label:"Register",color:"success"}),m.value?(c(),p(A,{key:0,path:t(C),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):h("",!0)])],32),a("div",S,[e[9]||(e[9]=a("hr",{class:"border-t border-1 my-4 w-full"},null,-1)),a("div",E,[e[8]||(e[8]=a("h2",null,"Have an Account?",-1)),s(f,{label:"Log In",color:"info",href:"/#/auth/login"})])])])])]),_:1})])]),_:1}))}};export{G as default};
import{b as V,r as v,p as _,c as p,d as c,w as r,i as a,e as s,h as y,s as X,v as I,g as t,x as P,z as U,y as u,B as $,f as h,l as f,C,D as A,E as q}from"./index-CHivKhhP.js";import{_ as R}from"./FormCheckRadio-DdZBsrII.js";import{_ as n}from"./FormField-vtioLqMT.js";import{_ as d}from"./FormControl-BLuW9GWW.js";import{_ as k}from"./LayoutGuest-BkkpHMD9.js";const D={class:"flex md:min-h-screen md:items-center md:justify-center"},B={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},E={class:"flex gap-2 mt-4"},N={class:"col-span-2"},S={class:"flex flex-col gap-2 my-4"},G={__name:"RegisterView",setup(L){const g=V(),m=v(!1),l=_({username:"",email:"",newPassword:"",confirmPassword:"",pin:"",cardId:"",remember:!0});function w(i){var e=i.target.value;e=e.replace(/[^0-9]/g,""),l.pin=e}function b(i){var e=i.target.value;e=e.replace(/[^A-Za-z0-9]/g,""),e=e.toUpperCase().replace(/(.{4})/g,"$1-").replace(/-$/,""),l.cardId=e}async function x(){m.value=!0,(await q(l)).status=="success"&&(m.value=!1,alert("User account registered. Please log in!"),g.push("login"))}return(i,e)=>(c(),p(k,null,{default:r(()=>[a("div",D,[s(y,{class:"w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl","has-table":"","is-auth":""},{default:r(()=>[a("div",B,[e[10]||(e[10]=a("div",{class:"flex flex-col items-center text-wrap h-full md:mt-5"},[a("img",{src:X,class:"rounded-full shadow-lg mb-2"}),a("h1",{class:"text-xl"},[a("samp",null,"PhaseII")]),a("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Spinnin' since 2021 "),a("hr",{class:"border-t border-1 my-1 w-full"}),a("p",{class:"text-lg relative bottom-0"},"Account Registration")],-1)),e[11]||(e[11]=a("div",{class:"md:border-r md:border-1"},null,-1)),a("div",null,[a("form",{class:"grid grid-cols-2 gap-x-2",onSubmit:e[7]||(e[7]=I(o=>x(),["prevent"]))},[s(n,{label:"Desired Username"},{default:r(()=>[s(d,{modelValue:l.username,"onUpdate:modelValue":e[0]||(e[0]=o=>l.username=o),icon:t(P),name:"username",required:"",autocomplete:"username"},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Email Address"},{default:r(()=>[s(d,{modelValue:l.email,"onUpdate:modelValue":e[1]||(e[1]=o=>l.email=o),icon:t(U),type:"email",name:"email",required:"",autocomplete:"email"},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Password"},{default:r(()=>[s(d,{modelValue:l.newPassword,"onUpdate:modelValue":e[2]||(e[2]=o=>l.newPassword=o),icon:t(u),name:"newPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Password Confirmation"},{default:r(()=>[s(d,{modelValue:l.confirmPassword,"onUpdate:modelValue":e[3]||(e[3]=o=>l.confirmPassword=o),icon:t(u),name:"confirmPassword",type:"password",required:""},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Card ID",help:"The ACCESS CODE provided by the game."},{default:r(()=>[s(d,{modelValue:l.cardId,"onUpdate:modelValue":e[4]||(e[4]=o=>l.cardId=o),icon:t($),name:"cardId",type:"card",placeholder:"XXXX-XXXX-XXXX-XXXX",minlength:19,maxlength:19,required:"",onInput:b},null,8,["modelValue","icon"])]),_:1}),s(n,{label:"Game PIN"},{default:r(()=>[s(d,{modelValue:l.pin,"onUpdate:modelValue":e[5]||(e[5]=o=>l.pin=o),icon:t(u),type:"password",name:"pin",required:"",minlength:4,maxlength:4,inputmode:"numeric",pattern:"\\d{4}",autocomplete:"pin",onInput:w},null,8,["modelValue","icon"])]),_:1}),s(R,{modelValue:l.remember,"onUpdate:modelValue":e[6]||(e[6]=o=>l.remember=o),class:"col-span-2",name:"remember",label:"Remember Me","input-value":!0},null,8,["modelValue"]),a("div",E,[s(f,{type:"submit",label:"Register",color:"success"}),m.value?(c(),p(C,{key:0,path:t(A),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):h("",!0)])],32),a("div",N,[e[9]||(e[9]=a("hr",{class:"border-t border-1 my-4 w-full"},null,-1)),a("div",S,[e[8]||(e[8]=a("h2",null,"Have an Account?",-1)),s(f,{label:"Log In",color:"info",href:"/#/auth/login"})])])])])]),_:1})])]),_:1}))}};export{G as default};

View File

@@ -0,0 +1 @@
import{b as P,p as k,c as u,d as o,w as r,i as t,e as a,h as v,s as S,j as m,f as n,v as w,g as i,G as K,l as c,C as y,D as h,H as $,I as A,t as C,y as x,J as I,K as R,L as E}from"./index-CHivKhhP.js";import{_ as f}from"./FormField-vtioLqMT.js";import{_ as p}from"./FormControl-BLuW9GWW.js";import{_ as N}from"./LayoutGuest-BkkpHMD9.js";const U={class:"flex md:min-h-screen md:items-center md:justify-center"},B={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},L={class:"grid grid-cols-1 gap-2"},q={class:"mb-4"},j={class:"text-xl"},D={class:"font-bold"},O={key:3,class:"border-t border-1 mt-3 w-full"},G={key:4,class:"flex flex-col gap-2 my-1"},z={__name:"ResetView",setup(H){const b=P(),e=k({email:"",loading:!1,emailSent:!1,authKey:null,authValid:!1,username:null,newPassword:"",confirmPassword:""});async function g(){e.loading=!0,(await I(e.email)).status=="success"&&(e.emailSent=!0,e.loading=!1)}async function V(){e.loading=!0;const d=await R(e.authKey);d.status=="success"&&(e.authValid=!0,e.loading=!1,e.username=d.username)}async function _(){if(e.newPassword!=e.confirmPassword){alert("Passwords don't match!");return}e.loading=!0,(await E(e.authKey,e.newPassword,e.confirmPassword)).status=="success"&&(alert("Password changed!"),b.push("/auth/login"))}return(d,s)=>(o(),u(N,null,{default:r(()=>[t("div",U,[a(v,{class:"w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl","has-table":"","is-auth":""},{default:r(()=>[t("div",B,[s[10]||(s[10]=t("div",{class:"flex flex-col items-center text-wrap h-full md:mt-5"},[t("img",{src:S,class:"rounded-full shadow-lg mb-2"}),t("h1",{class:"text-xl"},[t("samp",null,"PhaseII")]),t("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Spinnin' since 2021 "),t("hr",{class:"border-t border-1 my-1 w-full"}),t("p",{class:"text-lg relative bottom-0"},"Password Reset")],-1)),s[11]||(s[11]=t("div",{class:"md:border-r md:border-1"},null,-1)),t("div",L,[e.emailSent?n("",!0):(o(),m("form",{key:0,onSubmit:s[1]||(s[1]=w(l=>g(),["prevent"]))},[a(f,{label:"Email Address"},{default:r(()=>[a(p,{modelValue:e.email,"onUpdate:modelValue":s[0]||(s[0]=l=>e.email=l),icon:i(K),type:"email",autocomplete:"email",required:""},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Check",type:"submit",color:"info"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)),e.emailSent&&!e.authValid?(o(),m("form",{key:1,onSubmit:s[3]||(s[3]=w(l=>V(),["prevent"]))},[a(f,{label:"Auth Key"},{default:r(()=>[a(p,{modelValue:e.authKey,"onUpdate:modelValue":s[2]||(s[2]=l=>e.authKey=l),icon:i($),type:"text",name:"token",inputmode:"numeric",pattern:"[0-9]*",autocomplete:"one-time-code",maxlength:6},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Unlock",type:"submit",color:"info"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)):n("",!0),e.emailSent&&e.authValid?(o(),m("form",{key:2,onSubmit:s[6]||(s[6]=w(l=>_(),["prevent"]))},[t("div",q,[t("h1",j,[s[7]||(s[7]=A(" Welcome, ")),t("span",D,C(e.username),1)]),s[8]||(s[8]=t("p",{class:"text-sm text-gray-400"}," Look who forgot their password ",-1))]),a(f,{label:"New Password"},{default:r(()=>[a(p,{modelValue:e.newPassword,"onUpdate:modelValue":s[4]||(s[4]=l=>e.newPassword=l),icon:i(x),type:"password",required:"",minlength:"8"},null,8,["modelValue","icon"])]),_:1}),a(f,{label:"Confirm Password"},{default:r(()=>[a(p,{modelValue:e.confirmPassword,"onUpdate:modelValue":s[5]||(s[5]=l=>e.confirmPassword=l),icon:i(x),type:"password",required:"",minlength:"8"},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Reset Password",type:"submit",color:"success"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)):n("",!0),e.authValid?n("",!0):(o(),m("hr",O)),e.authValid?n("",!0):(o(),m("div",G,[s[9]||(s[9]=t("h2",null,"Remember it?",-1)),a(c,{label:"Log In",color:"success",href:"/#/auth/login"})]))])])]),_:1})])]),_:1}))}};export{z as default};

View File

@@ -1 +0,0 @@
import{a as P,p as k,c as u,d as o,w as r,i as t,e as a,h as v,s as S,j as m,f as n,v as w,g as i,E as K,l as c,B as y,C as h,G as $,H as A,t as C,y as x,I,J as E,K as R}from"./index-vA9N45XP.js";import{_ as f}from"./FormField-BJ53twuK.js";import{_ as p}from"./FormControl-CbA50xCq.js";import{_ as B}from"./LayoutGuest-CyALIrih.js";const N={class:"flex md:min-h-screen md:items-center md:justify-center"},U={class:"p-4 flex flex-col md:flex-row w-full space-y-2 md:space-y-0 md:space-x-4"},q={class:"grid grid-cols-1 gap-2"},L={class:"mb-4"},j={class:"text-xl"},O={class:"font-bold"},D={key:3,class:"border-t border-1 mt-3 w-full"},G={key:4,class:"flex flex-col gap-2 my-1"},z={__name:"ResetView",setup(H){const g=P(),e=k({email:"",loading:!1,emailSent:!1,authKey:null,authValid:!1,username:null,newPassword:"",confirmPassword:""});async function b(){e.loading=!0,(await I(e.email)).status=="success"&&(e.emailSent=!0,e.loading=!1)}async function V(){e.loading=!0;const d=await E(e.authKey);d.status=="success"&&(e.authValid=!0,e.loading=!1,e.username=d.username)}async function _(){if(e.newPassword!=e.confirmPassword){alert("Passwords don't match!");return}e.loading=!0,(await R(e.authKey,e.newPassword,e.confirmPassword)).status=="success"&&(alert("Password changed!"),g.push("/auth/login"))}return(d,s)=>(o(),u(B,null,{default:r(()=>[t("div",N,[a(v,{class:"w-full md:w-auto rounded-none md:rounded-xl md:drop-shadow-xl","has-table":"","is-auth":""},{default:r(()=>[t("div",U,[s[10]||(s[10]=t("div",{class:"flex flex-col items-center text-wrap h-full md:mt-5"},[t("img",{src:S,class:"rounded-full shadow-lg mb-2"}),t("h1",{class:"text-xl"},[t("samp",null,"PhaseII")]),t("p",{class:"text-sm text-gray-700 dark:text-white/75"}," Spinnin' since 2021 "),t("hr",{class:"border-t border-1 my-1 w-full"}),t("p",{class:"text-lg relative bottom-0"},"Password Reset")],-1)),s[11]||(s[11]=t("div",{class:"md:border-r md:border-1"},null,-1)),t("div",q,[e.emailSent?n("",!0):(o(),m("form",{key:0,onSubmit:s[1]||(s[1]=w(l=>b(),["prevent"]))},[a(f,{label:"Email Address"},{default:r(()=>[a(p,{modelValue:e.email,"onUpdate:modelValue":s[0]||(s[0]=l=>e.email=l),icon:i(K),type:"email",autocomplete:"email",required:""},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Check",type:"submit",color:"info"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)),e.emailSent&&!e.authValid?(o(),m("form",{key:1,onSubmit:s[3]||(s[3]=w(l=>V(),["prevent"]))},[a(f,{label:"Auth Key"},{default:r(()=>[a(p,{modelValue:e.authKey,"onUpdate:modelValue":s[2]||(s[2]=l=>e.authKey=l),icon:i($),type:"text",name:"token",inputmode:"numeric",pattern:"[0-9]*",autocomplete:"one-time-code",maxlength:6},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Unlock",type:"submit",color:"info"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)):n("",!0),e.emailSent&&e.authValid?(o(),m("form",{key:2,onSubmit:s[6]||(s[6]=w(l=>_(),["prevent"]))},[t("div",L,[t("h1",j,[s[7]||(s[7]=A(" Welcome, ")),t("span",O,C(e.username),1)]),s[8]||(s[8]=t("p",{class:"text-sm text-gray-400"}," Look who forgot their password ",-1))]),a(f,{label:"New Password"},{default:r(()=>[a(p,{modelValue:e.newPassword,"onUpdate:modelValue":s[4]||(s[4]=l=>e.newPassword=l),icon:i(x),type:"password",required:"",minlength:"8"},null,8,["modelValue","icon"])]),_:1}),a(f,{label:"Confirm Password"},{default:r(()=>[a(p,{modelValue:e.confirmPassword,"onUpdate:modelValue":s[5]||(s[5]=l=>e.confirmPassword=l),icon:i(x),type:"password",required:"",minlength:"8"},null,8,["modelValue","icon"])]),_:1}),a(c,{label:"Reset Password",type:"submit",color:"success"}),e.loading?(o(),u(y,{key:0,path:i(h),color:"text-yellow-500",class:"animate animate-spin"},null,8,["path"])):n("",!0)],32)):n("",!0),e.authValid?n("",!0):(o(),m("hr",D)),e.authValid?n("",!0):(o(),m("div",G,[s[9]||(s[9]=t("h2",null,"Remember it?",-1)),a(c,{label:"Log In",color:"success",href:"/#/auth/login"})]))])])]),_:1})])]),_:1}))}};export{z as default};

View File

@@ -0,0 +1 @@
import{a as L,b as D,a7 as G,r as y,p as k,M as N,o as j,c as _,d as r,w as i,e as a,_ as E,f as v,g as c,j as p,i as s,P,bA as M,h,F as $,k as A,t as g,l as R,bB as U,n as Y}from"./index-CHivKhhP.js";import{_ as q}from"./GameHeader-CbS6z4E_.js";import{_ as z}from"./ProfileCard-D5atgNuu.js";import{_ as C}from"./FormControl-BLuW9GWW.js";import{_ as H}from"./FormField-vtioLqMT.js";import{A as J,a as K}from"./profile-LMvWxmH8.js";import{d as O}from"./userData-DZYdegtD.js";import"./sources-0lyug9Pk.js";const Q={key:0,class:"w-full md:flex md:-mt-[75px] mb-4 place-content-end"},T={class:"md:w-1/3 md:text-right"},W={key:1,class:"w-full"},X={class:"grid gap-4"},Z={class:"flex w-full place-content-between"},ee={class:"text-lg md:text-xl"},se={class:"text-md md:text-lg font-mono"},te={class:"flex align-middle"},le={class:"grid gap-3"},oe={class:"flex justify-between items-center"},re={class:"flex"},ae={class:"grid"},ne={class:"text-lg"},ie={class:"text-md font-mono"},ge={__name:"RivalsView",setup(de){const I=L(),F=D();var m=null,d=null;m=I.params.game,d=G(m);const n=y(null),V=y([]),l=k({currentVersion:null});N(()=>l.currentVersion,()=>{w(),b()}),j(async()=>{b(),w()}),d.versions||(l.currentVersion=1);async function w(){try{n.value=null;const e=await J(m,l.currentVersion);n.value=e,e&&!l.currentVersion&&(l.currentVersion=e.versions[e.versions.length-1])}catch(e){console.error("Failed to fetch user profile data:",e)}}async function b(){try{const e=await K(m,l.currentVersion);V.value=e}catch(e){console.error("Failed to fetch profile data:",e)}}function S(e){var o=[];for(const t of d.versions)e.includes(t.id)&&o.push(t);return o}const u=k({filter:null});d||F.push({name:"ErrorPage",params:{catchAll:"404"}});function B(){if(u.filter)return V.value.filter(e=>e.username.toLowerCase().includes(u.filter.toLowerCase())||e.extid.toString().toLowerCase().includes(u.filter.toLowerCase()))}return(e,o)=>(r(),_(Y,null,{default:i(()=>[a(E,null,{default:i(()=>[a(q,{game:c(d),version:l.currentVersion},{default:i(()=>[c(d).versions&&n.value?(r(),p("div",Q,[s("div",T,[o[2]||(o[2]=s("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),a(C,{modelValue:l.currentVersion,"onUpdate:modelValue":o[0]||(o[0]=t=>l.currentVersion=t),options:S(n.value.versions)},null,8,["modelValue","options"])])])):v("",!0),n.value?(r(),p("div",W,[a(z,{game:c(m),version:l.currentVersion,profile:n.value,"use-small":""},null,8,["game","version","profile"])])):v("",!0)]),_:1},8,["game","version"]),a(P,{icon:c(M),title:"Add a Rival",main:""},null,8,["icon"]),l.currentVersion?(r(),_(h,{key:0,class:"mb-6"},{default:i(()=>[a(H,{label:"Search",help:"Search by username or Rival ID to add a rival.",class:"w-full md:w-1/3"},{default:i(()=>[a(C,{modelValue:u.filter,"onUpdate:modelValue":o[1]||(o[1]=t=>u.filter=t),"model-value":u.filter,placeholder:"1234-5678"},null,8,["modelValue","model-value"])]),_:1}),s("div",X,[(r(!0),p($,null,A(B(),t=>{var f;return r(),p("div",{key:t.id,class:"bg-slate-800 p-4 rounded-xl"},[s("div",Z,[s("div",null,[s("h1",ee,g(t.username),1),s("h2",se,g(c(O)(t.extid)),1)]),s("div",te,[a(R,{label:"Add Rival",color:"success",disabled:t.userId==((f=n.value)==null?void 0:f.userId),tooltip:"penis"},null,8,["disabled"])])])])}),128))])]),_:1})):v("",!0),a(P,{icon:c(U),title:"Rivals",main:""},null,8,["icon"]),l.currentVersion?(r(),_(h,{key:1,class:"mb-6"},{default:i(()=>{var t,f;return[s("div",le,[(r(!0),p($,null,A((t=n.value)==null?void 0:t.rivals,x=>(r(),_(h,{key:x.id},{default:i(()=>[s("div",oe,[s("div",re,[s("div",ae,[s("h1",ne,g(x.name),1),s("h2",ie,g(x.rivalID),1)])]),a(R,{label:"Remove Rival",color:"danger"})])]),_:2},1024))),128)),(f=n.value)!=null&&f.rivals?v("",!0):(r(),_(h,{key:0},{default:i(()=>o[3]||(o[3]=[s("h1",{class:"text-2xl"},"You have no rivals!",-1)])),_:1}))])]}),_:1})):v("",!0)]),_:1})]),_:1}))}};export{ge as default};

View File

@@ -1 +0,0 @@
import{u as B,a as D,a4 as G,r as y,p as k,L as N,o as j,c as _,d as r,w as i,e as a,_ as E,f as v,g as c,j as p,i as s,N as $,bx as U,h,F as P,k as R,t as x,l as A,by as M,n as Y}from"./index-vA9N45XP.js";import{_ as q}from"./GameHeader-DvtYwLzr.js";import{_ as z}from"./ProfileCard-C1HnxXZz.js";import{_ as C}from"./FormControl-CbA50xCq.js";import{_ as H}from"./FormField-BJ53twuK.js";import{A as J,a as K}from"./profile-CSjRk0MQ.js";import{d as O}from"./userData-DZYdegtD.js";import"./sources-CWr6W3sX.js";const Q={key:0,class:"w-full md:flex md:-mt-[75px] mb-4 place-content-end"},T={class:"md:w-1/3 md:text-right"},W={key:1,class:"w-full"},X={class:"grid gap-4"},Z={class:"flex w-full place-content-between"},ee={class:"text-lg md:text-xl"},se={class:"text-md md:text-lg font-mono"},te={class:"flex align-middle"},le={class:"grid gap-3"},oe={class:"flex justify-between items-center"},re={class:"flex"},ae={class:"grid"},ne={class:"text-lg"},ie={class:"text-md font-mono"},xe={__name:"RivalsView",setup(de){const I=B(),F=D();var m=null,d=null;m=I.params.game,d=G(m);const n=y(null),V=y([]),l=k({currentVersion:null});N(()=>l.currentVersion,()=>{w(),b()}),j(async()=>{b(),w()}),d.versions||(l.currentVersion=1);async function w(){try{n.value=null;const e=await J(m,l.currentVersion);n.value=e,e&&!l.currentVersion&&(l.currentVersion=e.versions[e.versions.length-1])}catch(e){console.error("Failed to fetch user profile data:",e)}}async function b(){try{const e=await K(m,l.currentVersion);V.value=e}catch(e){console.error("Failed to fetch profile data:",e)}}function L(e){var o=[];for(const t of d.versions)e.includes(t.id)&&o.push(t);return o}const u=k({filter:null});d||F.push({name:"ErrorPage",params:{catchAll:"404"}});function S(){if(u.filter)return V.value.filter(e=>e.username.toLowerCase().includes(u.filter.toLowerCase())||e.extid.toString().toLowerCase().includes(u.filter.toLowerCase()))}return(e,o)=>(r(),_(Y,null,{default:i(()=>[a(E,null,{default:i(()=>[a(q,{game:c(d),version:l.currentVersion},{default:i(()=>[c(d).versions&&n.value?(r(),p("div",Q,[s("div",T,[o[2]||(o[2]=s("h2",{class:"text-md sm:text-lg md:text-xl font-bold p-2"}," Select Version ",-1)),a(C,{modelValue:l.currentVersion,"onUpdate:modelValue":o[0]||(o[0]=t=>l.currentVersion=t),options:L(n.value.versions)},null,8,["modelValue","options"])])])):v("",!0),n.value?(r(),p("div",W,[a(z,{game:c(m),version:l.currentVersion,profile:n.value,"use-small":""},null,8,["game","version","profile"])])):v("",!0)]),_:1},8,["game","version"]),a($,{icon:c(U),title:"Add a Rival",main:""},null,8,["icon"]),l.currentVersion?(r(),_(h,{key:0,class:"mb-6"},{default:i(()=>[a(H,{label:"Search",help:"Search by username or Rival ID to add a rival.",class:"w-full md:w-1/3"},{default:i(()=>[a(C,{modelValue:u.filter,"onUpdate:modelValue":o[1]||(o[1]=t=>u.filter=t),"model-value":u.filter,placeholder:"1234-5678"},null,8,["modelValue","model-value"])]),_:1}),s("div",X,[(r(!0),p(P,null,R(S(),t=>{var f;return r(),p("div",{key:t.id,class:"bg-slate-800 p-4 rounded-xl"},[s("div",Z,[s("div",null,[s("h1",ee,x(t.username),1),s("h2",se,x(c(O)(t.extid)),1)]),s("div",te,[a(A,{label:"Add Rival",color:"success",disabled:t.userId==((f=n.value)==null?void 0:f.userId),tooltip:"penis"},null,8,["disabled"])])])])}),128))])]),_:1})):v("",!0),a($,{icon:c(M),title:"Rivals",main:""},null,8,["icon"]),l.currentVersion?(r(),_(h,{key:1,class:"mb-6"},{default:i(()=>{var t,f;return[s("div",le,[(r(!0),p(P,null,R((t=n.value)==null?void 0:t.rivals,g=>(r(),_(h,{key:g.id},{default:i(()=>[s("div",oe,[s("div",re,[s("div",ae,[s("h1",ne,x(g.name),1),s("h2",ie,x(g.rivalID),1)])]),a(A,{label:"Remove Rival",color:"danger"})])]),_:2},1024))),128)),(f=n.value)!=null&&f.rivals?v("",!0):(r(),_(h,{key:0},{default:i(()=>o[3]||(o[3]=[s("h1",{class:"text-2xl"},"You have no rivals!",-1)])),_:1}))])]}),_:1})):v("",!0)]),_:1})]),_:1}))}};export{xe as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{r as p,L as f,j as a,d as o,i as u,F as h,k as v,b0 as x}from"./index-vA9N45XP.js";const b={class:"relative overflow-hidden w-[320px] h-[554px] border"},g=["src"],k=["src"],w={__name:"UserSticker",props:{profile:{type:Object,default:null},version:{type:Number,default:14},size:{type:Number,default:320}},setup(_){const t=_,s=p(t.profile),l=p(t.version);f(()=>t.version,()=>{s.value=t.profile,l.value=t.version});const d="https://cdn.phaseii.network/file/PhaseII/game-assets/trbitem";function n(e){return`${d}/${l.value}/${e}.png`}function m(e){return{transform:`translate(${e.sticker_pos_x-150}px, ${e.sticker_pos_y-100}px) scale(${e.sticker_scale_x}, ${e.sticker_scale_x}) rotate(${e.sticker_rotate}deg)`,position:"absolute"}}return(e,y)=>{var i,c;return o(),a("div",b,[u("img",{src:n(((i=s.value.trbitem)==null?void 0:i.base)??0),class:"absolute w-[320px] h-[554px] drop-shadow-lg"},null,8,g),(o(!0),a(h,null,v(((c=s.value.trbitem)==null?void 0:c.stickers)??[],r=>(o(),a("div",{key:r.sticker_id,class:"absolute",style:x(m(r))},[u("img",{src:n(r.sticker_id),class:"w-[300px] h-[300px]"},null,8,k)],4))),128))])}}};export{w as _};
import{r as p,M as f,j as a,d as o,i as u,F as h,k as v,b3 as x}from"./index-CHivKhhP.js";const b={class:"relative overflow-hidden w-[320px] h-[554px] border"},g=["src"],k=["src"],w={__name:"UserSticker",props:{profile:{type:Object,default:null},version:{type:Number,default:14},size:{type:Number,default:320}},setup(_){const t=_,s=p(t.profile),l=p(t.version);f(()=>t.version,()=>{s.value=t.profile,l.value=t.version});const d="https://cdn.phaseii.network/file/PhaseII/game-assets/trbitem";function n(e){return`${d}/${l.value}/${e}.png`}function m(e){return{transform:`translate(${e.sticker_pos_x-150}px, ${e.sticker_pos_y-100}px) scale(${e.sticker_scale_x}, ${e.sticker_scale_x}) rotate(${e.sticker_rotate}deg)`,position:"absolute"}}return(e,y)=>{var i,c;return o(),a("div",b,[u("img",{src:n(((i=s.value.trbitem)==null?void 0:i.base)??0),class:"absolute w-[320px] h-[554px] drop-shadow-lg"},null,8,g),(o(!0),a(h,null,v(((c=s.value.trbitem)==null?void 0:c.stickers)??[],r=>(o(),a("div",{key:r.sticker_id,class:"absolute",style:x(m(r))},[u("img",{src:n(r.sticker_id),class:"w-[300px] h-[300px]"},null,8,k)],4))),128))])}}};export{w as _};

View File

@@ -0,0 +1 @@
import{b,r as v,o as g,p as k,c as U,d,w as o,e as a,_ as $,h as c,i as e,j as f,F as C,k as y,t as r,l as L,P as D,g as A,aL as B,n as V}from"./index-CHivKhhP.js";import{_ as F}from"./GeneralTable-Dm8yzA2j.js";import{_ as S}from"./FormField-vtioLqMT.js";import{_ as I}from"./FormControl-BLuW9GWW.js";import{i as j}from"./admin-YL_-tKB5.js";const M={class:"grid gap-4"},N={class:"md:flex w-full place-content-between"},O={class:"text-lg md:text-xl"},P={class:"text-md md:text-lg"},R={class:"text-md"},E={class:"bg-slate-900 p-2 rounded-md mt-2 w-14 max-w-16 text-center"},T={class:"text-lg font-mono text-pink-700"},q={class:"flex align-middle mt-2 md:mt-0 max-h-16"},z={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},G={class:"w-full"},Z={__name:"UsersView",setup(H){const h=b(),i=v([]),x=[{text:"User ID",value:"id",width:20,sortable:!0},{text:"Username",value:"username",width:150,sortable:!0},{text:"Admin",value:"admin",width:120,sortable:!0},{text:"Banned",value:"banned",width:120,sortable:!0},{text:"Discord Linked",value:"data.discord.linked",width:120,sortable:!0},{text:"Tachi Linked",value:"data.tachi.linked",width:120,sortable:!0}];g(async()=>{p()});async function p(){try{const t=await j();var l=[];for(var s of t)s.username||(s.username="Unclaimed Account"),l.push(s);i.value=l}catch(t){console.error("Failed to fetch user data:",t)}}const u=l=>{const s=l.id;h.push(`/profiles/${s}`)},n=k({filter:null});function w(){return n.filter?i.value.filter(l=>l.id.toString().toLowerCase().includes(n.filter.toLowerCase())||l.username.toLowerCase().includes(n.filter.toLowerCase())).slice(0,25):[]}return(l,s)=>(d(),U(V,null,{default:o(()=>[a($,null,{default:o(()=>[a(c,{class:"mb-6 p-1"},{default:o(()=>s[1]||(s[1]=[e("h1",{class:"text-3xl"},"User Management",-1),e("p",{class:"text-sm text-gray-400"},"Click a row to open User",-1)])),_:1}),a(c,{class:"mb-6"},{default:o(()=>[a(S,{label:"Search",help:"Search by ID or username.",class:"w-full md:w-1/3"},{default:o(()=>[a(I,{modelValue:n.filter,"onUpdate:modelValue":s[0]||(s[0]=t=>n.filter=t),"model-value":n.filter},null,8,["modelValue","model-value"])]),_:1}),e("div",M,[(d(!0),f(C,null,y(w(),t=>{var m,_;return d(),f("div",{key:t.id,class:"bg-slate-800 p-4 rounded-xl"},[e("div",N,[e("div",null,[e("h1",O,r(t.username),1),e("h2",P," User "+r(t.banned?"is":"isn't")+" banned. ",1),e("h2",R," Discord "+r((_=(m=t.data)==null?void 0:m.discord)!=null&&_.linked?"is":"isn't")+" linked. ",1),e("div",E,[e("h2",T,r(t.id),1)])]),e("div",q,[a(L,{label:"Open User",color:"info",onClick:J=>u(t)},null,8,["onClick"])])])])}),128))])]),_:1}),a(D,{icon:A(B),title:"All Users",color:"text-blue-400",main:""},null,8,["icon"]),a(c,{"has-table":"",class:"mb-6"},{default:o(()=>[e("div",z,[e("div",G,[a(F,{headers:x,items:i.value,"has-avatar":!0,onRowClicked:u},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{Z as default};

View File

@@ -1 +0,0 @@
import{a as v,r as b,o as g,p as k,c as U,d,w as o,e as a,_ as $,h as c,i as e,j as f,F as C,k as y,t as r,l as D,N as L,g as A,aI as B,n as V}from"./index-vA9N45XP.js";import{_ as F}from"./GeneralTable-7ScsFktP.js";import{_ as I}from"./FormField-BJ53twuK.js";import{_ as S}from"./FormControl-CbA50xCq.js";import{i as N}from"./admin-DLWnlEF3.js";const j={class:"grid gap-4"},M={class:"md:flex w-full place-content-between"},O={class:"text-lg md:text-xl"},R={class:"text-md md:text-lg"},E={class:"text-md"},P={class:"bg-slate-900 p-2 rounded-md mt-2 w-14 max-w-16 text-center"},T={class:"text-lg font-mono text-pink-700"},q={class:"flex align-middle mt-2 md:mt-0 max-h-16"},z={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},G={class:"w-full"},Z={__name:"UsersView",setup(H){const h=v(),i=b([]),x=[{text:"User ID",value:"id",width:20,sortable:!0},{text:"Username",value:"username",width:150,sortable:!0},{text:"Admin",value:"admin",width:120,sortable:!0},{text:"Banned",value:"banned",width:120,sortable:!0},{text:"Discord Linked",value:"data.discord.linked",width:120,sortable:!0},{text:"Tachi Linked",value:"data.tachi.linked",width:120,sortable:!0}];g(async()=>{p()});async function p(){try{const t=await N();var l=[];for(var s of t)s.username||(s.username="Unclaimed Account"),l.push(s);i.value=l}catch(t){console.error("Failed to fetch user data:",t)}}const u=l=>{const s=l.id;h.push(`/profiles/${s}`)},n=k({filter:null});function w(){return n.filter?i.value.filter(l=>l.id.toString().toLowerCase().includes(n.filter.toLowerCase())||l.username.toLowerCase().includes(n.filter.toLowerCase())).slice(0,25):[]}return(l,s)=>(d(),U(V,null,{default:o(()=>[a($,null,{default:o(()=>[a(c,{class:"mb-6 p-1"},{default:o(()=>s[1]||(s[1]=[e("h1",{class:"text-3xl"},"User Management",-1),e("p",{class:"text-sm text-gray-400"},"Click a row to open User",-1)])),_:1}),a(c,{class:"mb-6"},{default:o(()=>[a(I,{label:"Search",help:"Search by ID or username.",class:"w-full md:w-1/3"},{default:o(()=>[a(S,{modelValue:n.filter,"onUpdate:modelValue":s[0]||(s[0]=t=>n.filter=t),"model-value":n.filter},null,8,["modelValue","model-value"])]),_:1}),e("div",j,[(d(!0),f(C,null,y(w(),t=>{var m,_;return d(),f("div",{key:t.id,class:"bg-slate-800 p-4 rounded-xl"},[e("div",M,[e("div",null,[e("h1",O,r(t.username),1),e("h2",R," User "+r(t.banned?"is":"isn't")+" banned. ",1),e("h2",E," Discord "+r((_=(m=t.data)==null?void 0:m.discord)!=null&&_.linked?"is":"isn't")+" linked. ",1),e("div",P,[e("h2",T,r(t.id),1)])]),e("div",q,[a(D,{label:"Open User",color:"info",onClick:J=>u(t)},null,8,["onClick"])])])])}),128))])]),_:1}),a(L,{icon:A(B),title:"All Users",color:"text-blue-400",main:""},null,8,["icon"]),a(c,{"has-table":"",class:"mb-6"},{default:o(()=>[e("div",z,[e("div",G,[a(F,{headers:x,items:i.value,"has-avatar":!0,onRowClicked:u},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{Z as default};

View File

@@ -1 +1 @@
import{r as w,o as P,c as D,d as u,w as m,e as n,_ as I,j as f,f as M,M as O,F as T,N as b,g as y,ad as U,h as k,i as s,H as B,t as r,P as F,l as G,ae as j,n as L,af as Y,a4 as E}from"./index-vA9N45XP.js";import{_ as J}from"./GeneralTable-7ScsFktP.js";import{A as R}from"./music-DCIRUh38.js";const q={key:0,class:"grid grid-cols-1 md:grid-cols-2 gap-4"},H={controls:"",class:"mt-3 rounded-xl w-[640px] xl:w-[1280px]"},W=["src"],z={class:"text-center md:text-left grid grid-cols-1 place-content-start gap-6"},K={class:"space-y-2"},Q={class:"text-2xl xl:text-4xl font-bold"},X={class:"text-xl xl:text-3xl font-semibold"},Z={class:"text-xl xl:text-2xl font-light"},tt={key:1},et={class:"space-y-1 text-center"},at={class:"text-xl xl:text-xl"},st={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},lt={class:"w-full"},ct={__name:"VideoView",setup(ot){const e=w([]),V=w(!1),S=[{text:"Timestamp",value:"timestamp",sortable:!0,width:120},{text:"Song",value:"name",sortable:!0,width:120},{text:"Artist",value:"artist",sortable:!0,width:120},{text:"Game",value:"game",sortable:!0,width:120},{text:"Version",value:"version",sortable:!0,width:120},{text:"Status",value:"data.status",sortable:!0,width:120}];async function $(){e.value=null;try{const a=await Y();e.value=N(JSON.parse(JSON.stringify(a)));const t=[...new Set(e.value.map(l=>l.musicid))];if(t.length>0){const l=await R("iidx",a[0].version,t,!0),o=Object.fromEntries(l.map(i=>[i.id,i]));e.value=e.value.map(i=>{var d,c;return{...i,name:((d=o[i.musicid])==null?void 0:d.name)||"Unknown Song",artist:((c=o[i.musicid])==null?void 0:c.artist)||"Unknown Artist"}})}}catch(a){console.error("Failed to fetch video data:",a)}V.value=!1}P(async()=>{await $()});function N(a){a.sort(function(t,l){return l.timestamp-t.timestamp});for(const t of a){const l=E(t.game);if(t.game=l.name,t.version=l.versions.find(o=>o.id==t.version).label??0,t.timestamp){const o=new Date(t.timestamp*1e3);t.timestamp=o.toLocaleString()}}return a}const A=a=>{var t,l;(t=a.data)!=null&&t.url&&(a=(l=a.data)==null?void 0:l.url),navigator.clipboard.writeText(a).then(()=>{alert("Copied URL to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};function C(a){var t;window.open((t=a.data)==null?void 0:t.url,"_blank").focus()}return(a,t)=>(u(),D(L,null,{default:m(()=>[n(I,null,{default:m(()=>[n(O,{class:"mb-6","use-small":"","even-smaller":""}),e.value[0]?(u(),f(T,{key:0},[n(b,{icon:y(U),title:"Your Latest Upload",main:""},null,8,["icon"]),n(k,{class:"mb-6"},{default:m(()=>{var l,o,i,d,c,x,_,p,v;return[((o=(l=e.value[0])==null?void 0:l.data)==null?void 0:o.status)=="uploaded"?(u(),f("div",q,[s("video",H,[s("source",{src:(d=(i=e.value[0])==null?void 0:i.data)==null?void 0:d.url,type:"video/mp4"},null,8,W),t[1]||(t[1]=B(" Your browser does not support the video tag. "))]),s("div",z,[s("div",K,[s("div",null,[s("h1",Q,r((c=e.value[0])==null?void 0:c.name),1),s("h1",X,r((x=e.value[0])==null?void 0:x.artist),1)]),n(F,{class:"mx-1"}),s("h2",Z,r((_=e.value[0])==null?void 0:_.game)+" "+r((p=e.value[0])==null?void 0:p.version),1),s("p",null,r((v=e.value[0])==null?void 0:v.timestamp),1)]),s("div",null,[n(G,{color:"info",label:"Share",onClick:t[0]||(t[0]=it=>{var h,g;return A((g=(h=e.value[0])==null?void 0:h.data)==null?void 0:g.url)})})])])])):(u(),f("div",tt,[s("div",et,[t[2]||(t[2]=s("h1",{class:"text-2xl xl:text-4xl font-bold"}," Your video is still uploading! ",-1)),t[3]||(t[3]=s("h2",{class:"text-xl xl:text-2xl font-light"}," Please wait for the upload to complete. ",-1)),s("h2",at," Upload started at "+r(e.value[0].timestamp),1)])]))]}),_:1})],64)):M("",!0),n(b,{icon:y(j),title:"All Play Videos",main:""},null,8,["icon"]),n(k,{"has-table":""},{default:m(()=>[s("div",st,[s("div",lt,[n(J,{headers:S,items:e.value,onRowClicked:C},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{ct as default};
import{r as w,o as I,c as O,d as u,w as m,e as n,_ as P,j as f,f as D,O as T,F as U,P as b,g as y,ag as B,h as k,i as s,I as F,t as r,R as G,l as M,ah as j,n as L,ai as R,a7 as Y}from"./index-CHivKhhP.js";import{_ as E}from"./GeneralTable-Dm8yzA2j.js";import{A as J}from"./music-BegIU2Dv.js";const q={key:0,class:"grid grid-cols-1 md:grid-cols-2 gap-4"},W={controls:"",class:"mt-3 rounded-xl w-[640px] xl:w-[1280px]"},z=["src"],H={class:"text-center md:text-left grid grid-cols-1 place-content-start gap-6"},K={class:"space-y-2"},Q={class:"text-2xl xl:text-4xl font-bold"},X={class:"text-xl xl:text-3xl font-semibold"},Z={class:"text-xl xl:text-2xl font-light"},tt={key:1},et={class:"space-y-1 text-center"},at={class:"text-xl xl:text-xl"},st={class:"bg-white dark:bg-slate-900/95 rounded-2xl lg:flex lg:justify-between"},lt={class:"w-full"},ct={__name:"VideoView",setup(ot){const e=w([]),V=w(!1),S=[{text:"Timestamp",value:"timestamp",sortable:!0,width:120},{text:"Song",value:"name",sortable:!0,width:120},{text:"Artist",value:"artist",sortable:!0,width:120},{text:"Game",value:"game",sortable:!0,width:120},{text:"Version",value:"version",sortable:!0,width:120},{text:"Status",value:"data.status",sortable:!0,width:120}];async function $(){e.value=null;try{const a=await R();e.value=N(JSON.parse(JSON.stringify(a)));const t=[...new Set(e.value.map(l=>l.musicid))];if(t.length>0){const l=await J("iidx",a[0].version,t,!0),o=Object.fromEntries(l.map(i=>[i.id,i]));e.value=e.value.map(i=>{var d,c;return{...i,name:((d=o[i.musicid])==null?void 0:d.name)||"Unknown Song",artist:((c=o[i.musicid])==null?void 0:c.artist)||"Unknown Artist"}})}}catch(a){console.error("Failed to fetch video data:",a)}V.value=!1}I(async()=>{await $()});function N(a){a.sort(function(t,l){return l.timestamp-t.timestamp});for(const t of a){const l=Y(t.game);if(t.game=l.name,t.version=l.versions.find(o=>o.id==t.version).label??0,t.timestamp){const o=new Date(t.timestamp*1e3);t.timestamp=o.toLocaleString()}}return a}const A=a=>{var t,l;(t=a.data)!=null&&t.url&&(a=(l=a.data)==null?void 0:l.url),navigator.clipboard.writeText(a).then(()=>{alert("Copied URL to clipboard!")}).catch(()=>{alert("Failed to copy to clipboard!")})};function C(a){var t;window.open((t=a.data)==null?void 0:t.url,"_blank").focus()}return(a,t)=>(u(),O(L,null,{default:m(()=>[n(P,null,{default:m(()=>[n(T,{class:"mb-6","use-small":"","even-smaller":""}),e.value[0]?(u(),f(U,{key:0},[n(b,{icon:y(B),title:"Your Latest Upload",main:""},null,8,["icon"]),n(k,{class:"mb-6"},{default:m(()=>{var l,o,i,d,c,x,_,p,v;return[((o=(l=e.value[0])==null?void 0:l.data)==null?void 0:o.status)=="uploaded"?(u(),f("div",q,[s("video",W,[s("source",{src:(d=(i=e.value[0])==null?void 0:i.data)==null?void 0:d.url,type:"video/mp4"},null,8,z),t[1]||(t[1]=F(" Your browser does not support the video tag. "))]),s("div",H,[s("div",K,[s("div",null,[s("h1",Q,r((c=e.value[0])==null?void 0:c.name),1),s("h1",X,r((x=e.value[0])==null?void 0:x.artist),1)]),n(G,{class:"mx-1"}),s("h2",Z,r((_=e.value[0])==null?void 0:_.game)+" "+r((p=e.value[0])==null?void 0:p.version),1),s("p",null,r((v=e.value[0])==null?void 0:v.timestamp),1)]),s("div",null,[n(M,{color:"info",label:"Share",onClick:t[0]||(t[0]=it=>{var h,g;return A((g=(h=e.value[0])==null?void 0:h.data)==null?void 0:g.url)})})])])])):(u(),f("div",tt,[s("div",et,[t[2]||(t[2]=s("h1",{class:"text-2xl xl:text-4xl font-bold"}," Your video is still uploading! ",-1)),t[3]||(t[3]=s("h2",{class:"text-xl xl:text-2xl font-light"}," Please wait for the upload to complete. ",-1)),s("h2",at," Upload started at "+r(e.value[0].timestamp),1)])]))]}),_:1})],64)):D("",!0),n(b,{icon:y(j),title:"All Play Videos",main:""},null,8,["icon"]),n(k,{"has-table":""},{default:m(()=>[s("div",st,[s("div",lt,[n(E,{headers:S,items:e.value,onRowClicked:C},null,8,["items"])])])]),_:1})]),_:1})]),_:1}))}};export{ct as default};

View File

@@ -1,2 +1,2 @@
import{b as c}from"./index-vA9N45XP.js";const t=c();async function i(){try{return(await t.callApi("/admin")).data}catch(a){throw console.log("Error loading admin dashboard:",a),a}}async function d(){try{return(await t.callApi("/admin/arcades")).data}catch(a){throw console.log("Error loading arcades:",a),a}}async function s(a){try{return await t.callApi(`/arcade/checkName?name=${a}`)}catch(r){throw console.log("Error testing arcade:",r),r}}async function l(a){try{return(await t.callApi(`/arcade/checkPCBID?PCBID=${a}`)).unused}catch(r){throw console.log("Error testing machine:",r),r}}async function A(a,r){try{return await t.callApi(`/admin/arcade/${a}/machine`,"PUT",r)}catch(n){throw console.log("Error adding machine:",n),n}}async function m(a,r){try{return await t.callApi(`/admin/arcade/${a}/machine`,"POST",r)}catch(n){throw console.log("Error adding machine:",n),n}}async function w(a,r){try{if(window.confirm("Are you really?"))return await t.callApi(`/admin/arcade/${a}/machine`,"DELETE",{PCBID:r})}catch(n){throw console.log("Error adding machine:",n),n}}async function h(a){try{return await t.callApi("/admin/onboardArcade","POST",a)}catch(r){throw console.log("Error onboarding arcade:",r),r}}async function u(a,r){try{return await t.callApi(`/admin/arcade/${a}`,"POST",r)}catch(n){throw console.log("Error updating arcade:",n),n}}async function y(a){if(window.confirm(`Let me ask again...
import{u as c}from"./index-CHivKhhP.js";const t=c();async function i(){try{return(await t.callApi("/admin")).data}catch(a){throw console.log("Error loading admin dashboard:",a),a}}async function d(){try{return(await t.callApi("/admin/arcades")).data}catch(a){throw console.log("Error loading arcades:",a),a}}async function s(a){try{return await t.callApi(`/arcade/checkName?name=${a}`)}catch(r){throw console.log("Error testing arcade:",r),r}}async function l(a){try{return(await t.callApi(`/arcade/checkPCBID?PCBID=${a}`)).unused}catch(r){throw console.log("Error testing machine:",r),r}}async function A(a,r){try{return await t.callApi(`/admin/arcade/${a}/machine`,"PUT",r)}catch(n){throw console.log("Error adding machine:",n),n}}async function m(a,r){try{return await t.callApi(`/admin/arcade/${a}/machine`,"POST",r)}catch(n){throw console.log("Error adding machine:",n),n}}async function w(a,r){try{if(window.confirm("Are you really?"))return await t.callApi(`/admin/arcade/${a}/machine`,"DELETE",{PCBID:r})}catch(n){throw console.log("Error adding machine:",n),n}}async function h(a){try{return await t.callApi("/admin/onboardArcade","POST",a)}catch(r){throw console.log("Error onboarding arcade:",r),r}}async function u(a,r){try{return await t.callApi(`/admin/arcade/${a}`,"POST",r)}catch(n){throw console.log("Error updating arcade:",n),n}}async function y(a){if(window.confirm(`Let me ask again...
Are you really?`))try{return await t.callApi(`/admin/arcade/${a}`,"DELETE")}catch(n){throw console.log("Error deleting arcade:",n),n}}async function g(a,r){try{return await t.callApi(`/admin/arcade/${a}/owner`,"PUT",{ownerId:r})}catch(n){throw console.log("Error updating arcade owner:",n),n}}async function f(a,r){try{return window.confirm("Are you really?")?await t.callApi(`/admin/arcade/${a}/owner`,"DELETE",{ownerId:r}):{}}catch(n){throw console.log("Error removing arcade owner:",n),n}}async function P(){try{return(await t.callApi("/admin/maint")).data}catch(a){throw console.log("Error loading maint:",a),a}}async function p(a){try{return await t.callApi("/admin/maint","POST",a)}catch(r){throw console.log("Error posting maint:",r),r}}async function E(){try{return(await t.callApi("/admin/client")).data}catch(a){throw console.log("Error loading client:",a),a}}async function I(a){try{return await t.callApi("/admin/client","POST",a)}catch(r){throw console.log("Error posting client:",r),r}}async function D(a=!1){try{return(await t.callApi(`/admin/users?noData=${a}`)).data}catch(r){throw console.log("Error loading users:",r),r}}async function T(){try{return(await t.callApi("/admin/news")).data}catch(a){throw console.log("Error loading news:",a),a}}async function C(a){try{return await t.callApi("/admin/news","POST",a)}catch(r){throw console.log("Error posting news:",r),r}}export{i as A,l as a,h as b,s as c,P as d,p as e,E as f,I as g,d as h,D as i,T as j,C as k,u as l,y as m,g as n,f as o,A as p,m as q,w as r};

View File

@@ -1 +1 @@
import{b as s}from"./index-vA9N45XP.js";const t=s();async function d(r){try{return(await t.callApi(`/arcade/${r}`)).arcade}catch(a){throw console.log("Error fetching arcade:",a),a}}async function l(r,a,e){try{return(await t.callApi(`/arcade/${r}/settings?game=${a}&version=${e}`)).data}catch(c){throw console.log("Error fetching arcade settings:",c),c}}async function g(r,a,e,c){try{for(;!t.userId;)await new Promise(n=>setTimeout(n,200));return await t.callApi(`/arcade/${r}/settings?game=${a}&version=${e}`,"POST",c)}catch(o){throw console.log("Error updating settings:",o),o}}async function A(r){try{return await t.callApi(`/arcade/${r}/exportVPN`)}catch(a){throw console.log("Error fetching arcade VPN:",a),a}}async function h(r,a){try{return await t.callApi(`/arcade/${r}`,"POST",a)}catch(e){throw console.log("Error updating arcade:",e),e}}async function u(r){try{return(await t.callApi(`/arcade/${r}/paseli`)).data}catch(a){throw console.log("Error fetching arcade PASELI data:",a),a}}async function w(r){try{const a=await t.callApi(`/arcade/takeover?PCBID=${r}`);return a.status=="warn"&&window.alert(a.error_code),a.data}catch(a){throw console.log("Error fetching takeover:",a),a}}async function P(r){try{return await t.callApi("/arcade/takeover","POST",{PCBID:r})}catch(a){throw console.log("Error saving takeover:",a),a}}export{d as A,h as a,A as b,g as c,l as d,u as e,w as f,P as g};
import{u as s}from"./index-CHivKhhP.js";const t=s();async function d(r){try{return(await t.callApi(`/arcade/${r}`)).arcade}catch(a){throw console.log("Error fetching arcade:",a),a}}async function l(r,a,e){try{return(await t.callApi(`/arcade/${r}/settings?game=${a}&version=${e}`)).data}catch(c){throw console.log("Error fetching arcade settings:",c),c}}async function g(r,a,e,c){try{for(;!t.userId;)await new Promise(n=>setTimeout(n,200));return await t.callApi(`/arcade/${r}/settings?game=${a}&version=${e}`,"POST",c)}catch(o){throw console.log("Error updating settings:",o),o}}async function A(r){try{return await t.callApi(`/arcade/${r}/exportVPN`)}catch(a){throw console.log("Error fetching arcade VPN:",a),a}}async function u(r,a){try{return await t.callApi(`/arcade/${r}`,"POST",a)}catch(e){throw console.log("Error updating arcade:",e),e}}async function h(r){try{return(await t.callApi(`/arcade/${r}/paseli`)).data}catch(a){throw console.log("Error fetching arcade PASELI data:",a),a}}async function w(r){try{const a=await t.callApi(`/arcade/takeover?PCBID=${r}`);return a.status=="warn"&&window.alert(a.error_code),a.data}catch(a){throw console.log("Error fetching takeover:",a),a}}async function P(r){try{return await t.callApi("/arcade/takeover","POST",{PCBID:r})}catch(a){throw console.log("Error saving takeover:",a),a}}export{d as A,u as a,A as b,g as c,l as d,h as e,w as f,P as g};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{b as e}from"./index-vA9N45XP.js";const c=e();async function s(r,t,a=null,n=!1){try{return(await c.callApi(`/music?game=${r}&version=${t}`+(n?"&oneChart=true":""),"GET",null,{songIds:a.toString()})).data}catch(o){throw console.log("Error fetching music data:",o),o}}async function i(r,t=null){try{return(await c.callApi(`/records/${r}`+(t?`?userId=${t}`:""),"GET",null)).data}catch(a){throw console.log("Error fetching record data:",a),a}}async function u(r,t=null){try{return(await c.callApi(`/topscore/${r}/${t}`,"GET",null)).data}catch(a){throw console.log("Error fetching score data:",a),a}}export{s as A,u as a,i as b};
import{u as e}from"./index-CHivKhhP.js";const c=e();async function s(r,t,a=null,n=!1){try{return(await c.callApi(`/music?game=${r}&version=${t}`+(n?"&oneChart=true":""),"GET",null,{songIds:a.toString()})).data}catch(o){throw console.log("Error fetching music data:",o),o}}async function i(r,t=null){try{return(await c.callApi(`/records/${r}`+(t?`?userId=${t}`:""),"GET",null)).data}catch(a){throw console.log("Error fetching record data:",a),a}}async function u(r,t=null){try{return(await c.callApi(`/topscore/${r}/${t}`,"GET",null)).data}catch(a){throw console.log("Error fetching score data:",a),a}}export{s as A,u as a,i as b};

View File

@@ -1 +1 @@
import{b as l}from"./index-vA9N45XP.js";const a=l();async function f(o,i=null){try{return(await a.callApi(`/game/${o}/profiles?version=${i}`)).data}catch(e){throw console.log("Error fetching profiles:",e),e}}async function h(o,i,e=null){if(!e){for(;!a.userId;)await new Promise(t=>setTimeout(t,200));e=a.userId}try{return(await a.callApi(`/profile/${o}?version=${i}&userId=${e}`)).data}catch(t){throw console.log("Error fetching profile:",t),t}}async function d(o,i,e){try{for(;!a.userId;)await new Promise(r=>setTimeout(r,200));const t=a.userId;return await a.callApi(`/profile/${o}?version=${i}&userId=${t}`,"POST",e)}catch(t){throw console.log("Error updating profile:",t),t}}async function m(o,i,e=null,t=[]){if(!e){for(;!a.userId;)await new Promise(r=>setTimeout(r,200));e=a.userId}var n="";for(const r of t){const s=r[0],c=r[1];n+=`${s}:${c},`}try{return(await a.callApi(`/profile/${o}/achievements?version=${i}&userId=${e}`,"GET",null,{achievements:n.substring(0,n.length-1)})).data}catch(r){throw console.log("Error fetching achievements:",r),r}}export{h as A,f as a,m as b,d as c};
import{u as l}from"./index-CHivKhhP.js";const a=l();async function f(o,i=null){try{return(await a.callApi(`/game/${o}/profiles?version=${i}`)).data}catch(e){throw console.log("Error fetching profiles:",e),e}}async function h(o,i,e=null){if(!e){for(;!a.userId;)await new Promise(t=>setTimeout(t,200));e=a.userId}try{return(await a.callApi(`/profile/${o}?version=${i}&userId=${e}`)).data}catch(t){throw console.log("Error fetching profile:",t),t}}async function d(o,i,e){try{for(;!a.userId;)await new Promise(r=>setTimeout(r,200));const t=a.userId;return await a.callApi(`/profile/${o}?version=${i}&userId=${t}`,"POST",e)}catch(t){throw console.log("Error updating profile:",t),t}}async function m(o,i,e=null,t=[]){if(!e){for(;!a.userId;)await new Promise(r=>setTimeout(r,200));e=a.userId}var n="";for(const r of t){const s=r[0],c=r[1];n+=`${s}:${c},`}try{return(await a.callApi(`/profile/${o}/achievements?version=${i}&userId=${e}`,"GET",null,{achievements:n.substring(0,n.length-1)})).data}catch(r){throw console.log("Error fetching achievements:",r),r}}export{h as A,f as a,m as b,d as c};

View File

@@ -1,4 +1,4 @@
import{ai as n,bz as r,j as i,d as c,i as a,e as o,a5 as d,t as u,bA as p,f}from"./index-vA9N45XP.js";const h={class:"mb-2"},_={class:"text-center lg:text-left items-center justify-center lg:justify-start gap-2"},S={class:"flex items-center justify-start"},m={class:"text-2xl md:text-3xl leading-tight"},g={class:"w-full flex gap-1 mb-4"},$={__name:"GameTitleLine",props:{path:{type:String,default:null},title:{type:String,required:!0}},setup(e){const t=n(()=>r().default);return(s,l)=>(c(),i("section",h,[a("div",_,[a("div",S,[o(d,{path:e.path,class:"w-12 h-12 p-1 drop-shadow-md"},null,8,["path"]),a("h1",m,u(e.title),1)]),a("div",g,[t.value?p(s.$slots,"default",{key:0}):f("",!0)])])]))}},b="https://cdn.phaseii.network/file/PhaseII/web-assets";function x(e,t){return t?`${b}/games/${e.id}/card/${t}.webp`:e==null?void 0:e.cardBG}function k(e,t){var s;return t&&((s=e.videoTable)!=null&&s.includes(t))?`https://cdn.phaseii.network/file/PhaseII/game-assets/video/${e.id}/${t}.mp4`:null}function y(e,t){var s;return(s=e.videoTable)!=null&&s.includes(t)?null:`
import{al as n,bC as r,j as i,d as c,i as a,e as o,a8 as d,t as u,bD as p,f}from"./index-CHivKhhP.js";const h={class:"mb-2"},_={class:"text-center lg:text-left items-center justify-center lg:justify-start gap-2"},S={class:"flex items-center justify-start"},m={class:"text-2xl md:text-3xl leading-tight"},g={class:"w-full flex gap-1 mb-4"},$={__name:"GameTitleLine",props:{path:{type:String,default:null},title:{type:String,required:!0}},setup(e){const t=n(()=>r().default);return(s,l)=>(c(),i("section",h,[a("div",_,[a("div",S,[o(d,{path:e.path,class:"w-12 h-12 p-1 drop-shadow-md"},null,8,["path"]),a("h1",m,u(e.title),1)]),a("div",g,[t.value?p(s.$slots,"default",{key:0}):f("",!0)])])]))}},b="https://cdn.phaseii.network/file/PhaseII/web-assets";function x(e,t){return t?`${b}/games/${e.id}/card/${t}.webp`:e==null?void 0:e.cardBG}function k(e,t){var s;return t&&((s=e.videoTable)!=null&&s.includes(t))?`https://cdn.phaseii.network/file/PhaseII/game-assets/video/${e.id}/${t}.mp4`:null}function y(e,t){var s;return(s=e.videoTable)!=null&&s.includes(t)?null:`
background-image: url('${x(e,t)}');
background-size: cover;
background-repeat: no-repeat;

View File

@@ -18,5 +18,6 @@
"3.0.16": ["- (Major) Add multiple new admin features for network management.", "- (Optimization) Optimize backend for arcade operations.", "- (Bugfix) Fix possible backend issues with better type enforcing.", "- (Bugfix) Fix event data and game data for IIDX Pinky Crush.", "- (Minor) Add assets for Nostalgia."],
"3.0.17": ["- (Major) Add initial public profile support.", "- (Minor) Lay groundwork for public profile page", "- (Optimization) Clean up admin pages", "- (Bugfix) Clean up random 500 errors."],
"3.0.18": ["- (Admin) Adds the ability to add and remove managers from an arcade.", "- (Minor) Lay groundwork for avatars in tables.", "- (Minor) Add new profile customizations."],
"3.0.19": ["- (Admin) Finish admin arcade and machine pages.", "- (Minor) Add new greetings."]
"3.0.19": ["- (Admin) Finish admin arcade and machine pages.", "- (Minor) Add new greetings."],
"3.0.20": ["- (Major) Add read state to network news.", "- (Minor) Add new greetings.", "- (Minor) Add information to linked services", "- (Minor) Add session info and button to remove all sessions", "- (Minor) Add text gradient animation backend, needs ported to text once finished."]
}

View File

@@ -46,8 +46,8 @@
document.addEventListener('keydown', keyHandler, false);
</script>
<script type="module" crossorigin src="/assets/index-vA9N45XP.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-CC1sHjGy.css">
<script type="module" crossorigin src="/assets/index-CHivKhhP.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-CgJRrhQl.css">
</head>
<body class="scroll-smooth">
<noscript>