diff --git a/dist-electron/main.js b/dist-electron/main.js new file mode 100644 index 0000000..f44a23b --- /dev/null +++ b/dist-electron/main.js @@ -0,0 +1,12 @@ +import { BrowserWindow, app } from "electron"; +import path, { dirname } from "node:path"; +import { fileURLToPath } from "node:url"; +app.whenReady().then(() => { + let i = dirname(fileURLToPath(import.meta.url)), a = new BrowserWindow({ + title: "OGame", + icon: path.join(i, "../public/favicon.ico"), + width: 1200, + height: 800 + }); + a.setMenu(null), process.env.VITE_DEV_SERVER_URL ? a.loadURL(process.env.VITE_DEV_SERVER_URL) : a.loadFile("docs/index.html"); +}); diff --git a/docs/assets/AlertDialog-CiXBEnQ0.js b/docs/assets/AlertDialog-CiXBEnQ0.js new file mode 100644 index 0000000..74c8e5e --- /dev/null +++ b/docs/assets/AlertDialog-CiXBEnQ0.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Dt as n,Kt as r,Mt as i,Nt as a,On as o,Ot as s,hn as c,in as l,jt as u,kt as d,wt as f}from"./game-logic-CfBcTF_c.js";import{M as p,P as m}from"./index-DWmvUlvu.js";var h={key:0,class:`fixed inset-0 z-50 flex items-center justify-center`},g={class:`relative bg-card border rounded-lg shadow-lg p-6 max-w-md w-full mx-4 z-10`},_={class:`text-lg font-semibold mb-2`},v={class:`text-sm text-muted-foreground mb-6 whitespace-pre-line`},y={class:`flex justify-end gap-2`},b=a({__name:`AlertDialog`,setup(a,{expose:b}){let{t:x}=m(),S=c(!1),C=c(null),w=e=>{C.value=e,S.value=!0},T=()=>{C.value?.onConfirm&&C.value.onConfirm(),S.value=!1},E=()=>{S.value=!1};return b({show:w}),(a,c)=>(r(),s(f,{to:`body`},[S.value?(r(),e(`div`,h,[n(`div`,{class:`fixed inset-0 bg-black/50`,onClick:E}),n(`div`,g,[n(`h2`,_,o(C.value?.title),1),n(`p`,v,o(C.value?.message),1),n(`div`,y,[C.value?.onConfirm?(r(),s(t(p),{key:0,onClick:E,variant:`outline`},{default:l(()=>[u(o(t(x)(`common.cancel`)),1)]),_:1})):d(``,!0),i(t(p),{onClick:T,variant:`default`},{default:l(()=>[u(o(t(x)(`common.confirm`)),1)]),_:1})])])])):d(``,!0)]))}});export{b as t}; \ No newline at end of file diff --git a/docs/assets/BattleReportDialog-CWBu6H63.js b/docs/assets/BattleReportDialog-CWBu6H63.js new file mode 100644 index 0000000..c7539a7 --- /dev/null +++ b/docs/assets/BattleReportDialog-CWBu6H63.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as i,Jt as a,Kt as o,Mt as s,Nt as c,On as l,Ot as u,Tn as ee,hn as d,in as f,jt as p,kt as m,tn as h}from"./game-logic-CfBcTF_c.js";import{a as te,c as ne,p as re}from"./vendor-icons-W6Ny__75.js";import{t as g}from"./TooltipProvider-BAp4BAXy.js";import{D as _,E as v,F as ie,I as ae,M as oe,P as se,S as ce,T as y,b as le,n as ue,r as b,v as de,w as x,x as S,y as C}from"./index-DWmvUlvu.js";import{t as w}from"./useGameConfig-B5wf1i8i.js";var T={key:0,class:`space-y-4`},E={class:`grid grid-cols-1 md:grid-cols-2 gap-4 text-sm`},D={class:`p-3 bg-blue-50 dark:bg-blue-950/20 rounded-lg`},O={class:`font-medium text-blue-600 dark:text-blue-400 mb-1`},k={key:0,class:`text-xs text-muted-foreground`},A={key:1,class:`text-xs text-muted-foreground`},j={class:`p-3 bg-red-50 dark:bg-red-950/20 rounded-lg`},M={class:`font-medium text-red-600 dark:text-red-400 mb-1`},N={key:0,class:`text-xs text-muted-foreground`},P={key:1,class:`text-xs text-muted-foreground`},F={class:`text-lg font-bold`},I={key:0,class:`text-sm mt-1`},L={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},R={class:`space-y-2`},z={class:`text-sm font-medium text-red-600 dark:text-red-400`},B={class:`p-3 bg-muted rounded-lg space-y-1 text-xs`},V={class:`text-muted-foreground`},H={class:`ml-2 font-medium`},fe={key:0,class:`text-muted-foreground`},pe={class:`space-y-2`},me={class:`text-sm font-medium text-red-600 dark:text-red-400`},he={class:`p-3 bg-muted rounded-lg space-y-1 text-xs`},ge={class:`text-muted-foreground`},_e={class:`ml-2 font-medium`},ve={class:`text-muted-foreground`},ye={class:`ml-2 font-medium`},be={key:0,class:`text-muted-foreground`},xe={key:0,class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Se={key:0,class:`space-y-2`},Ce={class:`text-sm font-medium text-blue-600 dark:text-blue-400`},we={class:`p-3 bg-muted rounded-lg space-y-1 text-xs`},Te={class:`text-muted-foreground`},Ee={class:`ml-2 font-medium`},De={key:1,class:`space-y-2`},Oe={class:`text-sm font-medium text-blue-600 dark:text-blue-400`},ke={class:`p-3 bg-muted rounded-lg space-y-1 text-xs`},Ae={class:`text-muted-foreground`},je={class:`ml-2 font-medium`},Me={class:`text-muted-foreground`},Ne={class:`ml-2 font-medium`},Pe={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Fe={key:0,class:`p-3 bg-green-50 dark:bg-green-950 rounded-lg`},Ie={class:`text-sm font-medium mb-2 text-green-600 dark:text-green-400`},Le={class:`flex flex-wrap gap-3 text-xs`},Re={key:0,class:`flex items-center gap-1`},ze={key:1,class:`flex items-center gap-1`},Be={key:2,class:`flex items-center gap-1`},Ve={key:1,class:`p-3 bg-muted rounded-lg`},He={class:`text-sm font-medium mb-2`},Ue={class:`flex flex-wrap gap-3 text-xs`},We={key:0,class:`flex items-center gap-1`},Ge={key:1,class:`flex items-center gap-1`},Ke={key:0,class:`text-xs text-muted-foreground mt-2`},qe={key:1,class:`space-y-2`},Je={key:0,class:`relative pl-6 space-y-4`},Ye={class:`border rounded-lg p-3 bg-card hover:shadow-md transition-shadow`},Xe={class:`flex items-center justify-between mb-3`},Ze={class:`text-sm font-semibold`},Qe={class:`flex gap-3 text-xs text-muted-foreground`},$e={class:`flex items-center gap-1`},et={class:`flex items-center gap-1`},tt={class:`grid grid-cols-1 md:grid-cols-2 gap-3`},nt={class:`bg-red-50 dark:bg-red-950/20 rounded p-2`},rt={class:`text-xs font-medium text-red-600 dark:text-red-400 mb-1.5`},it={class:`text-xs space-y-0.5`},at={class:`text-muted-foreground`},ot={class:`font-medium`},st={key:0,class:`text-muted-foreground italic`},ct={class:`bg-blue-50 dark:bg-blue-950/20 rounded p-2`},lt={class:`text-xs font-medium text-blue-600 dark:text-blue-400 mb-1.5`},ut={class:`text-xs space-y-0.5`},dt={class:`text-muted-foreground`},U={class:`font-medium`},ft={class:`text-muted-foreground`},pt={class:`font-medium`},mt={key:0,class:`text-muted-foreground italic`},W=c({__name:`BattleReportDialog`,props:{report:{},open:{type:Boolean}},emits:[`update:open`],setup(c,{emit:W}){let G=c,ht=W,K=ae(),gt=ie(),{t:q}=se(),{SHIPS:J,DEFENSES:Y}=w(),X=d(G.open),Z=d(!1),Q=i(()=>G.report?K.player.planets.find(e=>e.id===G.report.attackerPlanetId):null),$=i(()=>G.report?K.player.planets.find(e=>e.id===G.report.defenderPlanetId)||Object.values(gt.planets).find(e=>e.id===G.report.defenderPlanetId):null);h(()=>G.open,e=>{X.value=e,e&&(Z.value=!1)}),h(X,e=>{ht(`update:open`,e)});let _t=e=>e===`attacker`?`bg-green-50 dark:bg-green-950 text-green-700 dark:text-green-300`:e===`defender`?`bg-red-50 dark:bg-red-950 text-red-700 dark:text-red-300`:`bg-gray-50 dark:bg-gray-950 text-gray-700 dark:text-gray-300`;return(i,d)=>(o(),u(t(ce),{open:X.value,"onUpdate:open":d[1]||=e=>X.value=e},{default:f(()=>[s(t(S),{class:`max-w-4xl max-h-[90vh] overflow-y-auto`},{default:f(()=>[s(t(C),null,{default:f(()=>[s(t(de),{class:`flex items-center gap-2`},{default:f(()=>[s(t(te),{class:`h-5 w-5`}),p(` `+l(t(q)(`messagesView.battleReport`)),1)]),_:1}),c.report?(o(),u(t(le),{key:0},{default:f(()=>[p(l(t(ue)(c.report.timestamp)),1)]),_:1})):m(``,!0)]),_:1}),c.report?(o(),e(`div`,T,[r(`div`,E,[r(`div`,D,[r(`p`,O,l(t(q)(`simulatorView.attacker`)),1),Q.value?(o(),e(`p`,k,l(Q.value.name)+` [`+l(Q.value.position.galaxy)+`:`+l(Q.value.position.system)+`:`+l(Q.value.position.position)+`] `,1)):(o(),e(`p`,A,l(c.report.attackerPlanetId),1))]),r(`div`,j,[r(`p`,M,l(t(q)(`simulatorView.defender`)),1),$.value?(o(),e(`p`,N,l($.value.name)+` [`+l($.value.position.galaxy)+`:`+l($.value.position.system)+`:`+l($.value.position.position)+`] `,1)):(o(),e(`p`,P,l(c.report.defenderPlanetId),1))])]),r(`div`,{class:ee([`text-center p-4 rounded-lg`,_t(c.report.winner)])},[r(`p`,F,l(c.report.winner===`attacker`?t(q)(`messagesView.victory`):c.report.winner===`defender`?t(q)(`messagesView.defeat`):t(q)(`messagesView.draw`)),1),c.report.rounds?(o(),e(`p`,I,l(t(q)(`simulatorView.afterRounds`).replace(`{rounds}`,String(c.report.rounds))),1)):m(``,!0)],2),r(`div`,L,[r(`div`,R,[r(`p`,z,l(t(q)(`messagesView.attackerLosses`)),1),r(`div`,B,[(o(!0),e(n,null,a(c.report.attackerLosses,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,V,l(t(J)[i].name)+`:`,1),r(`span`,H,l(n),1)]))),128)),Object.keys(c.report.attackerLosses).length===0?(o(),e(`p`,fe,l(t(q)(`messagesView.noLosses`)),1)):m(``,!0)])]),r(`div`,pe,[r(`p`,me,l(t(q)(`messagesView.defenderLosses`)),1),r(`div`,he,[(o(!0),e(n,null,a(c.report.defenderLosses.fleet,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,ge,l(t(J)[i].name)+`:`,1),r(`span`,_e,l(n),1)]))),128)),(o(!0),e(n,null,a(c.report.defenderLosses.defense,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,ve,l(t(Y)[i].name)+`:`,1),r(`span`,ye,l(n),1)]))),128)),Object.keys(c.report.defenderLosses.fleet).length===0&&Object.keys(c.report.defenderLosses.defense).length===0?(o(),e(`p`,be,l(t(q)(`messagesView.noLosses`)),1)):m(``,!0)])])]),c.report.attackerRemaining||c.report.defenderRemaining?(o(),e(`div`,xe,[c.report.attackerRemaining&&Object.keys(c.report.attackerRemaining).length>0?(o(),e(`div`,Se,[r(`p`,Ce,l(t(q)(`messagesView.attackerRemaining`)),1),r(`div`,we,[(o(!0),e(n,null,a(c.report.attackerRemaining,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,Te,l(t(J)[i].name)+`:`,1),r(`span`,Ee,l(n),1)]))),128))])])):m(``,!0),c.report.defenderRemaining&&(Object.keys(c.report.defenderRemaining.fleet||{}).length>0||Object.keys(c.report.defenderRemaining.defense||{}).length>0)?(o(),e(`div`,De,[r(`p`,Oe,l(t(q)(`messagesView.defenderRemaining`)),1),r(`div`,ke,[(o(!0),e(n,null,a(c.report.defenderRemaining.fleet,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,Ae,l(t(J)[i].name)+`:`,1),r(`span`,je,l(n),1)]))),128)),(o(!0),e(n,null,a(c.report.defenderRemaining.defense,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,Me,l(t(Y)[i].name)+`:`,1),r(`span`,Ne,l(n),1)]))),128))])])):m(``,!0)])):m(``,!0),r(`div`,Pe,[c.report.plunder&&(c.report.plunder.metal>0||c.report.plunder.crystal>0||c.report.plunder.deuterium>0)?(o(),e(`div`,Fe,[r(`p`,Ie,l(t(q)(`messagesView.plunder`)),1),r(`div`,Le,[c.report.plunder.metal>0?(o(),e(`span`,Re,[s(x,{type:`metal`,size:`sm`}),p(` `+l(t(b)(c.report.plunder.metal)),1)])):m(``,!0),c.report.plunder.crystal>0?(o(),e(`span`,ze,[s(x,{type:`crystal`,size:`sm`}),p(` `+l(t(b)(c.report.plunder.crystal)),1)])):m(``,!0),c.report.plunder.deuterium>0?(o(),e(`span`,Be,[s(x,{type:`deuterium`,size:`sm`}),p(` `+l(t(b)(c.report.plunder.deuterium)),1)])):m(``,!0)])])):m(``,!0),c.report.debrisField&&(c.report.debrisField.metal>0||c.report.debrisField.crystal>0)?(o(),e(`div`,Ve,[r(`p`,He,l(t(q)(`messagesView.debrisField`)),1),r(`div`,Ue,[c.report.debrisField.metal>0?(o(),e(`span`,We,[s(x,{type:`metal`,size:`sm`}),p(` `+l(t(b)(c.report.debrisField.metal)),1)])):m(``,!0),c.report.debrisField.crystal>0?(o(),e(`span`,Ge,[s(x,{type:`crystal`,size:`sm`}),p(` `+l(t(b)(c.report.debrisField.crystal)),1)])):m(``,!0)]),c.report.moonChance&&c.report.moonChance>0?(o(),e(`p`,Ke,l(t(q)(`messagesView.moonChance`))+`: `+l((c.report.moonChance*100).toFixed(1))+`% `,1)):m(``,!0)])):m(``,!0)]),c.report.roundDetails&&c.report.roundDetails.length>0?(o(),e(`div`,qe,[s(t(oe),{onClick:d[0]||=e=>Z.value=!Z.value,variant:`outline`,size:`sm`,class:`w-full`},{default:f(()=>[p(l(Z.value?t(q)(`messagesView.hideRoundDetails`):t(q)(`messagesView.showRoundDetails`)),1)]),_:1}),Z.value?(o(),e(`div`,Je,[d[3]||=r(`div`,{class:`absolute left-2 top-0 bottom-0 w-0.5 bg-border`},null,-1),(o(!0),e(n,null,a(c.report.roundDetails,i=>(o(),e(`div`,{key:i.round,class:`relative`},[d[2]||=r(`div`,{class:`absolute -left-6 top-3 w-4 h-4 rounded-full bg-primary border-2 border-background`},null,-1),r(`div`,Ye,[r(`div`,Xe,[r(`p`,Ze,l(t(q)(`messagesView.round`).replace(`{round}`,String(i.round))),1),s(t(g),{"delay-duration":300},{default:f(()=>[r(`div`,Qe,[s(t(_),null,{default:f(()=>[s(t(y),{"as-child":``},{default:f(()=>[r(`span`,$e,[s(t(ne),{class:`h-3 w-3`}),p(` `+l(t(b)(i.attackerRemainingPower)),1)])]),_:2},1024),s(t(v),null,{default:f(()=>[r(`p`,null,l(t(q)(`messagesView.attackerRemainingPower`)),1)]),_:1})]),_:2},1024),s(t(_),null,{default:f(()=>[s(t(y),{"as-child":``},{default:f(()=>[r(`span`,et,[s(t(re),{class:`h-3 w-3`}),p(` `+l(t(b)(i.defenderRemainingPower)),1)])]),_:2},1024),s(t(v),null,{default:f(()=>[r(`p`,null,l(t(q)(`messagesView.defenderRemainingPower`)),1)]),_:1})]),_:2},1024)])]),_:2},1024)]),r(`div`,tt,[r(`div`,nt,[r(`p`,rt,l(t(q)(`messagesView.attackerLosses`)),1),r(`div`,it,[(o(!0),e(n,null,a(i.attackerLosses,(n,i)=>(o(),e(`div`,{key:i,class:`flex justify-between`},[r(`span`,at,l(t(J)[i].name),1),r(`span`,ot,`-`+l(n),1)]))),128)),Object.keys(i.attackerLosses).length===0?(o(),e(`p`,st,l(t(q)(`messagesView.noLosses`)),1)):m(``,!0)])]),r(`div`,ct,[r(`p`,lt,l(t(q)(`messagesView.defenderLosses`)),1),r(`div`,ut,[(o(!0),e(n,null,a(i.defenderLosses.fleet,(n,i)=>(o(),e(`div`,{key:i,class:`flex justify-between`},[r(`span`,dt,l(t(J)[i].name),1),r(`span`,U,`-`+l(n),1)]))),128)),(o(!0),e(n,null,a(i.defenderLosses.defense,(n,i)=>(o(),e(`div`,{key:i,class:`flex justify-between`},[r(`span`,ft,l(t(Y)[i].name),1),r(`span`,pt,`-`+l(n),1)]))),128)),Object.keys(i.defenderLosses.fleet).length===0&&Object.keys(i.defenderLosses.defense).length===0?(o(),e(`p`,mt,l(t(q)(`messagesView.noLosses`)),1)):m(``,!0)])])])])]))),128))])):m(``,!0)])):m(``,!0)])):m(``,!0)]),_:1})]),_:1},8,[`open`]))}});export{W as t}; \ No newline at end of file diff --git a/docs/assets/BattleSimulatorView-BDzc1XdU.js b/docs/assets/BattleSimulatorView-BDzc1XdU.js new file mode 100644 index 0000000..83b0491 --- /dev/null +++ b/docs/assets/BattleSimulatorView-BDzc1XdU.js @@ -0,0 +1 @@ +import{At as e,C as t,Cn as n,Ct as r,Dt as i,Jt as a,Kt as o,Mt as s,Nt as c,On as l,Ot as u,et as d,hn as f,in as p,jt as m,yn as h}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{c as ee,g as te,p as ne,t as re}from"./vendor-icons-W6Ny__75.js";import"./TooltipProvider-BAp4BAXy.js";import{t as g}from"./CardDescription-D2AN1hhX.js";import{d as _,m as v}from"./game-config-D-D7cMgJ.js";import{M as y,O as b,P as x,c as S,l as C,s as w,t as T,u as E,w as D}from"./index-DWmvUlvu.js";import{t as ie}from"./useGameConfig-B5wf1i8i.js";import{t as ae}from"./BattleReportDialog-CWBu6H63.js";var oe={class:`container mx-auto p-4 sm:p-6 space-y-6`},se={class:`text-2xl sm:text-3xl font-bold`},ce={class:`flex gap-2 border-b`},le={class:`text-sm font-medium mb-3`},ue={class:`grid grid-cols-2 md:grid-cols-3 gap-3`},O={class:`text-sm font-medium mb-3`},k={class:`grid grid-cols-3 gap-3`},A={class:`space-y-1`},j={class:`space-y-1`},M={class:`space-y-1`},N={class:`text-sm font-medium mb-3`},P={class:`grid grid-cols-2 md:grid-cols-3 gap-3`},F={class:`text-sm font-medium mb-3`},I={class:`grid grid-cols-2 md:grid-cols-3 gap-3`},L={class:`text-sm font-medium mb-3`},R={class:`grid grid-cols-3 gap-3`},z={class:`space-y-1`},B={class:`space-y-1`},V={class:`space-y-1`},H={class:`text-sm font-medium mb-3`},de={class:`grid grid-cols-3 gap-3`},fe={class:`space-y-1`},pe={class:`space-y-1`},me={class:`space-y-1`},he={class:`flex gap-2`},U=c({__name:`BattleSimulatorView`,setup(c){let{t:U}=x(),{SHIPS:W,DEFENSES:ge}=ie(),G=f({[v.LightFighter]:0,[v.HeavyFighter]:0,[v.Cruiser]:0,[v.Battleship]:0,[v.SmallCargo]:0,[v.LargeCargo]:0,[v.ColonyShip]:0,[v.Recycler]:0,[v.EspionageProbe]:0,[v.DarkMatterHarvester]:0}),K=f(`attacker`),q=f({weapon:0,shield:0,armor:0}),J=f({[v.LightFighter]:0,[v.HeavyFighter]:0,[v.Cruiser]:0,[v.Battleship]:0,[v.SmallCargo]:0,[v.LargeCargo]:0,[v.ColonyShip]:0,[v.Recycler]:0,[v.EspionageProbe]:0,[v.DarkMatterHarvester]:0}),Y=f({[_.RocketLauncher]:0,[_.LightLaser]:0,[_.HeavyLaser]:0,[_.GaussCannon]:0,[_.IonCannon]:0,[_.PlasmaTurret]:0,[_.SmallShieldDome]:0,[_.LargeShieldDome]:0}),X=f({weapon:0,shield:0,armor:0}),Z=f({metal:1e5,crystal:5e4,deuterium:25e3,darkMatter:100,energy:0}),Q=f(null),$=f(!1),_e=async()=>{let e={ships:h(G.value),weaponTech:q.value.weapon,shieldTech:q.value.shield,armorTech:q.value.armor},n={ships:h(J.value),defense:h(Y.value),weaponTech:X.value.weapon,shieldTech:X.value.shield,armorTech:X.value.armor},r=await t.simulateBattle({attacker:e,defender:n}),i=r.winner===`attacker`?await t.calculatePlunder({defenderResources:h(Z.value),attackerFleet:r.attackerRemaining}):{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},a=await t.calculateDebris({attackerLosses:r.attackerLosses,defenderLosses:r.defenderLosses}),o=d(a)/100;Q.value={id:`sim_${Date.now()}`,timestamp:Date.now(),attackerId:`simulator_attacker`,defenderId:`simulator_defender`,attackerPlanetId:`sim_attacker`,defenderPlanetId:`sim_defender`,attackerFleet:G.value,defenderFleet:J.value,defenderDefense:Y.value,attackerLosses:r.attackerLosses,defenderLosses:r.defenderLosses,winner:r.winner,plunder:i,debrisField:a,rounds:r.rounds,attackerRemaining:r.attackerRemaining,defenderRemaining:r.defenderRemaining,roundDetails:r.roundDetails,moonChance:o},$.value=!0},ve=()=>{Object.keys(G.value).forEach(e=>{G.value[e]=0}),Object.keys(J.value).forEach(e=>{J.value[e]=0}),Object.keys(Y.value).forEach(e=>{Y.value[e]=0}),q.value={weapon:0,shield:0,armor:0},X.value={weapon:0,shield:0,armor:0},Q.value=null,$.value=!1};return(t,c)=>(o(),e(`div`,oe,[i(`h1`,se,l(n(U)(`simulatorView.title`)),1),i(`div`,ce,[s(n(y),{onClick:c[0]||=e=>K.value=`attacker`,variant:K.value===`attacker`?`default`:`ghost`,class:`rounded-b-none`},{default:p(()=>[s(n(ee)),m(` `+l(n(U)(`simulatorView.attacker`)),1)]),_:1},8,[`variant`]),s(n(y),{onClick:c[1]||=e=>K.value=`defender`,variant:K.value===`defender`?`default`:`ghost`,class:`rounded-b-none`},{default:p(()=>[s(n(ne)),m(` `+l(n(U)(`simulatorView.defender`)),1)]),_:1},8,[`variant`])]),K.value===`attacker`?(o(),u(n(E),{key:0},{default:p(()=>[s(n(S),null,{default:p(()=>[s(n(w),null,{default:p(()=>[m(l(n(U)(`simulatorView.attackerConfig`)),1)]),_:1}),s(n(g),null,{default:p(()=>[m(l(n(U)(`simulatorView.attackerConfigDesc`)),1)]),_:1})]),_:1}),s(n(C),{class:`space-y-4`},{default:p(()=>[i(`div`,null,[i(`h3`,le,l(n(U)(`simulatorView.fleet`)),1),i(`div`,ue,[(o(!0),e(r,null,a(Object.values(n(v)),t=>(o(),e(`div`,{key:t,class:`space-y-1`},[s(n(T),{for:`attacker-${t}`,class:`text-xs`},{default:p(()=>[m(l(n(W)[t].name),1)]),_:2},1032,[`for`]),s(n(b),{id:`attacker-${t}`,modelValue:G.value[t],"onUpdate:modelValue":e=>G.value[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])]))),128))])]),i(`div`,null,[i(`h3`,O,l(n(U)(`simulatorView.techLevels`)),1),i(`div`,k,[i(`div`,A,[s(n(T),{for:`attacker-weapon`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.weapon`)),1)]),_:1}),s(n(b),{id:`attacker-weapon`,modelValue:q.value.weapon,"onUpdate:modelValue":c[2]||=e=>q.value.weapon=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,j,[s(n(T),{for:`attacker-shield`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.shield`)),1)]),_:1}),s(n(b),{id:`attacker-shield`,modelValue:q.value.shield,"onUpdate:modelValue":c[3]||=e=>q.value.shield=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,M,[s(n(T),{for:`attacker-armor`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.armor`)),1)]),_:1}),s(n(b),{id:`attacker-armor`,modelValue:q.value.armor,"onUpdate:modelValue":c[4]||=e=>q.value.armor=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])])])])]),_:1})]),_:1})):(o(),u(n(E),{key:1},{default:p(()=>[s(n(S),null,{default:p(()=>[s(n(w),null,{default:p(()=>[m(l(n(U)(`simulatorView.defenderConfig`)),1)]),_:1}),s(n(g),null,{default:p(()=>[m(l(n(U)(`simulatorView.defenderConfigDesc`)),1)]),_:1})]),_:1}),s(n(C),{class:`space-y-4`},{default:p(()=>[i(`div`,null,[i(`h3`,N,l(n(U)(`simulatorView.fleet`)),1),i(`div`,P,[(o(!0),e(r,null,a(Object.values(n(v)),t=>(o(),e(`div`,{key:t,class:`space-y-1`},[s(n(T),{for:`defender-${t}`,class:`text-xs`},{default:p(()=>[m(l(n(W)[t].name),1)]),_:2},1032,[`for`]),s(n(b),{id:`defender-${t}`,modelValue:J.value[t],"onUpdate:modelValue":e=>J.value[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])]))),128))])]),i(`div`,null,[i(`h3`,F,l(n(U)(`simulatorView.defenseStructures`)),1),i(`div`,I,[(o(!0),e(r,null,a(Object.values(n(_)),t=>(o(),e(`div`,{key:t,class:`space-y-1`},[s(n(T),{for:`defense-${t}`,class:`text-xs`},{default:p(()=>[m(l(n(ge)[t].name),1)]),_:2},1032,[`for`]),s(n(b),{id:`defense-${t}`,modelValue:Y.value[t],"onUpdate:modelValue":e=>Y.value[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])]))),128))])]),i(`div`,null,[i(`h3`,L,l(n(U)(`simulatorView.techLevels`)),1),i(`div`,R,[i(`div`,z,[s(n(T),{for:`defender-weapon`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.weapon`)),1)]),_:1}),s(n(b),{id:`defender-weapon`,modelValue:X.value.weapon,"onUpdate:modelValue":c[5]||=e=>X.value.weapon=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,B,[s(n(T),{for:`defender-shield`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.shield`)),1)]),_:1}),s(n(b),{id:`defender-shield`,modelValue:X.value.shield,"onUpdate:modelValue":c[6]||=e=>X.value.shield=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,V,[s(n(T),{for:`defender-armor`,class:`text-xs`},{default:p(()=>[m(l(n(U)(`simulatorView.armor`)),1)]),_:1}),s(n(b),{id:`defender-armor`,modelValue:X.value.armor,"onUpdate:modelValue":c[7]||=e=>X.value.armor=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])])])]),i(`div`,null,[i(`h3`,H,l(n(U)(`simulatorView.defenderResources`)),1),i(`div`,de,[i(`div`,fe,[s(n(T),{for:`defender-metal`,class:`text-xs flex items-center gap-1`},{default:p(()=>[s(D,{type:`metal`,size:`sm`}),m(` `+l(n(U)(`resources.metal`)),1)]),_:1}),s(n(b),{id:`defender-metal`,modelValue:Z.value.metal,"onUpdate:modelValue":c[8]||=e=>Z.value.metal=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,pe,[s(n(T),{for:`defender-crystal`,class:`text-xs flex items-center gap-1`},{default:p(()=>[s(D,{type:`crystal`,size:`sm`}),m(` `+l(n(U)(`resources.crystal`)),1)]),_:1}),s(n(b),{id:`defender-crystal`,modelValue:Z.value.crystal,"onUpdate:modelValue":c[9]||=e=>Z.value.crystal=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])]),i(`div`,me,[s(n(T),{for:`defender-deuterium`,class:`text-xs flex items-center gap-1`},{default:p(()=>[s(D,{type:`deuterium`,size:`sm`}),m(` `+l(n(U)(`resources.deuterium`)),1)]),_:1}),s(n(b),{id:`defender-deuterium`,modelValue:Z.value.deuterium,"onUpdate:modelValue":c[10]||=e=>Z.value.deuterium=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`modelValue`])])])])]),_:1})]),_:1})),i(`div`,he,[s(n(y),{onClick:_e,class:`flex-1`,size:`lg`},{default:p(()=>[s(n(re),{class:`h-4 w-4 mr-2`}),m(` `+l(n(U)(`simulatorView.startSimulation`)),1)]),_:1}),s(n(y),{onClick:ve,variant:`outline`,size:`lg`},{default:p(()=>[s(n(te),{class:`h-4 w-4 mr-2`}),m(` `+l(n(U)(`simulatorView.reset`)),1)]),_:1})]),s(ae,{open:$.value,"onUpdate:open":c[11]||=e=>$.value=e,report:Q.value},null,8,[`open`,`report`])]))}});export{U as default}; \ No newline at end of file diff --git a/docs/assets/BuildingsView-BQvU9Qow.js b/docs/assets/BuildingsView-BQvU9Qow.js new file mode 100644 index 0000000..01e0808 --- /dev/null +++ b/docs/assets/BuildingsView-BQvU9Qow.js @@ -0,0 +1,2 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as i,Jt as a,Kt as o,M as s,Mt as c,N as ee,Nt as l,O as u,On as d,Ot as f,P as p,Tn as m,ct as te,dt as ne,hn as h,in as g,j as _,jt as v,k as re,kt as y,lt as ie,ut as ae}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{M as b,z as oe}from"./vendor-icons-W6Ny__75.js";import{t as se}from"./CardDescription-D2AN1hhX.js";import{h as ce,u as x}from"./game-config-D-D7cMgJ.js";import{A as le,I as ue,M as S,P as C,_ as w,c as T,i as E,l as D,o as O,r as k,s as A,u as j,w as M}from"./index-DWmvUlvu.js";import{t as N}from"./useGameConfig-B5wf1i8i.js";import{t as P}from"./AlertDialog-CiXBEnQ0.js";import{t as F}from"./CardUnlockOverlay-BA1LyGjd.js";var I={key:0,class:`container mx-auto p-4 sm:p-6`},L={class:`flex justify-between items-center mb-4 sm:mb-6 gap-2`},R={class:`text-2xl sm:text-3xl font-bold`},z={class:`text-xs sm:text-sm`},B={class:`flex items-center gap-1.5 text-muted-foreground`},V={class:`grid grid-cols-2 lg:grid-cols-3 gap-3 sm:gap-4`},H={class:`flex justify-between items-start gap-2`},U={class:`min-w-0 flex-1`},de={class:`space-y-3`},fe={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},pe={class:`text-muted-foreground mb-1 sm:mb-2`},me={class:`space-y-1 sm:space-y-1.5`},he={class:`flex items-center gap-1.5 sm:gap-2`},ge={class:`text-xs`},_e={class:`flex items-center gap-1.5 sm:gap-2`},ve={class:`text-xs`},ye={class:`flex items-center gap-1.5 sm:gap-2`},be={class:`text-xs`},xe={class:`text-xs sm:text-sm space-y-0.5 sm:space-y-1`},Se={class:`flex items-center gap-1.5 text-muted-foreground`},Ce={class:`flex items-center gap-1.5 text-muted-foreground`},we={key:1,class:`text-xs text-muted-foreground`},Te={class:`flex gap-2 flex-wrap`},W=l({__name:`BuildingsView`,setup(l){let W=ue(),Ee=w(),{t:G}=C(),{BUILDINGS:K,TECHNOLOGIES:De}=N(),q=i(()=>W.currentPlanet),J=h(null),Oe=i(()=>q.value?Object.values(x).filter(e=>{let t=K.value[e];return q.value.isMoon?t.moonOnly===!0:t.moonOnly!==!0}):[]),ke=e=>{if(!W.currentPlanet||!s(W.currentPlanet,e,W.player.technologies,W.player.officers).valid)return!1;let t=re(W.currentPlanet,e,W.player.officers);return W.currentPlanet.buildQueue.push(t),!0},Ae=e=>ne(e),je=e=>{if(!X(e)){J.value?.show({title:G(`common.requirementsNotMet`),message:Z(e)});return}ke(e)||J.value?.show({title:G(`buildingsView.upgradeFailed`),message:G(`buildingsView.upgradeFailedMessage`)})},Y=e=>q.value?.buildings[e]||0,X=e=>{if(!q.value)return!1;let t=K.value[e],n=p(t,Y(e)+1);return!n||Object.keys(n).length===0?!0:ee(q.value,W.player.technologies,n)},Me=e=>{if(!q.value)return G(`buildingsView.upgrade`);let t=K.value[e],n=Y(e);return t.maxLevel!==void 0&&n>=t.maxLevel?G(`buildingsView.maxLevelReached`):q.value.buildQueue.length>0||X(e)?G(`buildingsView.upgrade`):G(`buildingsView.requirementsNotMet`)},Z=e=>{let t=K.value[e],n=p(t,Y(e)+1);if(!n||!q.value)return``;let r=[];for(let[e,t]of Object.entries(n))if(Object.values(x).includes(e)){let n=e,i=q.value.buildings[n]||0,a=K.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${G(`common.current`)}: Lv ${i})`)}else if(Object.values(ce).includes(e)){let n=e,i=W.player.technologies[n]||0,a=De.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${G(`common.current`)}: Lv ${i})`)}return r.join(` +`)},Ne=e=>{if(!q.value)return!1;let t=K.value[e],n=Y(e);if(t.maxLevel!==void 0&&n>=t.maxLevel||q.value.buildQueue.length>0||!s(q.value,e,W.player.technologies,W.player.officers).valid)return!1;let r=Q(e,n+1);return q.value.resources.metal>=r.metal&&q.value.resources.crystal>=r.crystal&&q.value.resources.deuterium>=r.deuterium},Q=(e,t)=>te(e,t),Pe=(e,t)=>ie(e,t),Fe=e=>{if(!W.currentPlanet||!_(W.currentPlanet,e,W.player.officers).valid)return!1;let t=u(W.currentPlanet,e,W.player.officers);return W.currentPlanet.buildQueue.push(t),!0},Ie=e=>{Fe(e)||J.value?.show({title:G(`buildingsView.demolishFailed`),message:G(`buildingsView.demolishFailedMessage`)})},Le=e=>!q.value||q.value.buildQueue.length>0?!1:Y(e)>0,$=e=>ae(e,Y(e));return(i,s)=>q.value?(o(),e(`div`,I,[r(`div`,L,[r(`h1`,R,d(t(G)(`buildingsView.title`)),1),r(`div`,z,[r(`span`,B,[c(t(b),{size:14}),v(` `+d(Ae(q.value))+` / `+d(q.value.maxSpace),1)])])]),r(`div`,V,[(o(!0),e(n,null,a(Oe.value,n=>(o(),f(t(j),{key:n,class:`relative`},{default:g(()=>[c(F,{requirements:t(K)[n].requirements,currentLevel:Y(n)},null,8,[`requirements`,`currentLevel`]),c(t(T),null,{default:g(()=>[r(`div`,H,[r(`div`,U,[c(t(A),{class:`text-base sm:text-lg cursor-pointer hover:text-primary transition-colors`,onClick:e=>t(Ee).openBuilding(n,Y(n))},{default:g(()=>[v(d(t(K)[n].name),1)]),_:2},1032,[`onClick`]),c(t(se),{class:`text-xs sm:text-sm`},{default:g(()=>[v(d(t(K)[n].description),1)]),_:2},1024)]),c(t(le),{variant:`secondary`,class:`text-xs whitespace-nowrap flex-shrink-0`},{default:g(()=>[v(`Lv `+d(Y(n)),1)]),_:2},1024)])]),_:2},1024),c(t(D),null,{default:g(()=>[r(`div`,de,[r(`div`,fe,[r(`p`,pe,d(t(G)(`buildingsView.upgradeCost`))+`:`,1),r(`div`,me,[r(`div`,he,[c(M,{type:`metal`,size:`sm`}),r(`span`,ge,d(t(G)(`resources.metal`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(O)(q.value.resources.metal,Q(n,Y(n)+1).metal)])},d(t(k)(Q(n,Y(n)+1).metal)),3)]),r(`div`,_e,[c(M,{type:`crystal`,size:`sm`}),r(`span`,ve,d(t(G)(`resources.crystal`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(O)(q.value.resources.crystal,Q(n,Y(n)+1).crystal)])},d(t(k)(Q(n,Y(n)+1).crystal)),3)]),r(`div`,ye,[c(M,{type:`deuterium`,size:`sm`}),r(`span`,be,d(t(G)(`resources.deuterium`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(O)(q.value.resources.deuterium,Q(n,Y(n)+1).deuterium)])},d(t(k)(Q(n,Y(n)+1).deuterium)),3)])])]),r(`div`,xe,[r(`div`,Se,[c(t(oe),{size:14,class:`flex-shrink-0`}),r(`span`,null,d(t(E)(Pe(n,Y(n)+1))),1)]),r(`div`,Ce,[c(t(b),{size:14,class:`flex-shrink-0`}),r(`span`,null,d(t(K)[n].spaceUsage),1)])]),c(t(S),{onClick:e=>je(n),disabled:!Ne(n),class:`w-full`},{default:g(()=>[v(d(Me(n)),1)]),_:2},1032,[`onClick`,`disabled`]),Y(n)>0?(o(),f(t(S),{key:0,onClick:e=>Ie(n),disabled:!Le(n),variant:`destructive`,class:`w-full`},{default:g(()=>[v(d(t(G)(`buildingsView.demolish`)),1)]),_:1},8,[`onClick`,`disabled`])):y(``,!0),Y(n)>0?(o(),e(`div`,we,[r(`p`,null,d(t(G)(`buildingsView.demolishRefund`))+`:`,1),r(`div`,Te,[r(`span`,null,d(t(k)($(n).metal))+` `+d(t(G)(`resources.metal`)),1),r(`span`,null,d(t(k)($(n).crystal))+` `+d(t(G)(`resources.crystal`)),1),r(`span`,null,d(t(k)($(n).deuterium))+` `+d(t(G)(`resources.deuterium`)),1)])])):y(``,!0)])]),_:2},1024)]),_:2},1024))),128))]),c(P,{ref_key:`alertDialog`,ref:J},null,512)])):y(``,!0)}});export{W as default}; \ No newline at end of file diff --git a/docs/assets/CardDescription-D2AN1hhX.js b/docs/assets/CardDescription-D2AN1hhX.js new file mode 100644 index 0000000..65bc2f2 --- /dev/null +++ b/docs/assets/CardDescription-D2AN1hhX.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Kt as n,Nt as r,Tn as i,Yt as a}from"./game-logic-CfBcTF_c.js";import{N as o}from"./index-DWmvUlvu.js";var s=r({__name:`CardDescription`,props:{class:{}},setup(r){let s=r;return(r,c)=>(n(),e(`p`,{"data-slot":`card-description`,class:i(t(o)(`text-muted-foreground text-sm`,s.class))},[a(r.$slots,`default`)],2))}});export{s as t}; \ No newline at end of file diff --git a/docs/assets/CardUnlockOverlay-BA1LyGjd.js b/docs/assets/CardUnlockOverlay-BA1LyGjd.js new file mode 100644 index 0000000..5441a7c --- /dev/null +++ b/docs/assets/CardUnlockOverlay-BA1LyGjd.js @@ -0,0 +1,2 @@ +import{At as e,Cn as t,Dt as n,Et as r,Kt as i,Mt as a,N as o,Nt as s,On as c,hn as l,in as u,jt as d,kt as f}from"./game-logic-CfBcTF_c.js";import{D as p}from"./vendor-icons-W6Ny__75.js";import{h as m,u as h}from"./game-config-D-D7cMgJ.js";import{I as g,M as _,P as v}from"./index-DWmvUlvu.js";import{t as y}from"./useGameConfig-B5wf1i8i.js";import{t as b}from"./AlertDialog-CiXBEnQ0.js";var x={key:0,class:`absolute inset-0 z-10 bg-background/70 backdrop-blur-[2px] rounded-lg flex items-center justify-center`},S={class:`text-center p-4 space-y-2`},C={class:`flex justify-center`},w={class:`rounded-full bg-muted p-2`},T={class:`text-xs font-medium text-muted-foreground`},E=s({__name:`CardUnlockOverlay`,props:{requirements:{},currentLevel:{}},setup(s){let E=s,D=g(),{t:O}=v(),{BUILDINGS:k,TECHNOLOGIES:A}=y(),j=l(null),M=r(()=>E.currentLevel!==void 0&&E.currentLevel>0||!E.requirements||!D.currentPlanet?!0:o(D.currentPlanet,D.player.technologies,E.requirements)),N=()=>{if(!E.requirements||!D.currentPlanet)return``;let e=[];for(let[t,n]of Object.entries(E.requirements))if(Object.values(h).includes(t)){let r=t,i=D.currentPlanet.buildings[r]||0,a=k.value[r]?.name||r,o=i>=n?`✓`:`✗`;e.push(`${o} ${a}: Lv ${n} (${O(`common.current`)}: Lv ${i})`)}else if(Object.values(m).includes(t)){let r=t,i=D.player.technologies[r]||0,a=A.value[r]?.name||r,o=i>=n?`✓`:`✗`;e.push(`${o} ${a}: Lv ${n} (${O(`common.current`)}: Lv ${i})`)}return e.join(` +`)},P=()=>{j.value?.show({title:O(`common.requirementsNotMet`),message:N()})};return(r,o)=>M.value?f(``,!0):(i(),e(`div`,x,[n(`div`,S,[n(`div`,C,[n(`div`,w,[a(t(p),{size:20,class:`text-muted-foreground`})])]),n(`p`,T,c(t(O)(`common.locked`)),1),a(t(_),{variant:`outline`,size:`sm`,onClick:P,class:`text-xs`},{default:u(()=>[d(c(t(O)(`common.viewRequirements`)),1)]),_:1})]),a(b,{ref_key:`requirementsDialog`,ref:j},null,512)]))}});export{E as t}; \ No newline at end of file diff --git a/docs/assets/DefenseView-DuI03pUa.js b/docs/assets/DefenseView-DuI03pUa.js new file mode 100644 index 0000000..60709fa --- /dev/null +++ b/docs/assets/DefenseView-DuI03pUa.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as ee,Jt as te,Kt as i,Mt as a,N as o,Nt as s,On as c,Ot as ne,Tn as l,hn as u,i as d,in as f,jt as p,kt as m,t as re}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-vue-router-CWDMmE-U.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import"./vendor-icons-W6Ny__75.js";import{t as ie}from"./CardDescription-D2AN1hhX.js";import{d as h,u as ae}from"./game-config-D-D7cMgJ.js";import{A as oe,I as se,M as ce,O as g,P as _,_ as v,c as y,l as b,o as x,r as S,s as C,t as w,u as T,w as E}from"./index-DWmvUlvu.js";import{t as D}from"./useGameConfig-B5wf1i8i.js";import{t as O}from"./AlertDialog-CiXBEnQ0.js";import{t as k}from"./CardUnlockOverlay-BA1LyGjd.js";import{t as A}from"./UnlockRequirement-c2kDZKZ0.js";var j={key:0,class:`container mx-auto p-4 sm:p-6`},M={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},N={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},P={class:`flex justify-between items-start gap-2`},F={class:`min-w-0 flex-1`},I={class:`space-y-3 sm:space-y-4`},L={class:`grid grid-cols-2 gap-2 text-xs sm:text-sm`},R={class:`text-muted-foreground`},z={class:`font-medium`},B={class:`text-muted-foreground`},V={class:`font-medium`},H={class:`text-muted-foreground`},U={class:`font-medium`},le={class:`text-muted-foreground`},W={class:`font-medium`},ue={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},de={class:`text-muted-foreground mb-1 sm:mb-2`},fe={class:`space-y-1 sm:space-y-1.5`},pe={class:`flex items-center gap-1.5 sm:gap-2`},me={class:`text-xs`},he={class:`flex items-center gap-1.5 sm:gap-2`},ge={class:`text-xs`},_e={class:`flex items-center gap-1.5 sm:gap-2`},ve={class:`text-xs`},ye={class:`space-y-2`},be={key:0,class:`text-xs text-muted-foreground`},xe={key:0,class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2 p-2.5 sm:p-3 bg-muted rounded-lg`},Se={class:`font-medium text-muted-foreground`},Ce={class:`space-y-1 sm:space-y-1.5`},we={class:`flex items-center gap-1.5 sm:gap-2`},Te={class:`text-xs`},Ee={class:`flex items-center gap-1.5 sm:gap-2`},De={class:`text-xs`},Oe={class:`flex items-center gap-1.5 sm:gap-2`},G={class:`text-xs`},K=s({__name:`DefenseView`,setup(s){let K=se(),ke=v(),{t:q}=_(),{DEFENSES:J}=D(),Y=ee(()=>K.currentPlanet),X=u(null),Z=u({[h.RocketLauncher]:0,[h.LightLaser]:0,[h.HeavyLaser]:0,[h.GaussCannon]:0,[h.IonCannon]:0,[h.PlasmaTurret]:0,[h.SmallShieldDome]:0,[h.LargeShieldDome]:0,[h.PlanetaryShield]:0}),Q=e=>e===h.SmallShieldDome||e===h.LargeShieldDome,Ae=(e,t)=>{if(!K.currentPlanet||!d(K.currentPlanet,e,t,K.player.technologies).valid)return!1;let n=re(K.currentPlanet,e,t,K.player.officers);return K.currentPlanet.buildQueue.push(n),!0},je=e=>{let t=Z.value[e];if(t<=0){X.value?.show({title:q(`defenseView.inputError`),message:q(`defenseView.inputErrorMessage`)});return}Ae(e,t)?Z.value[e]=0:X.value?.show({title:q(`defenseView.buildFailed`),message:q(`defenseView.buildFailedMessage`)})},Me=e=>{if(!Y.value)return!1;let t=Z.value[e];if(t<=0||Q(e)&&(Y.value.defense[e]>0||t>1))return!1;let n=J.value[e],r={metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t};return o(Y.value,K.player.technologies,n.requirements)&&Y.value.resources.metal>=r.metal&&Y.value.resources.crystal>=r.crystal&&Y.value.resources.deuterium>=r.deuterium},$=e=>{let t=Z.value[e],n=J.value[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t}};return(ee,o)=>Y.value?(i(),e(`div`,j,[a(A,{"required-building":t(ae).Shipyard,"required-level":1},null,8,[`required-building`]),r(`h1`,M,c(t(q)(`defenseView.title`)),1),r(`div`,N,[(i(!0),e(n,null,te(Object.values(t(h)),n=>(i(),ne(t(T),{key:n,class:`relative`},{default:f(()=>[a(k,{requirements:t(J)[n].requirements},null,8,[`requirements`]),a(t(y),null,{default:f(()=>[r(`div`,P,[r(`div`,F,[a(t(C),{class:`text-base sm:text-lg cursor-pointer hover:text-primary transition-colors`,onClick:e=>t(ke).openDefense(n)},{default:f(()=>[p(c(t(J)[n].name),1)]),_:2},1032,[`onClick`]),a(t(ie),{class:`text-xs sm:text-sm`},{default:f(()=>[p(c(t(J)[n].description),1)]),_:2},1024)]),a(t(oe),{variant:`secondary`,class:`text-xs whitespace-nowrap flex-shrink-0`},{default:f(()=>[p(c(Y.value.defense[n]),1)]),_:2},1024)])]),_:2},1024),a(t(b),null,{default:f(()=>[r(`div`,I,[r(`div`,L,[r(`div`,null,[r(`p`,R,c(t(q)(`defenseView.attack`)),1),r(`p`,z,c(t(J)[n].attack),1)]),r(`div`,null,[r(`p`,B,c(t(q)(`defenseView.shield`)),1),r(`p`,V,c(t(J)[n].shield),1)]),r(`div`,null,[r(`p`,H,c(t(q)(`defenseView.armor`)),1),r(`p`,U,c(t(J)[n].armor),1)]),r(`div`,null,[r(`p`,le,c(t(q)(`defenseView.buildTime`)),1),r(`p`,W,c(t(J)[n].buildTime)+c(t(q)(`defenseView.seconds`)),1)])]),r(`div`,ue,[r(`p`,de,c(t(q)(`defenseView.unitCost`))+`:`,1),r(`div`,fe,[r(`div`,pe,[a(E,{type:`metal`,size:`sm`}),r(`span`,me,c(t(q)(`resources.metal`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.metal,t(J)[n].cost.metal)])},c(t(S)(t(J)[n].cost.metal)),3)]),r(`div`,he,[a(E,{type:`crystal`,size:`sm`}),r(`span`,ge,c(t(q)(`resources.crystal`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.crystal,t(J)[n].cost.crystal)])},c(t(S)(t(J)[n].cost.crystal)),3)]),r(`div`,_e,[a(E,{type:`deuterium`,size:`sm`}),r(`span`,ve,c(t(q)(`resources.deuterium`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.deuterium,t(J)[n].cost.deuterium)])},c(t(S)(t(J)[n].cost.deuterium)),3)])])]),r(`div`,ye,[a(t(w),{for:`quantity-${n}`,class:`text-xs sm:text-sm`},{default:f(()=>[p(c(t(q)(`defenseView.buildQuantity`)),1)]),_:1},8,[`for`]),a(t(g),{id:`quantity-${n}`,modelValue:Z.value[n],"onUpdate:modelValue":e=>Z.value[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:Q(n)&&Y.value.defense[n]>0?0:void 0,disabled:Q(n)&&Y.value.defense[n]>0,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`max`,`disabled`]),Q(n)&&Y.value.defense[n]>0?(i(),e(`p`,be,c(t(q)(`defenseView.shieldDomeBuilt`)),1)):m(``,!0)]),Z.value[n]>0?(i(),e(`div`,xe,[r(`p`,Se,c(t(q)(`defenseView.totalCost`))+`:`,1),r(`div`,Ce,[r(`div`,we,[a(E,{type:`metal`,size:`sm`}),r(`span`,Te,c(t(q)(`resources.metal`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.metal,$(n).metal)])},c(t(S)($(n).metal)),3)]),r(`div`,Ee,[a(E,{type:`crystal`,size:`sm`}),r(`span`,De,c(t(q)(`resources.crystal`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.crystal,$(n).crystal)])},c(t(S)($(n).crystal)),3)]),r(`div`,Oe,[a(E,{type:`deuterium`,size:`sm`}),r(`span`,G,c(t(q)(`resources.deuterium`))+`:`,1),r(`span`,{class:l([`font-medium text-xs sm:text-sm`,t(x)(Y.value.resources.deuterium,$(n).deuterium)])},c(t(S)($(n).deuterium)),3)])])])):m(``,!0),a(t(ce),{onClick:e=>je(n),disabled:!Me(n),class:`w-full`},{default:f(()=>[p(c(t(q)(`defenseView.build`)),1)]),_:1},8,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),a(O,{ref_key:`alertDialog`,ref:X},null,512)])):m(``,!0)}});export{K as default}; \ No newline at end of file diff --git a/docs/assets/FleetView-BBGER_SR.js b/docs/assets/FleetView-BBGER_SR.js new file mode 100644 index 0000000..fcf914a --- /dev/null +++ b/docs/assets/FleetView-BBGER_SR.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as i,F as a,Gt as o,Jt as s,Kt as c,Mt as l,Nt as ee,On as u,Ot as d,S as te,Tn as f,Wt as ne,Xt as re,a as ie,d as p,f as m,hn as h,in as g,jt as _,kt as v,m as ae,n as oe,p as y,rt as b,u as se}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import{a as ce,o as le}from"./vendor-vue-router-CWDMmE-U.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{I as ue,S as de,_ as fe,c as pe,d as me,r as he,v as ge}from"./vendor-icons-W6Ny__75.js";import{t as x}from"./CardDescription-D2AN1hhX.js";import{f as S,m as C,u as _e}from"./game-config-D-D7cMgJ.js";import{A as w,F as ve,I as ye,M as T,O as E,P as be,c as D,i as O,k as xe,l as k,r as A,s as j,t as M,u as N,w as P}from"./index-DWmvUlvu.js";import{t as Se}from"./useGameConfig-B5wf1i8i.js";import{t as Ce}from"./AlertDialog-CiXBEnQ0.js";import{t as we}from"./UnlockRequirement-c2kDZKZ0.js";var Te={key:0,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},Ee={class:`text-2xl sm:text-3xl font-bold`},De={class:`flex gap-2 border-b`},Oe={key:0},ke={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},Ae={class:`flex justify-between items-start`},je={class:`font-semibold text-sm sm:text-base`},Me={class:`text-xl sm:text-2xl font-bold`},Ne={class:`text-xs sm:text-sm text-muted-foreground space-y-1`},Pe={key:1,class:`space-y-4`},Fe={class:`flex justify-between items-center`},Ie={class:`text-sm font-medium`},Le={class:`text-sm font-bold`},Re={class:`grid grid-cols-1 sm:grid-cols-2 gap-3 sm:gap-4`},ze={class:`flex gap-2`},Be={class:`grid grid-cols-3 gap-2 sm:gap-4`},Ve={class:`space-y-2`},He={class:`space-y-2`},Ue={class:`space-y-2`},We={class:`grid grid-cols-2 sm:grid-cols-3 gap-2`},Ge={class:`grid grid-cols-1 sm:grid-cols-3 gap-3 sm:gap-4`},Ke={class:`space-y-2`},qe={class:`space-y-2`},Je={class:`space-y-2`},Ye={class:`text-xs sm:text-sm text-muted-foreground mt-2`},Xe={class:`flex justify-between text-xs sm:text-sm`},Ze={class:`text-muted-foreground`},Qe={class:`flex items-center gap-1.5`},F={class:`text-muted-foreground`},$e={key:0,class:`flex justify-between text-xs sm:text-sm`},et={class:`text-muted-foreground`},tt={key:2,class:`space-y-4`},nt={class:`flex justify-between items-start`},rt={class:`text-xs sm:text-sm font-medium mb-2`},it={class:`flex flex-wrap gap-2`},at={key:0},ot={class:`text-xs sm:text-sm font-medium mb-2`},st={class:`flex flex-wrap gap-2 text-xs`},ct={key:0,class:`flex items-center gap-1`},lt={key:1,class:`flex items-center gap-1`},ut={key:2,class:`flex items-center gap-1`},dt={key:3,class:`flex items-center gap-1`},ft={class:`space-y-2`},pt={class:`flex justify-between text-xs sm:text-sm`},mt={class:`flex gap-2`},I=ee({__name:`FleetView`,setup(ee){let I=ce(),ht=le(),L=ye(),gt=ve(),{t:R}=be(),{SHIPS:z}=Se(),B=i(()=>L.currentPlanet),V=h(null),H=h(Date.now()),U=null,_t=i(()=>a(b(L.player.officers,Date.now()).additionalFleetSlots)),W=h(`fleet`),G=h({[C.LightFighter]:0,[C.HeavyFighter]:0,[C.Cruiser]:0,[C.Battleship]:0,[C.SmallCargo]:0,[C.LargeCargo]:0,[C.ColonyShip]:0,[C.Recycler]:0,[C.EspionageProbe]:0,[C.DarkMatterHarvester]:0,[C.Deathstar]:0}),K=h({galaxy:1,system:1,position:1}),q=h(S.Attack),J=h({metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0});ne(()=>{U=window.setInterval(()=>{H.value=Date.now()},1e3);let{galaxy:e,system:t,position:n,mission:r}=I.query;(e||t||n)&&(e&&(K.value.galaxy=Number(e)),t&&(K.value.system=Number(t)),n&&(K.value.position=Number(n)),r===`spy`?q.value=S.Spy:r===`attack`?q.value=S.Attack:r===`colonize`&&(q.value=S.Colonize),W.value=`send`,ht.replace({path:`/fleet`}))}),o(()=>{U&&clearInterval(U)});let Y=i(()=>[{type:S.Attack,name:R(`fleetView.attackMission`),icon:pe},{type:S.Transport,name:R(`fleetView.transport`),icon:de},{type:S.Colonize,name:R(`fleetView.colonize`),icon:fe},{type:S.Spy,name:R(`fleetView.spy`),icon:ue},{type:S.Deploy,name:R(`fleetView.deploy`),icon:he},{type:S.Recycle,name:R(`fleetView.recycle`),icon:ge},{type:S.Destroy,name:R(`fleetView.destroy`),icon:me}]),vt=e=>Y.value.find(t=>t.type===e)?.name||e,yt=e=>L.player.planets.find(t=>t.id===e)?.name||R(`fleetView.unknownPlanet`),X=()=>{let e=0;for(let[t,n]of Object.entries(G.value))if(n>0){let r=z.value[t];e+=r.cargoCapacity*n}return e},Z=()=>J.value.metal+J.value.crystal+J.value.deuterium+J.value.darkMatter,Q=()=>{let e=b(L.player.officers,Date.now());return se(G.value,e.fuelConsumptionReduction,J.value)},bt=()=>{if(!B.value)return 0;let e=m(B.value.position,K.value),t=b(L.player.officers,Date.now());return y(e,p(G.value,t.fleetSpeedBonus))},$=()=>{if(!Object.values(G.value).some(e=>e>0))return{valid:!1,errorKey:`fleetView.noShipsSelected`};if(B.value&&K.value.galaxy===B.value.position.galaxy&&K.value.system===B.value.position.system&&K.value.position===B.value.position.position)return{valid:!1,errorKey:`fleetView.cannotSendToOwnPlanet`};if(q.value===S.Transport&&Z()>X())return{valid:!1,errorKey:`fleetView.cargoExceedsCapacity`};if(q.value===S.Colonize&&(!G.value[C.ColonyShip]||(G.value[C.ColonyShip]??0)<1))return{valid:!1,errorKey:`fleetView.noColonyShip`};if(q.value===S.Recycle){let e=`debris_${K.value.galaxy}_${K.value.system}_${K.value.position}`,t=gt.debrisFields[e];if(!t||t.resources.metal===0&&t.resources.crystal===0)return{valid:!1,errorKey:`fleetView.noDebrisAtTarget`}}return q.value===S.Destroy&&(!G.value[C.Deathstar]||(G.value[C.Deathstar]??0)<1)?{valid:!1,errorKey:`fleetView.noDeathstar`}:{valid:!0}},xt=(e,t,n,r={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0})=>{if(!L.currentPlanet)return!1;let i=L.player.fleetMissions.length,a=ie(L.currentPlanet,n,r,L.player.officers,i);if(!a.valid)return!1;let o=t===S.Transport;oe(L.currentPlanet,n,a.fuelNeeded,o,r);let s=y(m(L.currentPlanet.position,e),p(n,b(L.player.officers,Date.now()).fleetSpeedBonus)),c=ae(L.player.id,L.currentPlanet.id,e,t,n,r,s);return L.player.fleetMissions.push(c),!0},St=()=>{if(!B.value)return;let e=$();if(!e.valid){V.value?.show({title:R(`fleetView.sendFailed`),message:e.errorKey?R(e.errorKey):R(`fleetView.sendFailedMessage`)});return}let t={};for(let[e,n]of Object.entries(G.value))n>0&&(t[e]=n);xt(K.value,q.value,t,q.value===S.Transport?J.value:void 0)?(Object.keys(G.value).forEach(e=>{G.value[e]=0}),J.value={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},W.value=`missions`):V.value?.show({title:R(`fleetView.sendFailed`),message:R(`fleetView.sendFailedMessage`)})},Ct=e=>{let t=L.player.fleetMissions.find(t=>t.id===e);return t?te(t,Date.now()):!1},wt=e=>{Ct(e)||V.value?.show({title:R(`fleetView.recallFailed`),message:R(`fleetView.recallFailedMessage`)})},Tt=e=>{let t=H.value,n=e.status===`outbound`?e.arrivalTime:e.returnTime;return Math.max(0,(n-t)/1e3)},Et=e=>{let t=H.value;if(e.status===`outbound`){let n=e.arrivalTime-e.departureTime,r=t-e.departureTime;return Math.max(0,Math.min(100,r/n*100))}else{let n=e.arrivalTime,r=e.returnTime-n,i=t-n;return Math.max(0,Math.min(100,i/r*100))}};return(i,a)=>B.value?(c(),e(`div`,Te,[l(we,{"required-building":t(_e).Shipyard,"required-level":1},null,8,[`required-building`]),r(`h1`,Ee,u(t(R)(`fleetView.title`)),1),r(`div`,De,[l(t(T),{onClick:a[0]||=e=>W.value=`fleet`,variant:W.value===`fleet`?`default`:`ghost`,class:`rounded-b-none`},{default:g(()=>[_(u(t(R)(`fleetView.fleetOverview`)),1)]),_:1},8,[`variant`]),l(t(T),{onClick:a[1]||=e=>W.value=`send`,variant:W.value===`send`?`default`:`ghost`,class:`rounded-b-none`},{default:g(()=>[_(u(t(R)(`fleetView.sendFleet`)),1)]),_:1},8,[`variant`]),l(t(T),{onClick:a[2]||=e=>W.value=`missions`,variant:W.value===`missions`?`default`:`ghost`,class:`rounded-b-none`},{default:g(()=>[_(u(t(R)(`fleetView.flightMissions`))+` `,1),t(L).player.fleetMissions.length>0?(c(),d(t(w),{key:0,variant:`secondary`,class:`ml-1`},{default:g(()=>[_(u(t(L).player.fleetMissions.length),1)]),_:1})):v(``,!0)]),_:1},8,[`variant`])]),W.value===`fleet`?(c(),e(`div`,Oe,[l(t(N),null,{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.currentPlanetFleet`)),1)]),_:1}),l(t(x),null,{default:g(()=>[_(u(B.value.name)+` [`+u(B.value.position.galaxy)+`:`+u(B.value.position.system)+`:`+u(B.value.position.position)+`] `,1)]),_:1})]),_:1}),l(t(k),null,{default:g(()=>[r(`div`,ke,[(c(!0),e(n,null,s(B.value.fleet,(n,i)=>(c(),e(`div`,{key:i,class:`p-3 sm:p-4 border rounded-lg space-y-2`},[r(`div`,Ae,[r(`div`,null,[r(`h3`,je,u(t(z)[i].name),1),r(`p`,Me,u(t(A)(n)),1)])]),r(`div`,Ne,[r(`p`,null,u(t(R)(`fleetView.attack`))+`: `+u(t(z)[i].attack),1),r(`p`,null,u(t(R)(`fleetView.shield`))+`: `+u(t(z)[i].shield),1),r(`p`,null,u(t(R)(`fleetView.armor`))+`: `+u(t(z)[i].armor),1),r(`p`,null,u(t(R)(`fleetView.speed`))+`: `+u(t(A)(t(z)[i].speed)),1),r(`p`,null,u(t(R)(`fleetView.cargo`))+`: `+u(t(A)(t(z)[i].cargoCapacity)),1)])]))),128))])]),_:1})]),_:1})])):v(``,!0),W.value===`send`?(c(),e(`div`,Pe,[l(t(N),null,{default:g(()=>[l(t(k),{class:`py-4`},{default:g(()=>[r(`div`,Fe,[r(`span`,Ie,u(t(R)(`fleetView.fleetMissionSlots`))+`:`,1),r(`span`,Le,u(t(L).player.fleetMissions.length)+` / `+u(_t.value),1)])]),_:1})]),_:1}),l(t(N),null,{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.selectFleet`)),1)]),_:1}),l(t(x),null,{default:g(()=>[_(u(t(R)(`fleetView.selectFleetDescription`)),1)]),_:1})]),_:1}),l(t(k),null,{default:g(()=>[r(`div`,Re,[(c(!0),e(n,null,s(B.value.fleet,(n,i)=>(c(),e(`div`,{key:i,class:`space-y-2`},[l(t(M),{for:`ship-${i}`,class:`text-xs sm:text-sm`},{default:g(()=>[_(u(t(z)[i].name)+` (`+u(t(R)(`fleetView.available`))+`: `+u(n)+`) `,1)]),_:2},1032,[`for`]),r(`div`,ze,[l(t(E),{id:`ship-${i}`,modelValue:G.value[i],"onUpdate:modelValue":e=>G.value[i]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:n,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`max`]),l(t(T),{onClick:e=>G.value[i]=n,variant:`outline`,size:`sm`},{default:g(()=>[_(u(t(R)(`fleetView.all`)),1)]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1}),l(t(N),null,{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.targetCoordinates`)),1)]),_:1})]),_:1}),l(t(k),null,{default:g(()=>[r(`div`,Be,[r(`div`,Ve,[l(t(M),{for:`galaxy`,class:`text-xs sm:text-sm`},{default:g(()=>[_(u(t(R)(`fleetView.galaxy`)),1)]),_:1}),l(t(E),{id:`galaxy`,modelValue:K.value.galaxy,"onUpdate:modelValue":a[3]||=e=>K.value.galaxy=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`9`,placeholder:`1`},null,8,[`modelValue`])]),r(`div`,He,[l(t(M),{for:`system`,class:`text-xs sm:text-sm`},{default:g(()=>[_(u(t(R)(`fleetView.system`)),1)]),_:1}),l(t(E),{id:`system`,modelValue:K.value.system,"onUpdate:modelValue":a[4]||=e=>K.value.system=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`10`,placeholder:`1`},null,8,[`modelValue`])]),r(`div`,Ue,[l(t(M),{for:`position`,class:`text-xs sm:text-sm`},{default:g(()=>[_(u(t(R)(`fleetView.position`)),1)]),_:1}),l(t(E),{id:`position`,modelValue:K.value.position,"onUpdate:modelValue":a[5]||=e=>K.value.position=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`10`,placeholder:`1`},null,8,[`modelValue`])])])]),_:1})]),_:1}),l(t(N),null,{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.missionType`)),1)]),_:1})]),_:1}),l(t(k),null,{default:g(()=>[r(`div`,We,[(c(!0),e(n,null,s(Y.value,e=>(c(),d(t(T),{key:e.type,onClick:t=>q.value=e.type,variant:q.value===e.type?`default`:`outline`,class:`justify-start`},{default:g(()=>[(c(),d(re(e.icon),{class:`h-4 w-4 mr-2`})),_(` `+u(e.name),1)]),_:2},1032,[`onClick`,`variant`]))),128))])]),_:1})]),_:1}),q.value===t(S).Transport?(c(),d(t(N),{key:0},{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.transportResources`)),1)]),_:1})]),_:1}),l(t(k),null,{default:g(()=>[r(`div`,Ge,[r(`div`,Ke,[l(t(M),{for:`cargo-metal`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:g(()=>[l(P,{type:`metal`,size:`sm`}),_(` `+u(t(R)(`resources.metal`))+` (`+u(t(R)(`fleetView.available`))+`: `+u(t(A)(B.value.resources.metal))+`) `,1)]),_:1}),l(t(E),{id:`cargo-metal`,modelValue:J.value.metal,"onUpdate:modelValue":a[6]||=e=>J.value.metal=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:B.value.resources.metal,placeholder:`0`},null,8,[`modelValue`,`max`])]),r(`div`,qe,[l(t(M),{for:`cargo-crystal`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:g(()=>[l(P,{type:`crystal`,size:`sm`}),_(` `+u(t(R)(`resources.crystal`))+` (`+u(t(R)(`fleetView.available`))+`: `+u(t(A)(B.value.resources.crystal))+`) `,1)]),_:1}),l(t(E),{id:`cargo-crystal`,modelValue:J.value.crystal,"onUpdate:modelValue":a[7]||=e=>J.value.crystal=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:B.value.resources.crystal,placeholder:`0`},null,8,[`modelValue`,`max`])]),r(`div`,Je,[l(t(M),{for:`cargo-deuterium`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:g(()=>[l(P,{type:`deuterium`,size:`sm`}),_(` `+u(t(R)(`resources.deuterium`))+` (`+u(t(R)(`fleetView.available`))+`: `+u(t(A)(B.value.resources.deuterium))+`) `,1)]),_:1}),l(t(E),{id:`cargo-deuterium`,modelValue:J.value.deuterium,"onUpdate:modelValue":a[8]||=e=>J.value.deuterium=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:B.value.resources.deuterium,placeholder:`0`},null,8,[`modelValue`,`max`])])]),r(`p`,Ye,u(t(R)(`fleetView.totalCargoCapacity`))+`: `+u(t(A)(X()))+` | `+u(t(R)(`fleetView.used`))+`: `+u(t(A)(Z())),1)]),_:1})]),_:1})):v(``,!0),l(t(N),null,{default:g(()=>[l(t(D),null,{default:g(()=>[l(t(j),null,{default:g(()=>[_(u(t(R)(`fleetView.missionInfo`)),1)]),_:1})]),_:1}),l(t(k),{class:`space-y-2`},{default:g(()=>[r(`div`,Xe,[r(`span`,Ze,u(t(R)(`fleetView.fuelConsumption`))+`:`,1),r(`span`,Qe,[l(P,{type:`deuterium`,size:`sm`}),r(`span`,{class:f(Q()>B.value.resources.deuterium?`text-red-600 dark:text-red-400 font-medium`:``)},u(t(A)(Q())),3),r(`span`,F,`/ `+u(t(A)(B.value.resources.deuterium)),1)])]),Object.values(G.value).some(e=>e>0)?(c(),e(`div`,$e,[r(`span`,et,u(t(R)(`fleetView.flightTime`))+`:`,1),r(`span`,null,u(t(O)(bt())),1)])):v(``,!0)]),_:1})]),_:1}),l(t(T),{onClick:St,disabled:!$(),class:`w-full`,size:`lg`},{default:g(()=>[_(u(t(R)(`fleetView.sendFleet`)),1)]),_:1},8,[`disabled`])])):v(``,!0),W.value===`missions`?(c(),e(`div`,tt,[t(L).player.fleetMissions.length===0?(c(),d(t(N),{key:0},{default:g(()=>[l(t(k),{class:`py-8 text-center text-muted-foreground`},{default:g(()=>[_(u(t(R)(`fleetView.noFlightMissions`)),1)]),_:1})]),_:1})):v(``,!0),(c(!0),e(n,null,s(t(L).player.fleetMissions,i=>(c(),d(t(N),{key:i.id},{default:g(()=>[l(t(D),null,{default:g(()=>[r(`div`,nt,[r(`div`,null,[l(t(j),{class:`text-base sm:text-lg`},{default:g(()=>[_(u(vt(i.missionType)),1)]),_:2},1024),l(t(x),{class:`text-xs sm:text-sm`},{default:g(()=>[_(u(yt(i.originPlanetId))+` → [`+u(i.targetPosition.galaxy)+`:`+u(i.targetPosition.system)+`:`+u(i.targetPosition.position)+`] `,1)]),_:2},1024)]),l(t(w),{variant:i.status===`outbound`?`default`:`secondary`},{default:g(()=>[_(u(i.status===`outbound`?t(R)(`fleetView.outbound`):t(R)(`fleetView.returning`)),1)]),_:2},1032,[`variant`])])]),_:2},1024),l(t(k),{class:`space-y-3`},{default:g(()=>[r(`div`,null,[r(`p`,rt,u(t(R)(`fleetView.fleetComposition`))+`:`,1),r(`div`,it,[(c(!0),e(n,null,s(i.fleet,(e,n)=>(c(),d(t(w),{key:n,variant:`outline`},{default:g(()=>[_(u(t(z)[n].name)+`: `+u(e),1)]),_:2},1024))),128))])]),i.cargo.metal>0||i.cargo.crystal>0||i.cargo.deuterium>0||i.cargo.darkMatter>0?(c(),e(`div`,at,[r(`p`,ot,u(t(R)(`fleetView.carryingResources`))+`:`,1),r(`div`,st,[i.cargo.metal>0?(c(),e(`span`,ct,[l(P,{type:`metal`,size:`sm`}),_(` `+u(t(A)(i.cargo.metal)),1)])):v(``,!0),i.cargo.crystal>0?(c(),e(`span`,lt,[l(P,{type:`crystal`,size:`sm`}),_(` `+u(t(A)(i.cargo.crystal)),1)])):v(``,!0),i.cargo.deuterium>0?(c(),e(`span`,ut,[l(P,{type:`deuterium`,size:`sm`}),_(` `+u(t(A)(i.cargo.deuterium)),1)])):v(``,!0),i.cargo.darkMatter>0?(c(),e(`span`,dt,[l(P,{type:`darkMatter`,size:`sm`}),_(` `+u(t(A)(i.cargo.darkMatter)),1)])):v(``,!0)])])):v(``,!0),r(`div`,ft,[r(`div`,pt,[r(`span`,null,u(i.status===`outbound`?t(R)(`fleetView.arrivalTime`):t(R)(`fleetView.returnTime`))+`:`,1),r(`span`,null,u(t(O)(Tt(i))),1)]),l(t(xe),{"model-value":Et(i)},null,8,[`model-value`])]),r(`div`,mt,[i.status===`outbound`?(c(),d(t(T),{key:0,onClick:e=>wt(i.id),variant:`outline`,size:`sm`,class:`w-full`},{default:g(()=>[_(u(t(R)(`fleetView.recallFleet`)),1)]),_:1},8,[`onClick`])):v(``,!0)])]),_:2},1024)]),_:2},1024))),128))])):v(``,!0),l(Ce,{ref_key:`alertDialog`,ref:V},null,512)])):v(``,!0)}});export{I as default}; \ No newline at end of file diff --git a/docs/assets/GMView-Cql_sk5m.js b/docs/assets/GMView-Cql_sk5m.js new file mode 100644 index 0000000..3f0db98 --- /dev/null +++ b/docs/assets/GMView-Cql_sk5m.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as ee,Jt as i,Kt as a,Mt as o,Nt as s,On as c,Ot as te,hn as l,in as u,jt as d,kt as f}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import"./vendor-icons-W6Ny__75.js";import{t as p}from"./CardDescription-D2AN1hhX.js";import{d as ne,h as re,m as ie,p as m,u as ae}from"./game-config-D-D7cMgJ.js";import{A as oe,I as se,M as h,O as g,P as ce,c as _,l as v,s as y,t as b,u as x}from"./index-DWmvUlvu.js";import{t as le}from"./useGameConfig-B5wf1i8i.js";import{a as ue,i as de,n as fe,r as pe,t as S}from"./SelectValue-Cm2l40Fd.js";var C={class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},w={class:`flex items-center justify-between`},T={class:`text-2xl sm:text-3xl font-bold`},E={key:0,class:`flex flex-wrap gap-2 border-b`},D={key:1,class:`space-y-4`},O={class:`flex gap-2`},k={key:2,class:`space-y-4`},A={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},j={class:`flex gap-2`},M={key:3,class:`space-y-4`},N={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},P={class:`flex gap-2`},F={key:4,class:`space-y-4`},I={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},L={class:`flex gap-2`},R={key:5,class:`space-y-4`},z={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},B={class:`flex gap-2`},me={key:6,class:`space-y-4`},he={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},ge={class:`flex gap-2`},V=s({__name:`GMView`,setup(s){let V=se(),{t:H}=ce(),{BUILDINGS:_e,TECHNOLOGIES:ve,SHIPS:ye,DEFENSES:be,OFFICERS:xe}=le(),U=l(V.player.planets[0]?.id||``),W=l(`resources`),G=l({});Object.values(m).forEach(e=>{let t=V.player.officers[e];if(t&&t.expiresAt){let n=Math.ceil((t.expiresAt-Date.now())/(1e3*60*60*24));G.value[e]=Math.max(0,n)}else G.value[e]=0});let K=ee(()=>V.player.planets.find(e=>e.id===U.value)),Se=[`metal`,`crystal`,`deuterium`,`darkMatter`],Ce=Object.values(ae),we=Object.values(re),Te=Object.values(ie),Ee=Object.values(ne),q=Object.values(m),J=(e,t)=>{K.value&&(K.value.resources[e]+=t)},Y=(e,t)=>{K.value&&(K.value.buildings[e]=t)},X=(e,t)=>{V.player.technologies[e]=t},Z=(e,t)=>{K.value&&(K.value.fleet[e]=(K.value.fleet[e]||0)+t)},Q=(e,t)=>{K.value&&(K.value.defense[e]=(K.value.defense[e]||0)+t)},$=(e,t)=>{G.value[e]=t;let n=Date.now(),r=n+t*24*60*60*1e3;V.player.officers[e]?(V.player.officers[e].expiresAt=r,V.player.officers[e].active=!0,V.player.officers[e].hiredAt||(V.player.officers[e].hiredAt=n)):V.player.officers[e]={type:e,active:!0,hiredAt:n,expiresAt:r}},De=()=>{confirm(H(`gmView.resetGameConfirm`))&&(localStorage.clear(),location.reload())};return(ee,s)=>(a(),e(`div`,C,[r(`div`,w,[r(`h1`,T,c(t(H)(`gmView.title`)),1),o(t(oe),{variant:`destructive`},{default:u(()=>[d(c(t(H)(`gmView.adminOnly`)),1)]),_:1})]),o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.selectPlanet`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[o(t(ue),{modelValue:U.value,"onUpdate:modelValue":s[0]||=e=>U.value=e},{default:u(()=>[o(t(fe),null,{default:u(()=>[o(t(S),{placeholder:t(H)(`gmView.choosePlanet`)},null,8,[`placeholder`])]),_:1}),o(t(de),null,{default:u(()=>[(a(!0),e(n,null,i(t(V).player.planets,e=>(a(),te(t(pe),{key:e.id,value:e.id},{default:u(()=>[d(c(e.name)+` (`+c(e.position.galaxy)+`:`+c(e.position.system)+`:`+c(e.position.position)+`) `,1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),_:1})]),_:1}),K.value?(a(),e(`div`,E,[o(t(h),{onClick:s[1]||=e=>W.value=`resources`,variant:W.value===`resources`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.resources`)),1)]),_:1},8,[`variant`]),o(t(h),{onClick:s[2]||=e=>W.value=`buildings`,variant:W.value===`buildings`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.buildings`)),1)]),_:1},8,[`variant`]),o(t(h),{onClick:s[3]||=e=>W.value=`research`,variant:W.value===`research`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.research`)),1)]),_:1},8,[`variant`]),o(t(h),{onClick:s[4]||=e=>W.value=`ships`,variant:W.value===`ships`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.ships`)),1)]),_:1},8,[`variant`]),o(t(h),{onClick:s[5]||=e=>W.value=`defense`,variant:W.value===`defense`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.defense`)),1)]),_:1},8,[`variant`]),o(t(h),{onClick:s[6]||=e=>W.value=`officers`,variant:W.value===`officers`?`default`:`ghost`,class:`rounded-b-none`},{default:u(()=>[d(c(t(H)(`gmView.officers`)),1)]),_:1},8,[`variant`])])):f(``,!0),K.value&&W.value===`resources`?(a(),e(`div`,D,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyResources`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.resourcesDesc`)),1)]),_:1})]),_:1}),o(t(v),{class:`space-y-4`},{default:u(()=>[(a(),e(n,null,i(Se,e=>r(`div`,{key:e,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(H)(`resources.${e}`)),1)]),_:2},1024),r(`div`,O,[o(t(g),{modelValue:K.value.resources[e],"onUpdate:modelValue":t=>K.value.resources[e]=t,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),o(t(h),{onClick:t=>J(e,1e6),variant:`outline`,size:`sm`},{default:u(()=>[...s[7]||=[d(`+1M`,-1)]]),_:1},8,[`onClick`]),o(t(h),{onClick:t=>J(e,1e7),variant:`outline`,size:`sm`},{default:u(()=>[...s[8]||=[d(`+10M`,-1)]]),_:1},8,[`onClick`])])])),64))]),_:1})]),_:1})])):f(``,!0),K.value&&W.value===`buildings`?(a(),e(`div`,k,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyBuildings`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.buildingsDesc`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[r(`div`,A,[(a(!0),e(n,null,i(t(Ce),n=>(a(),e(`div`,{key:n,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(_e)[n].name),1)]),_:2},1024),r(`div`,j,[o(t(g),{modelValue:K.value.buildings[n],"onUpdate:modelValue":e=>K.value.buildings[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:`100`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),o(t(h),{onClick:e=>Y(n,10),variant:`outline`,size:`sm`},{default:u(()=>[...s[9]||=[d(`Lv 10`,-1)]]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>Y(n,30),variant:`outline`,size:`sm`},{default:u(()=>[...s[10]||=[d(`Lv 30`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})])):f(``,!0),W.value===`research`?(a(),e(`div`,M,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyResearch`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.researchDesc`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[r(`div`,N,[(a(!0),e(n,null,i(t(we),n=>(a(),e(`div`,{key:n,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(ve)[n].name),1)]),_:2},1024),r(`div`,P,[o(t(g),{modelValue:t(V).player.technologies[n],"onUpdate:modelValue":e=>t(V).player.technologies[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:`50`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),o(t(h),{onClick:e=>X(n,10),variant:`outline`,size:`sm`},{default:u(()=>[...s[11]||=[d(`Lv 10`,-1)]]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>X(n,20),variant:`outline`,size:`sm`},{default:u(()=>[...s[12]||=[d(`Lv 20`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})])):f(``,!0),K.value&&W.value===`ships`?(a(),e(`div`,F,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyShips`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.shipsDesc`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[r(`div`,I,[(a(!0),e(n,null,i(t(Te),n=>(a(),e(`div`,{key:n,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(ye)[n].name),1)]),_:2},1024),r(`div`,L,[o(t(g),{modelValue:K.value.fleet[n],"onUpdate:modelValue":e=>K.value.fleet[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),o(t(h),{onClick:e=>Z(n,100),variant:`outline`,size:`sm`},{default:u(()=>[...s[13]||=[d(`+100`,-1)]]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>Z(n,1e3),variant:`outline`,size:`sm`},{default:u(()=>[...s[14]||=[d(`+1K`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})])):f(``,!0),K.value&&W.value===`defense`?(a(),e(`div`,R,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyDefense`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.defenseDesc`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[r(`div`,z,[(a(!0),e(n,null,i(t(Ee),n=>(a(),e(`div`,{key:n,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(be)[n].name),1)]),_:2},1024),r(`div`,B,[o(t(g),{modelValue:K.value.defense[n],"onUpdate:modelValue":e=>K.value.defense[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),o(t(h),{onClick:e=>Q(n,100),variant:`outline`,size:`sm`},{default:u(()=>[...s[15]||=[d(`+100`,-1)]]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>Q(n,1e3),variant:`outline`,size:`sm`},{default:u(()=>[...s[16]||=[d(`+1K`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})])):f(``,!0),W.value===`officers`?(a(),e(`div`,me,[o(t(x),null,{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),null,{default:u(()=>[d(c(t(H)(`gmView.modifyOfficers`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.officersDesc`)),1)]),_:1})]),_:1}),o(t(v),null,{default:u(()=>[r(`div`,he,[(a(!0),e(n,null,i(t(q),n=>(a(),e(`div`,{key:n,class:`space-y-2`},[o(t(b),null,{default:u(()=>[d(c(t(xe)[n].name),1)]),_:2},1024),r(`div`,ge,[o(t(g),{modelValue:G.value[n],"onUpdate:modelValue":e=>G.value[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:t(H)(`gmView.days`),class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),o(t(h),{onClick:e=>$(n,7),variant:`outline`,size:`sm`},{default:u(()=>[d(`7`+c(t(H)(`gmView.days`)),1)]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>$(n,30),variant:`outline`,size:`sm`},{default:u(()=>[d(`30`+c(t(H)(`gmView.days`)),1)]),_:1},8,[`onClick`]),o(t(h),{onClick:e=>$(n,365),variant:`outline`,size:`sm`},{default:u(()=>[d(`365`+c(t(H)(`gmView.days`)),1)]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})])):f(``,!0),o(t(x),{class:`border-destructive`},{default:u(()=>[o(t(_),null,{default:u(()=>[o(t(y),{class:`text-destructive`},{default:u(()=>[d(c(t(H)(`gmView.dangerZone`)),1)]),_:1}),o(t(p),null,{default:u(()=>[d(c(t(H)(`gmView.dangerZoneDesc`)),1)]),_:1})]),_:1}),o(t(v),{class:`space-y-2`},{default:u(()=>[o(t(h),{onClick:De,variant:`destructive`,class:`w-full`},{default:u(()=>[d(c(t(H)(`gmView.resetGame`)),1)]),_:1})]),_:1})]),_:1})]))}});export{V as default}; \ No newline at end of file diff --git a/docs/assets/GalaxyView-TxzLJXed.js b/docs/assets/GalaxyView-TxzLJXed.js new file mode 100644 index 0000000..c5a45ad --- /dev/null +++ b/docs/assets/GalaxyView-TxzLJXed.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Jt as i,Kt as a,Mt as o,Nt as ee,On as s,Ot as c,Tn as te,V as l,Wt as ne,hn as u,in as d,jt as f,kt as p,z as re}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import{o as ie}from"./vendor-vue-router-CWDMmE-U.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{I as ae,_ as oe,c as se,j as m,v as ce}from"./vendor-icons-W6Ny__75.js";import{t as le}from"./TooltipProvider-BAp4BAXy.js";import{t as ue}from"./CardDescription-D2AN1hhX.js";import"./game-config-D-D7cMgJ.js";import{A as h,D as g,E as _,F as de,I as fe,M as v,P as pe,T as y,c as b,l as x,r as S,s as C,t as w,u as T}from"./index-DWmvUlvu.js";import{t as me}from"./AlertDialog-CiXBEnQ0.js";import{a as E,i as D,n as O,r as k,t as A}from"./SelectValue-Cm2l40Fd.js";var he={class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},j={class:`text-2xl sm:text-3xl font-bold`},M={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},N={class:`space-y-2`},P={class:`space-y-2`},F={class:`col-span-2 sm:col-span-1 flex items-end`},I={class:`space-y-2`},L={class:`w-8 sm:w-12 text-center`},R={class:`flex-1 min-w-0`},z={key:0,class:`space-y-1`},ge={class:`flex items-center gap-2`},_e={class:`font-semibold text-sm sm:text-base truncate`},ve={class:`text-xs text-muted-foreground`},ye={key:1,class:`text-sm text-muted-foreground`},be={key:2,class:`mt-2 p-2 bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded text-xs`},xe={class:`flex items-center gap-2 text-amber-700 dark:text-amber-400 font-medium mb-1`},Se={class:`flex gap-3 text-xs`},Ce={class:`flex items-center gap-1`},we={class:`text-muted-foreground`},Te={class:`font-medium`},Ee={class:`flex items-center gap-1`},De={class:`text-muted-foreground`},Oe={class:`font-medium`},ke={class:`flex gap-1 sm:gap-2 flex-shrink-0`},B=ee({__name:`GalaxyView`,setup(ee){let B=fe(),V=de(),H=ie(),{t:U}=pe(),W=u(null),G=u(1),K=u(1),q=u(1),J=u(1),Y=u([]);ne(()=>{B.currentPlanet&&(q.value=B.currentPlanet.position.galaxy,J.value=B.currentPlanet.position.system,G.value=q.value,K.value=J.value,Z())});let Ae=(e,t)=>l(e,t).map(n=>{let r=re(e,t,n.position),i=B.player.planets.find(r=>r.position.galaxy===e&&r.position.system===t&&r.position.position===n.position)||V.planets[r]||null;return{position:n.position,planet:i}}),X=(e,t,n)=>{let r=`debris_${e}_${t}_${n}`;return V.debrisFields[r]||null},Z=()=>{q.value=G.value,J.value=K.value,Y.value=Ae(q.value,J.value)},je=()=>{B.currentPlanet&&(q.value=B.currentPlanet.position.galaxy,J.value=B.currentPlanet.position.system,G.value=q.value,K.value=J.value,Z())},Q=e=>e?e.ownerId===B.player.id:!1,Me=e=>{B.currentPlanetId=e,H.push(`/`)},$=(e,t,n)=>{let r=e?e.position:{galaxy:q.value,system:J.value,position:n},i=`${r.galaxy}:${r.system}:${r.position}`,a=``,o=``;t===`spy`?(o=U(`galaxyView.scoutPlanetTitle`),a=U(`galaxyView.scoutPlanetMessage`).replace(`{coordinates}`,i)):t===`attack`?(o=U(`galaxyView.attackPlanetTitle`),a=U(`galaxyView.attackPlanetMessage`).replace(`{coordinates}`,i)):t===`colonize`?(o=U(`galaxyView.colonizePlanetTitle`),a=U(`galaxyView.colonizePlanetMessage`).replace(`{coordinates}`,i)):t===`recycle`&&(o=U(`galaxyView.recyclePlanetTitle`),a=U(`galaxyView.recyclePlanetMessage`).replace(`{coordinates}`,i)),W.value?.show({title:o,message:a,onConfirm:()=>{H.push({path:`/fleet`,query:{galaxy:r.galaxy,system:r.system,position:r.position,mission:t}})}})};return(ee,l)=>(a(),e(`div`,he,[r(`h1`,j,s(t(U)(`galaxyView.title`)),1),o(t(T),null,{default:d(()=>[o(t(b),null,{default:d(()=>[o(t(C),null,{default:d(()=>[f(s(t(U)(`galaxyView.selectCoordinates`)),1)]),_:1})]),_:1}),o(t(x),null,{default:d(()=>[r(`div`,M,[r(`div`,N,[o(t(w),{for:`select-galaxy`,class:`text-xs sm:text-sm`},{default:d(()=>[f(s(t(U)(`galaxyView.galaxy`)),1)]),_:1}),(a(),c(t(E),{key:t(B).locale,"model-value":String(G.value),"onUpdate:modelValue":l[0]||=e=>{G.value=Number(e),Z()}},{default:d(()=>[o(t(O),{id:`select-galaxy`,class:`w-full`},{default:d(()=>[o(t(A),{placeholder:t(U)(`galaxyView.selectGalaxy`)},null,8,[`placeholder`])]),_:1}),o(t(D),null,{default:d(()=>[(a(),e(n,null,i(9,e=>o(t(k),{key:e,value:String(e)},{default:d(()=>[f(s(t(U)(`galaxyView.galaxy`))+` `+s(e),1)]),_:2},1032,[`value`])),64))]),_:1})]),_:1},8,[`model-value`]))]),r(`div`,P,[o(t(w),{for:`select-system`,class:`text-xs sm:text-sm`},{default:d(()=>[f(s(t(U)(`galaxyView.system`)),1)]),_:1}),(a(),c(t(E),{key:`${t(B).locale}-system`,"model-value":String(K.value),"onUpdate:modelValue":l[1]||=e=>{K.value=Number(e),Z()}},{default:d(()=>[o(t(O),{id:`select-system`,class:`w-full`},{default:d(()=>[o(t(A),{placeholder:t(U)(`galaxyView.selectSystem`)},null,8,[`placeholder`])]),_:1}),o(t(D),null,{default:d(()=>[(a(),e(n,null,i(10,e=>o(t(k),{key:e,value:String(e)},{default:d(()=>[f(s(t(U)(`galaxyView.system`))+` `+s(e),1)]),_:2},1032,[`value`])),64))]),_:1})]),_:1},8,[`model-value`]))]),r(`div`,F,[o(t(v),{onClick:je,variant:`outline`,class:`w-full`},{default:d(()=>[o(t(m),{class:`h-4 w-4 mr-2`}),f(` `+s(t(U)(`galaxyView.myPlanet`)),1)]),_:1})])])]),_:1})]),_:1}),o(t(T),null,{default:d(()=>[o(t(b),null,{default:d(()=>[o(t(C),null,{default:d(()=>[f(s(t(U)(`galaxyView.galaxy`))+` `+s(q.value)+`:`+s(J.value),1)]),_:1}),o(t(ue),null,{default:d(()=>[f(s(t(U)(`galaxyView.totalPositions`)),1)]),_:1})]),_:1}),o(t(x),null,{default:d(()=>[r(`div`,I,[(a(!0),e(n,null,i(Y.value,n=>(a(),e(`div`,{key:n.position,class:te([`flex items-center gap-2 sm:gap-4 p-2 sm:p-3 border rounded-lg hover:bg-muted/50 transition-colors`,{"bg-blue-50 dark:bg-blue-950 border-blue-300 dark:border-blue-700":Q(n.planet),"bg-muted/30":!n.planet}])},[r(`div`,L,[o(t(h),{variant:`outline`,class:`text-xs sm:text-sm`},{default:d(()=>[f(s(n.position),1)]),_:2},1024)]),r(`div`,R,[n.planet?(a(),e(`div`,z,[r(`div`,ge,[r(`h3`,_e,s(n.planet.name),1),Q(n.planet)?(a(),c(t(h),{key:0,variant:`default`,class:`text-xs`},{default:d(()=>[f(s(t(U)(`galaxyView.mine`)),1)]),_:1})):(a(),c(t(h),{key:1,variant:`secondary`,class:`text-xs`},{default:d(()=>[f(s(t(U)(`galaxyView.hostile`)),1)]),_:1}))]),r(`p`,ve,` [`+s(n.planet.position.galaxy)+`:`+s(n.planet.position.system)+`:`+s(n.planet.position.position)+`] `,1)])):(a(),e(`div`,ye,s(t(U)(`galaxyView.emptySlot`)),1)),X(q.value,J.value,n.position)?(a(),e(`div`,be,[r(`div`,xe,[r(`span`,null,s(t(U)(`galaxyView.debrisField`)),1)]),r(`div`,Se,[r(`span`,Ce,[r(`span`,we,s(t(U)(`resources.metal`))+`:`,1),r(`span`,Te,s(t(S)(X(q.value,J.value,n.position).resources.metal)),1)]),r(`span`,Ee,[r(`span`,De,s(t(U)(`resources.crystal`))+`:`,1),r(`span`,Oe,s(t(S)(X(q.value,J.value,n.position).resources.crystal)),1)])])])):p(``,!0)]),r(`div`,ke,[o(t(le),{"delay-duration":300},{default:d(()=>[n.planet&&!Q(n.planet)?(a(),c(t(g),{key:0},{default:d(()=>[o(t(y),{"as-child":``},{default:d(()=>[o(t(v),{onClick:e=>$(n.planet,`spy`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:d(()=>[o(t(ae),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),o(t(_),null,{default:d(()=>[r(`p`,null,s(t(U)(`galaxyView.scout`)),1)]),_:1})]),_:2},1024)):p(``,!0),n.planet&&!Q(n.planet)?(a(),c(t(g),{key:1},{default:d(()=>[o(t(y),{"as-child":``},{default:d(()=>[o(t(v),{onClick:e=>$(n.planet,`attack`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:d(()=>[o(t(se),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),o(t(_),null,{default:d(()=>[r(`p`,null,s(t(U)(`galaxyView.attack`)),1)]),_:1})]),_:2},1024)):p(``,!0),n.planet?p(``,!0):(a(),c(t(g),{key:2},{default:d(()=>[o(t(y),{"as-child":``},{default:d(()=>[o(t(v),{onClick:e=>$(null,`colonize`,n.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:d(()=>[o(t(oe),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),o(t(_),null,{default:d(()=>[r(`p`,null,s(t(U)(`galaxyView.colonize`)),1)]),_:1})]),_:2},1024)),n.planet&&Q(n.planet)?(a(),c(t(g),{key:3},{default:d(()=>[o(t(y),{"as-child":``},{default:d(()=>[o(t(v),{onClick:e=>Me(n.planet.id),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:d(()=>[o(t(m),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),o(t(_),null,{default:d(()=>[r(`p`,null,s(t(U)(`galaxyView.switch`)),1)]),_:1})]),_:2},1024)):p(``,!0),X(q.value,J.value,n.position)?(a(),c(t(g),{key:4},{default:d(()=>[o(t(y),{"as-child":``},{default:d(()=>[o(t(v),{onClick:e=>$(n.planet,`recycle`,n.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:d(()=>[o(t(ce),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),o(t(_),null,{default:d(()=>[r(`p`,null,s(t(U)(`galaxyView.recycle`)),1)]),_:1})]),_:2},1024)):p(``,!0)]),_:2},1024)])],2))),128))])]),_:1})]),_:1}),o(me,{ref_key:`actionDialog`,ref:W},null,512)]))}});export{B as default}; \ No newline at end of file diff --git a/docs/assets/MessagesView-DpnWNQDD.js b/docs/assets/MessagesView-DpnWNQDD.js new file mode 100644 index 0000000..0e79d71 --- /dev/null +++ b/docs/assets/MessagesView-DpnWNQDD.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as i,Jt as a,Kt as o,Mt as s,Nt as c,On as l,Ot as u,hn as d,in as f,jt as p,kt as m,tn as h,xt as g}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{I as _,c as v,n as y}from"./vendor-icons-W6Ny__75.js";import"./TooltipProvider-BAp4BAXy.js";import{t as b}from"./CardDescription-D2AN1hhX.js";import"./game-config-D-D7cMgJ.js";import{A as x,F as S,I as C,M as w,P as T,S as E,b as D,c as O,l as k,n as A,r as j,s as M,u as N,v as P,w as F,x as I,y as L}from"./index-DWmvUlvu.js";import{t as R}from"./useGameConfig-B5wf1i8i.js";import{t as z}from"./BattleReportDialog-CWBu6H63.js";var B={key:0,class:`space-y-4`},V={class:`p-3 bg-muted rounded-lg`},H={class:`text-sm font-medium mb-2`},U={key:0,class:`text-xs text-muted-foreground`},W={key:1,class:`text-xs text-muted-foreground`},ee={class:`text-sm font-medium mb-2`},te={class:`flex flex-wrap gap-3 text-xs sm:text-sm`},G={class:`flex items-center gap-1`},K={class:`flex items-center gap-1`},q={class:`flex items-center gap-1`},J={class:`flex items-center gap-1`},Y={key:0},X={class:`text-sm font-medium mb-2`},Z={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},ne={class:`text-muted-foreground`},re={class:`ml-1 font-medium`},ie={key:1},ae={class:`text-sm font-medium mb-2`},oe={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},se={key:0,class:`block`},ce={class:`text-muted-foreground`},le={class:`ml-1 font-medium`},ue={key:2},de={class:`text-sm font-medium mb-2`},fe={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},pe={class:`text-muted-foreground`},me={class:`ml-1 font-medium`},Q=c({__name:`SpyReportDialog`,props:{report:{},open:{type:Boolean}},emits:[`update:open`],setup(c,{emit:g}){let v=c,y=g,b=C(),x=S(),{t:w}=T(),{SHIPS:O,DEFENSES:k,BUILDINGS:M}=R(),N=d(v.open),z=i(()=>v.report?b.player.planets.find(e=>e.id===v.report.targetPlanetId)||Object.values(x.planets).find(e=>e.id===v.report.targetPlanetId):null);h(()=>v.open,e=>{N.value=e}),h(N,e=>{y(`update:open`,e)});let Q=e=>e?Object.values(e).some(e=>e>0):!1;return(i,d)=>(o(),u(t(E),{open:N.value,"onUpdate:open":d[0]||=e=>N.value=e},{default:f(()=>[s(t(I),{class:`max-w-2xl max-h-[90vh] overflow-y-auto`},{default:f(()=>[s(t(L),null,{default:f(()=>[s(t(P),{class:`flex items-center gap-2`},{default:f(()=>[s(t(_),{class:`h-5 w-5`}),p(` `+l(t(w)(`messagesView.spyReport`)),1)]),_:1}),c.report?(o(),u(t(D),{key:0},{default:f(()=>[p(l(t(A)(c.report.timestamp)),1)]),_:1})):m(``,!0)]),_:1}),c.report?(o(),e(`div`,B,[r(`div`,V,[r(`p`,H,l(t(w)(`messagesView.targetPlanet`)),1),z.value?(o(),e(`p`,U,l(z.value.name)+` [`+l(z.value.position.galaxy)+`:`+l(z.value.position.system)+`:`+l(z.value.position.position)+`] `,1)):(o(),e(`p`,W,l(c.report.targetPlanetId),1))]),r(`div`,null,[r(`p`,ee,l(t(w)(`messagesView.resources`))+`:`,1),r(`div`,te,[r(`span`,G,[s(F,{type:`metal`,size:`sm`}),p(` `+l(t(j)(c.report.resources.metal)),1)]),r(`span`,K,[s(F,{type:`crystal`,size:`sm`}),p(` `+l(t(j)(c.report.resources.crystal)),1)]),r(`span`,q,[s(F,{type:`deuterium`,size:`sm`}),p(` `+l(t(j)(c.report.resources.deuterium)),1)]),r(`span`,J,[s(F,{type:`darkMatter`,size:`sm`}),p(` `+l(t(j)(c.report.resources.darkMatter)),1)])])]),c.report.fleet&&Object.keys(c.report.fleet).length>0?(o(),e(`div`,Y,[r(`p`,X,l(t(w)(`messagesView.fleet`))+`:`,1),r(`div`,Z,[(o(!0),e(n,null,a(c.report.fleet,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,ne,l(t(O)[i].name)+`:`,1),r(`span`,re,l(n),1)]))),128))])])):m(``,!0),c.report.defense&&Q(c.report.defense)?(o(),e(`div`,ie,[r(`p`,ae,l(t(w)(`messagesView.defense`))+`:`,1),r(`div`,oe,[(o(!0),e(n,null,a(c.report.defense,(n,i)=>(o(),e(`div`,{key:i},[n&&n>0?(o(),e(`span`,se,[r(`span`,ce,l(t(k)[i].name)+`:`,1),r(`span`,le,l(n),1)])):m(``,!0)]))),128))])])):m(``,!0),c.report.buildings&&Object.keys(c.report.buildings).length>0?(o(),e(`div`,ue,[r(`p`,de,l(t(w)(`messagesView.buildings`))+`:`,1),r(`div`,fe,[(o(!0),e(n,null,a(c.report.buildings,(n,i)=>(o(),e(`div`,{key:i},[r(`span`,pe,l(t(M)[i].name)+`:`,1),r(`span`,me,`Lv.`+l(n),1)]))),128))])])):m(``,!0)])):m(``,!0)]),_:1})]),_:1},8,[`open`]))}}),he={class:`container mx-auto p-4 sm:p-6 space-y-6`},ge={class:`text-2xl sm:text-3xl font-bold`},_e={class:`flex gap-2 border-b`},ve={key:0,class:`space-y-2`},ye={class:`flex justify-between items-center gap-2`},$={class:`flex items-center gap-2 min-w-0 flex-1`},be={key:1,class:`space-y-2`},xe={class:`flex justify-between items-center gap-2`},Se={class:`flex items-center gap-2 min-w-0 flex-1`},Ce=c({__name:`MessagesView`,setup(c){let h=C(),{t:S}=T(),E=d(`battles`),D=d(!1),j=d(!1),P=d(null),F=d(null),I=i(()=>[...h.player.battleReports].sort((e,t)=>t.timestamp-e.timestamp)),L=i(()=>[...h.player.spyReports].sort((e,t)=>t.timestamp-e.timestamp)),R=i(()=>h.player.battleReports.filter(e=>!e.read).length),B=i(()=>h.player.spyReports.filter(e=>!e.read).length),V=e=>{P.value=e,D.value=!0,e.read||=!0},H=e=>{F.value=e,j.value=!0,e.read||=!0},U=e=>{let t=h.player.battleReports.findIndex(t=>t.id===e);t>-1&&h.player.battleReports.splice(t,1)},W=e=>{let t=h.player.spyReports.findIndex(t=>t.id===e);t>-1&&h.player.spyReports.splice(t,1)};return(i,c)=>(o(),e(`div`,he,[r(`h1`,ge,l(t(S)(`messagesView.title`)),1),r(`div`,_e,[s(t(w),{onClick:c[0]||=e=>E.value=`battles`,variant:E.value===`battles`?`default`:`ghost`,class:`rounded-b-none`},{default:f(()=>[s(t(v),{class:`h-4 w-4 mr-2`}),p(` `+l(t(S)(`messagesView.battles`))+` `,1),R.value>0?(o(),u(t(x),{key:0,variant:`destructive`,class:`ml-2`},{default:f(()=>[p(l(R.value),1)]),_:1})):m(``,!0)]),_:1},8,[`variant`]),s(t(w),{onClick:c[1]||=e=>E.value=`spy`,variant:E.value===`spy`?`default`:`ghost`,class:`rounded-b-none`},{default:f(()=>[s(t(_),{class:`h-4 w-4 mr-2`}),p(` `+l(t(S)(`messagesView.spy`))+` `,1),B.value>0?(o(),u(t(x),{key:0,variant:`destructive`,class:`ml-2`},{default:f(()=>[p(l(B.value),1)]),_:1})):m(``,!0)]),_:1},8,[`variant`])]),E.value===`battles`?(o(),e(`div`,ve,[t(h).player.battleReports.length===0?(o(),u(t(N),{key:0},{default:f(()=>[s(t(k),{class:`py-8 text-center text-muted-foreground`},{default:f(()=>[p(l(t(S)(`messagesView.noBattleReports`)),1)]),_:1})]),_:1})):m(``,!0),(o(!0),e(n,null,a(I.value,e=>(o(),u(t(N),{key:e.id,onClick:t=>V(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:f(()=>[s(t(O),{class:`pb-3`},{default:f(()=>[r(`div`,ye,[r(`div`,$,[s(t(v),{class:`h-4 w-4 flex-shrink-0`}),s(t(M),{class:`text-base sm:text-lg`},{default:f(()=>[p(l(t(S)(`messagesView.battleReport`)),1)]),_:1}),e.read?m(``,!0):(o(),u(t(x),{key:0,variant:`default`,class:`text-xs`},{default:f(()=>[p(l(t(S)(`messagesView.unread`)),1)]),_:1})),s(t(x),{variant:e.winner===`attacker`?`default`:e.winner===`defender`?`destructive`:`secondary`,class:`text-xs`},{default:f(()=>[p(l(e.winner===`attacker`?t(S)(`messagesView.victory`):e.winner===`defender`?t(S)(`messagesView.defeat`):t(S)(`messagesView.draw`)),1)]),_:2},1032,[`variant`])]),s(t(w),{onClick:g(t=>U(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:f(()=>[s(t(y),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),s(t(b),{class:`text-xs sm:text-sm`},{default:f(()=>[p(l(t(A)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))])):m(``,!0),E.value===`spy`?(o(),e(`div`,be,[t(h).player.spyReports.length===0?(o(),u(t(N),{key:0},{default:f(()=>[s(t(k),{class:`py-8 text-center text-muted-foreground`},{default:f(()=>[p(l(t(S)(`messagesView.noSpyReports`)),1)]),_:1})]),_:1})):m(``,!0),(o(!0),e(n,null,a(L.value,e=>(o(),u(t(N),{key:e.id,onClick:t=>H(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:f(()=>[s(t(O),{class:`pb-3`},{default:f(()=>[r(`div`,xe,[r(`div`,Se,[s(t(_),{class:`h-4 w-4 flex-shrink-0`}),s(t(M),{class:`text-base sm:text-lg`},{default:f(()=>[p(l(t(S)(`messagesView.spyReport`)),1)]),_:1}),e.read?m(``,!0):(o(),u(t(x),{key:0,variant:`default`,class:`text-xs`},{default:f(()=>[p(l(t(S)(`messagesView.unread`)),1)]),_:1})),s(t(x),{variant:`outline`,class:`text-xs`},{default:f(()=>[p(l(e.targetPlanetId),1)]),_:2},1024)]),s(t(w),{onClick:g(t=>W(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:f(()=>[s(t(y),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),s(t(b),{class:`text-xs sm:text-sm`},{default:f(()=>[p(l(t(A)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))])):m(``,!0),s(z,{open:D.value,"onUpdate:open":c[2]||=e=>D.value=e,report:P.value},null,8,[`open`,`report`]),s(Q,{open:j.value,"onUpdate:open":c[3]||=e=>j.value=e,report:F.value},null,8,[`open`,`report`])]))}});export{Ce as default}; \ No newline at end of file diff --git a/docs/assets/OfficersView-Dfgf1DR0.js b/docs/assets/OfficersView-Dfgf1DR0.js new file mode 100644 index 0000000..152b430 --- /dev/null +++ b/docs/assets/OfficersView-Dfgf1DR0.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as ee,Jt as te,Kt as i,Mt as a,Nt as o,On as s,Ot as c,Q as l,Tn as u,Z as d,at as ne,hn as f,in as p,it as re,jt as m,kt as h,ot as g,st as _}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{t as ie}from"./CardDescription-D2AN1hhX.js";import{p as v}from"./game-config-D-D7cMgJ.js";import{A as y,C as b,I as ae,M as x,P as oe,c as se,i as ce,l as le,n as S,o as C,r as w,s as T,u as E,w as D}from"./index-DWmvUlvu.js";import{t as O}from"./useGameConfig-B5wf1i8i.js";import{t as k}from"./AlertDialog-CiXBEnQ0.js";var A={class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},j={class:`text-2xl sm:text-3xl font-bold`},M={class:`grid grid-cols-2 sm:grid-cols-3 gap-4 sm:gap-6`},N={class:`flex justify-between items-start gap-2`},P={class:`min-w-0 flex-1`},F={key:0,class:`p-3 bg-blue-50 dark:bg-blue-950 rounded-lg`},I={class:`space-y-1 text-xs sm:text-sm`},L={class:`font-medium text-blue-700 dark:text-blue-300`},R={class:`text-muted-foreground`},z={class:`text-muted-foreground`},B={class:`space-y-2`},V={class:`text-sm font-medium text-muted-foreground`},H={class:`space-y-1.5`},U={class:`flex items-center gap-2`},W={class:`text-xs`},ue={class:`flex items-center gap-2`},de={class:`text-xs`},G={class:`flex items-center gap-2`},fe={class:`text-xs`},pe={key:0,class:`flex items-center gap-2`},me={class:`text-xs`},he={class:`space-y-2`},ge={class:`text-sm font-medium text-muted-foreground`},_e={class:`space-y-1 text-xs sm:text-sm`},ve={key:0,class:`flex items-center gap-2`},ye={key:1,class:`flex items-center gap-2`},be={key:2,class:`flex items-center gap-2`},xe={key:3,class:`flex items-center gap-2`},Se={key:4,class:`flex items-center gap-2`},Ce={key:5,class:`flex items-center gap-2`},we={key:6,class:`flex items-center gap-2`},Te={key:7,class:`flex items-center gap-2`},Ee={key:8,class:`flex items-center gap-2`},De={key:9,class:`flex items-center gap-2`},Oe={class:`flex gap-2`},K=o({__name:`OfficersView`,setup(o){let{t:K}=oe(),{OFFICERS:q}=O(),J=ae(),Y=ee(()=>J.currentPlanet),X=f(null),Z=f(null),Q=e=>{let t=J.player.officers[e],n=Date.now();return t.active&&(!t.expiresAt||t.expiresAt>n)},ke=e=>J.player.officers[e].expiresAt||0,Ae=e=>{let t=J.player.officers[e];if(!t.expiresAt)return 0;let n=Date.now();return Math.max(0,Math.floor((t.expiresAt-n)/1e3))},$=e=>{if(!Y.value)return!1;let t=q.value[e];return Y.value.resources.metal>=t.cost.metal&&Y.value.resources.crystal>=t.cost.crystal&&Y.value.resources.deuterium>=t.cost.deuterium&&Y.value.resources.darkMatter>=t.cost.darkMatter},je=(e,t=7)=>{if(!J.currentPlanet)return!1;let n=g(e);return d(J.currentPlanet.resources,n)?(l(J.currentPlanet.resources,n),J.player.officers[e]=re(e,t),!0):!1},Me=e=>{Z.value?.show({title:K(`officersView.hireTitle`),message:K(`officersView.hireMessage`).replace(`{name}`,q.value[e].name),onConfirm:()=>{je(e,7)||X.value?.show({title:K(`officersView.hireFailed`),message:K(`officersView.insufficientResources`)})}})},Ne=(e,t=7)=>{if(!J.currentPlanet)return!1;let n=g(e);if(!d(J.currentPlanet.resources,n))return!1;l(J.currentPlanet.resources,n);let r=Date.now();return J.player.officers[e]=_(J.player.officers[e],t,r),!0},Pe=e=>{Z.value?.show({title:K(`officersView.renewTitle`),message:K(`officersView.renewMessage`).replace(`{name}`,q.value[e].name),onConfirm:()=>{Ne(e,7)||X.value?.show({title:K(`officersView.renewFailed`),message:K(`officersView.insufficientResources`)})}})},Fe=e=>{Z.value?.show({title:K(`officersView.dismissTitle`),message:K(`officersView.dismissMessage`).replace(`{name}`,q.value[e].name),onConfirm:()=>{J.player.officers[e]=ne(e)}})};return(ee,o)=>(i(),e(`div`,A,[r(`h1`,j,s(t(K)(`officersView.title`)),1),r(`div`,M,[(i(!0),e(n,null,te(Object.values(t(v)),n=>(i(),c(t(E),{key:n},{default:p(()=>[a(t(se),null,{default:p(()=>[r(`div`,N,[r(`div`,P,[a(t(T),{class:`text-lg sm:text-xl`},{default:p(()=>[m(s(t(q)[n].name),1)]),_:2},1024),a(t(ie),{class:`text-xs sm:text-sm`},{default:p(()=>[m(s(t(q)[n].description),1)]),_:2},1024)]),Q(n)?(i(),c(t(y),{key:0,variant:`default`,class:`text-xs`},{default:p(()=>[m(s(t(K)(`officersView.activated`)),1)]),_:1})):(i(),c(t(y),{key:1,variant:`outline`,class:`text-xs`},{default:p(()=>[m(s(t(K)(`officersView.inactive`)),1)]),_:1}))])]),_:2},1024),a(t(le),{class:`space-y-4`},{default:p(()=>[Q(n)?(i(),e(`div`,F,[r(`div`,I,[r(`p`,L,s(t(K)(`officersView.activeStatus`)),1),r(`p`,R,s(t(K)(`officersView.expirationTime`))+`: `+s(t(S)(ke(n))),1),r(`p`,z,s(t(K)(`officersView.remainingTime`))+`: `+s(t(ce)(Ae(n))),1)])])):h(``,!0),r(`div`,B,[r(`p`,V,s(t(K)(`officersView.recruitCost`))+` (7`+s(t(K)(`officersView.days`))+`):`,1),r(`div`,H,[r(`div`,U,[a(D,{type:`metal`,size:`sm`}),r(`span`,W,s(t(K)(`resources.metal`))+`:`,1),r(`span`,{class:u([`font-medium text-sm`,Y.value?t(C)(Y.value.resources.metal,t(q)[n].cost.metal):``])},s(t(w)(t(q)[n].cost.metal)),3)]),r(`div`,ue,[a(D,{type:`crystal`,size:`sm`}),r(`span`,de,s(t(K)(`resources.crystal`))+`:`,1),r(`span`,{class:u([`font-medium text-sm`,Y.value?t(C)(Y.value.resources.crystal,t(q)[n].cost.crystal):``])},s(t(w)(t(q)[n].cost.crystal)),3)]),r(`div`,G,[a(D,{type:`deuterium`,size:`sm`}),r(`span`,fe,s(t(K)(`resources.deuterium`))+`:`,1),r(`span`,{class:u([`font-medium text-sm`,Y.value?t(C)(Y.value.resources.deuterium,t(q)[n].cost.deuterium):``])},s(t(w)(t(q)[n].cost.deuterium)),3)]),t(q)[n].cost.darkMatter>0?(i(),e(`div`,pe,[a(D,{type:`darkMatter`,size:`sm`}),r(`span`,me,s(t(K)(`resources.darkMatter`))+`:`,1),r(`span`,{class:u([`font-medium text-sm`,Y.value?t(C)(Y.value.resources.darkMatter,t(q)[n].cost.darkMatter):``])},s(t(w)(t(q)[n].cost.darkMatter)),3)])):h(``,!0)])]),r(`div`,he,[r(`p`,ge,s(t(K)(`officersView.benefitsBonus`))+`:`,1),r(`div`,_e,[t(q)[n].benefits.resourceProductionBonus?(i(),e(`div`,ve,[o[0]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.resourceProduction`))+` +`+s(t(q)[n].benefits.resourceProductionBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.darkMatterProductionBonus?(i(),e(`div`,ye,[o[1]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.darkMatterProduction`))+` +`+s(t(q)[n].benefits.darkMatterProductionBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.buildingSpeedBonus?(i(),e(`div`,be,[o[2]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.buildingSpeed`))+` +`+s(t(q)[n].benefits.buildingSpeedBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.researchSpeedBonus?(i(),e(`div`,xe,[o[3]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.researchSpeed`))+` +`+s(t(q)[n].benefits.researchSpeedBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.fleetSpeedBonus?(i(),e(`div`,Se,[o[4]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.fleetSpeed`))+` +`+s(t(q)[n].benefits.fleetSpeedBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.fuelConsumptionReduction?(i(),e(`div`,Ce,[o[5]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↓`,-1),r(`span`,null,s(t(K)(`officersView.fuelConsumption`))+` -`+s(t(q)[n].benefits.fuelConsumptionReduction)+`%`,1)])):h(``,!0),t(q)[n].benefits.defenseBonus?(i(),e(`div`,we,[o[6]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.defense`))+` +`+s(t(q)[n].benefits.defenseBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.storageCapacityBonus?(i(),e(`div`,Te,[o[7]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),r(`span`,null,s(t(K)(`officersView.storageCapacity`))+` +`+s(t(q)[n].benefits.storageCapacityBonus)+`%`,1)])):h(``,!0),t(q)[n].benefits.additionalBuildQueue?(i(),e(`div`,Ee,[o[8]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`+`,-1),r(`span`,null,s(t(K)(`officersView.buildQueue`))+` +`+s(t(q)[n].benefits.additionalBuildQueue),1)])):h(``,!0),t(q)[n].benefits.additionalFleetSlots?(i(),e(`div`,De,[o[9]||=r(`span`,{class:`text-green-600 dark:text-green-400`},`+`,-1),r(`span`,null,s(t(K)(`officersView.fleetSlots`))+` +`+s(t(q)[n].benefits.additionalFleetSlots),1)])):h(``,!0)])]),r(`div`,Oe,[Q(n)?h(``,!0):(i(),c(t(x),{key:0,onClick:e=>Me(n),disabled:!$(n),class:`flex-1`},{default:p(()=>[m(s(t(K)(`officersView.hire`))+` (7`+s(t(K)(`officersView.days`))+`) `,1)]),_:1},8,[`onClick`,`disabled`])),Q(n)?(i(),c(t(x),{key:1,onClick:e=>Pe(n),disabled:!$(n),class:`flex-1`},{default:p(()=>[m(s(t(K)(`officersView.renew`))+` (7`+s(t(K)(`officersView.days`))+`) `,1)]),_:1},8,[`onClick`,`disabled`])):h(``,!0),Q(n)?(i(),c(t(x),{key:2,onClick:e=>Fe(n),variant:`outline`,size:`sm`},{default:p(()=>[m(s(t(K)(`officersView.dismiss`)),1)]),_:1},8,[`onClick`])):h(``,!0)])]),_:2},1024)]),_:2},1024))),128))]),a(k,{ref_key:`alertDialog`,ref:X},null,512),a(b,{ref_key:`confirmDialog`,ref:Z},null,512)]))}});export{K as default}; \ No newline at end of file diff --git a/docs/assets/OverviewView-Eaupz5BG.js b/docs/assets/OverviewView-Eaupz5BG.js new file mode 100644 index 0000000..6bf9ba4 --- /dev/null +++ b/docs/assets/OverviewView-Eaupz5BG.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dt as r,Et as i,I as a,J as ee,Jt as o,K as te,Kt as s,L as c,Mt as l,Nt as ne,On as u,Ot as d,Tn as f,in as p,jt as m,kt as h,q as re,rt as ie}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{t as g}from"./CardDescription-D2AN1hhX.js";import"./game-config-D-D7cMgJ.js";import{A as _,I as v,M as y,P as ae,a as oe,c as b,d as se,f as x,g as ce,h as le,l as S,m as C,p as w,r as T,s as E,u as D,w as O}from"./index-DWmvUlvu.js";import{t as k}from"./useGameConfig-B5wf1i8i.js";var A={key:0,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},j={class:`text-center`},M={class:`text-2xl sm:text-3xl font-bold mb-1 sm:mb-2 flex items-center justify-center gap-2`},N={class:`text-xs sm:text-sm text-muted-foreground`},P={key:0,class:`mt-2`},F={key:1,class:`mt-2`},I={class:`flex items-center gap-2`},L={class:`space-y-4`},R={class:`flex items-center gap-2 mb-2`},z={class:`font-semibold`},B={key:0,class:`ml-6 space-y-1 text-sm`},V={class:`flex justify-between`},H={class:`text-muted-foreground`},U={class:`text-green-600 dark:text-green-400`},W={class:`text-muted-foreground ml-4`},ue={class:`flex justify-between font-semibold pt-1 border-t mt-1`},de={class:`text-green-600 dark:text-green-400`},fe={class:`space-y-2`},pe={key:0,class:`flex justify-between text-sm`},me={class:`text-muted-foreground`},he={class:`text-red-600 dark:text-red-400`},ge={key:1,class:`flex justify-between text-sm`},_e={class:`text-muted-foreground`},ve={class:`text-red-600 dark:text-red-400`},ye={key:2,class:`flex justify-between text-sm`},be={class:`text-muted-foreground`},xe={class:`text-red-600 dark:text-red-400`},Se={key:3,class:`flex justify-between font-semibold pt-2 border-t`},Ce={class:`text-red-600 dark:text-red-400`},we={key:4,class:`text-sm text-muted-foreground text-center py-2`},Te={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4`},Ee={class:`text-xs sm:text-sm text-muted-foreground`},De={class:`text-lg sm:text-xl font-bold`},G=ne({__name:`OverviewView`,setup(ne){let G=v(),{t:K}=ae(),{SHIPS:Oe}=k(),q=i(()=>G.currentPlanet),J=i(()=>q.value?c(q.value,G.player.officers):null),Y=i(()=>q.value?a(q.value,G.player.officers):null),ke=i(()=>q.value?re(q.value):0),X=i(()=>{if(!q.value)return null;let e=ie(G.player.officers,Date.now());return ee(q.value,e)}),Z=i(()=>q.value?te(q.value):null),Q=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`},{key:`energy`}],$=i(()=>!q.value||q.value.isMoon?null:Ae(q.value.id)),Ae=e=>G.player.planets.find(t=>t.isMoon&&t.parentPlanetId===e)||null,je=()=>{$.value&&(G.currentPlanetId=$.value.id)},Me=()=>{q.value?.parentPlanetId&&(G.currentPlanetId=q.value.parentPlanetId)};return(i,a)=>q.value?(s(),e(`div`,A,[r(`div`,j,[r(`h1`,M,[m(u(q.value.name)+` `,1),q.value.isMoon?(s(),d(t(_),{key:0,variant:`secondary`},{default:p(()=>[m(u(t(K)(`planet.moon`)),1)]),_:1})):h(``,!0)]),r(`p`,N,u(t(K)(`planet.position`))+`: [`+u(q.value.position.galaxy)+`:`+u(q.value.position.system)+`:`+u(q.value.position.position)+`] `,1),!q.value.isMoon&&$.value?(s(),e(`div`,P,[l(t(y),{onClick:je,variant:`outline`,size:`sm`},{default:p(()=>[a[0]||=r(`span`,{class:`mr-2`},`🌙`,-1),m(` `+u(t(K)(`planet.switchToMoon`)),1)]),_:1})])):h(``,!0),q.value.isMoon?(s(),e(`div`,F,[l(t(y),{onClick:Me,variant:`outline`,size:`sm`},{default:p(()=>[m(u(t(K)(`planet.backToPlanet`)),1)]),_:1})])):h(``,!0)]),l(t(D),null,{default:p(()=>[l(t(b),null,{default:p(()=>[l(t(E),null,{default:p(()=>[m(u(t(K)(`overview.resourceOverview`)),1)]),_:1})]),_:1}),l(t(S),null,{default:p(()=>[l(t(ce),null,{default:p(()=>[l(t(se),null,{default:p(()=>[l(t(w),null,{default:p(()=>[l(t(x),null,{default:p(()=>[m(u(t(K)(`common.resourceType`)),1)]),_:1}),l(t(x),{class:`text-right`},{default:p(()=>[m(u(t(K)(`resources.current`)),1)]),_:1}),l(t(x),{class:`text-right`},{default:p(()=>[m(u(t(K)(`resources.max`)),1)]),_:1}),l(t(x),{class:`text-right`},{default:p(()=>[m(u(t(K)(`resources.production`))+u(t(K)(`resources.perHour`)),1)]),_:1}),l(t(x),{class:`text-right`},{default:p(()=>[m(u(t(K)(`resources.consumption`))+u(t(K)(`resources.perHour`)),1)]),_:1})]),_:1})]),_:1}),l(t(le),null,{default:p(()=>[(s(),e(n,null,o(Q,i=>l(t(w),{key:i.key},{default:p(()=>[l(t(C),{class:`font-medium`},{default:p(()=>[r(`div`,I,[l(O,{type:i.key,size:`sm`},null,8,[`type`]),m(` `+u(t(K)(`resources.${i.key}`)),1)])]),_:2},1024),l(t(C),{class:f([`text-right`,t(oe)(q.value.resources[i.key],Y.value?.[i.key]||1/0)])},{default:p(()=>[m(u(t(T)(q.value.resources[i.key])),1)]),_:2},1032,[`class`]),l(t(C),{class:`text-right text-muted-foreground`},{default:p(()=>[m(u(t(T)(Y.value?.[i.key]||0)),1)]),_:2},1024),l(t(C),{class:`text-right text-green-600 dark:text-green-400`},{default:p(()=>[m(` +`+u(t(T)(J.value?.[i.key]||0)),1)]),_:2},1024),l(t(C),{class:`text-right text-red-600 dark:text-red-400`},{default:p(()=>[i.key===`energy`?(s(),e(n,{key:0},[m(` -`+u(t(T)(ke.value)),1)],64)):(s(),e(n,{key:1},[m(` - `)],64))]),_:2},1024)]),_:2},1024)),64))]),_:1})]),_:1})]),_:1})]),_:1}),l(t(D),null,{default:p(()=>[l(t(b),null,{default:p(()=>[l(t(E),null,{default:p(()=>[m(u(t(K)(`overview.productionSources`)),1)]),_:1}),l(t(g),null,{default:p(()=>[m(u(t(K)(`overview.productionSourcesDesc`)),1)]),_:1})]),_:1}),l(t(S),null,{default:p(()=>[r(`div`,L,[(s(),e(n,null,o(Q,i=>r(`div`,{key:i.key,class:`border-b last:border-b-0 pb-4 last:pb-0`},[r(`div`,R,[l(O,{type:i.key,size:`sm`},null,8,[`type`]),r(`span`,z,u(t(K)(`resources.${i.key}`)),1)]),X.value?(s(),e(`div`,B,[r(`div`,V,[r(`span`,H,u(t(K)(X.value[i.key].buildingName))+` (`+u(t(K)(`common.level`))+` `+u(X.value[i.key].buildingLevel)+`) `,1),r(`span`,U,` +`+u(t(T)(Math.floor(X.value[i.key].baseProduction)))+`/`+u(t(K)(`resources.hour`)),1)]),(s(!0),e(n,null,o(X.value[i.key].bonuses,(n,i)=>(s(),e(`div`,{key:i,class:`flex justify-between`},[r(`span`,W,u(t(K)(n.name)),1),r(`span`,{class:f(n.value>0?`text-green-600 dark:text-green-400`:`text-red-600 dark:text-red-400`)},u(n.value>0?`+`:``)+u(n.value)+`% `,3)]))),128)),r(`div`,ue,[r(`span`,null,u(t(K)(`overview.totalProduction`)),1),r(`span`,de,` +`+u(t(T)(Math.floor(X.value[i.key].finalProduction)))+`/`+u(t(K)(`resources.hour`)),1)])])):h(``,!0)])),64))])]),_:1})]),_:1}),l(t(D),null,{default:p(()=>[l(t(b),null,{default:p(()=>[l(t(E),null,{default:p(()=>[m(u(t(K)(`overview.consumptionSources`)),1)]),_:1}),l(t(g),null,{default:p(()=>[m(u(t(K)(`overview.consumptionSourcesDesc`)),1)]),_:1})]),_:1}),l(t(S),null,{default:p(()=>[r(`div`,fe,[Z.value&&Z.value.metalMine.buildingLevel>0?(s(),e(`div`,pe,[r(`span`,me,u(t(K)(Z.value.metalMine.buildingName))+` (`+u(t(K)(`common.level`))+` `+u(Z.value.metalMine.buildingLevel)+`) `,1),r(`span`,he,` -`+u(t(T)(Math.floor(Z.value.metalMine.consumption)))+`/`+u(t(K)(`resources.hour`)),1)])):h(``,!0),Z.value&&Z.value.crystalMine.buildingLevel>0?(s(),e(`div`,ge,[r(`span`,_e,u(t(K)(Z.value.crystalMine.buildingName))+` (`+u(t(K)(`common.level`))+` `+u(Z.value.crystalMine.buildingLevel)+`) `,1),r(`span`,ve,` -`+u(t(T)(Math.floor(Z.value.crystalMine.consumption)))+`/`+u(t(K)(`resources.hour`)),1)])):h(``,!0),Z.value&&Z.value.deuteriumSynthesizer.buildingLevel>0?(s(),e(`div`,ye,[r(`span`,be,u(t(K)(Z.value.deuteriumSynthesizer.buildingName))+` (`+u(t(K)(`common.level`))+` `+u(Z.value.deuteriumSynthesizer.buildingLevel)+`) `,1),r(`span`,xe,` -`+u(t(T)(Math.floor(Z.value.deuteriumSynthesizer.consumption)))+`/`+u(t(K)(`resources.hour`)),1)])):h(``,!0),Z.value?(s(),e(`div`,Se,[r(`span`,null,u(t(K)(`overview.totalConsumption`)),1),r(`span`,Ce,` -`+u(t(T)(Math.floor(Z.value.total)))+`/`+u(t(K)(`resources.hour`)),1)])):h(``,!0),Z.value&&Z.value.total===0?(s(),e(`div`,we,u(t(K)(`overview.noConsumption`)),1)):h(``,!0)])]),_:1})]),_:1}),l(t(D),null,{default:p(()=>[l(t(b),null,{default:p(()=>[l(t(E),null,{default:p(()=>[m(u(t(K)(`overview.fleetInfo`)),1)]),_:1}),l(t(g),null,{default:p(()=>[m(u(t(K)(`overview.currentShips`)),1)]),_:1})]),_:1}),l(t(S),null,{default:p(()=>[r(`div`,Te,[(s(!0),e(n,null,o(q.value.fleet,(n,i)=>(s(),e(`div`,{key:i},[r(`p`,Ee,u(t(Oe)[i].name),1),r(`p`,De,u(n),1)]))),128))])]),_:1})]),_:1})])):h(``,!0)}});export{G as default}; \ No newline at end of file diff --git a/docs/assets/ResearchView-B3XsR2nC.js b/docs/assets/ResearchView-B3XsR2nC.js new file mode 100644 index 0000000..d86316f --- /dev/null +++ b/docs/assets/ResearchView-B3XsR2nC.js @@ -0,0 +1,2 @@ +import{At as e,Cn as t,Ct as n,Dt as r,E as i,Et as a,Jt as o,Kt as s,Mt as c,N as l,Nt as u,On as d,Ot as ee,P as f,T as p,Tn as m,gt as te,hn as h,in as g,jt as _,kt as ne}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-vue-router-CWDMmE-U.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import"./vendor-icons-W6Ny__75.js";import{t as re}from"./CardDescription-D2AN1hhX.js";import{h as v,u as y}from"./game-config-D-D7cMgJ.js";import{A as ie,I as ae,M as oe,P as se,_ as ce,c as le,l as b,o as x,r as S,s as C,u as w,w as T}from"./index-DWmvUlvu.js";import{t as E}from"./useGameConfig-B5wf1i8i.js";import{t as D}from"./AlertDialog-CiXBEnQ0.js";import{t as O}from"./CardUnlockOverlay-BA1LyGjd.js";import{t as k}from"./UnlockRequirement-c2kDZKZ0.js";var A={key:0,class:`container mx-auto p-4 sm:p-6`},j={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},M={class:`grid grid-cols-2 lg:grid-cols-3 gap-3 sm:gap-4`},N={class:`flex justify-between items-start gap-2`},P={class:`min-w-0 flex-1`},F={class:`space-y-2.5 sm:space-y-3`},I={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},L={class:`text-muted-foreground mb-1 sm:mb-2`},R={class:`space-y-1 sm:space-y-1.5`},z={class:`flex items-center gap-1.5 sm:gap-2`},ue={class:`text-xs`},B={class:`flex items-center gap-1.5 sm:gap-2`},V={class:`text-xs`},H={class:`flex items-center gap-1.5 sm:gap-2`},U={class:`text-xs`},W=u({__name:`ResearchView`,setup(u){let W=ae(),de=ce(),{t:G}=se(),{TECHNOLOGIES:K,BUILDINGS:fe}=E(),q=a(()=>W.currentPlanet),J=a(()=>W.player),Y=h(null),X=e=>{if(!W.currentPlanet||!i(W.currentPlanet,e,W.player.technologies,W.player.researchQueue).valid)return!1;let t=W.player.technologies[e]||0,{queueItem:n}=p(W.currentPlanet,e,t,W.player.officers);return W.player.researchQueue.push(n),!0},Z=e=>{if(!q.value)return!1;let t=K.value[e],n=f(t,Q(e)+1);return!n||Object.keys(n).length===0?!0:l(q.value,W.player.technologies,n)},pe=e=>{if(!q.value)return G(`researchView.research`);let t=K.value[e],n=Q(e);return t.maxLevel!==void 0&&n>=t.maxLevel?G(`researchView.maxLevelReached`):J.value.researchQueue.length>0||Z(e)?G(`researchView.research`):G(`buildingsView.requirementsNotMet`)},me=e=>{let t=K.value[e],n=f(t,Q(e)+1);if(!n||!q.value)return``;let r=[];for(let[e,t]of Object.entries(n))if(Object.values(y).includes(e)){let n=e,i=q.value.buildings[n]||0,a=fe.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${G(`common.current`)}: Lv ${i})`)}else if(Object.values(v).includes(e)){let n=e,i=W.player.technologies[n]||0,a=K.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${G(`common.current`)}: Lv ${i})`)}return r.join(` +`)},he=e=>{if(!Z(e)){Y.value?.show({title:G(`common.requirementsNotMet`),message:me(e)});return}X(e)||Y.value?.show({title:G(`researchView.researchFailed`),message:G(`researchView.researchFailedMessage`)})},Q=e=>J.value.technologies[e]||0,ge=e=>{if(!q.value)return!1;let t=K.value[e],n=Q(e);if(t.maxLevel!==void 0&&n>=t.maxLevel||J.value.researchQueue.length>0)return!1;let r=$(e,n+1);return l(q.value,W.player.technologies,t.requirements)&&q.value.resources.metal>=r.metal&&q.value.resources.crystal>=r.crystal&&q.value.resources.deuterium>=r.deuterium},$=(e,t)=>te(e,t);return(i,a)=>q.value?(s(),e(`div`,A,[c(k,{"required-building":t(y).ResearchLab,"required-level":1},null,8,[`required-building`]),r(`h1`,j,d(t(G)(`researchView.title`)),1),r(`div`,M,[(s(!0),e(n,null,o(Object.values(t(v)),e=>(s(),ee(t(w),{key:e,class:`relative`},{default:g(()=>[c(O,{requirements:t(K)[e].requirements,currentLevel:Q(e)},null,8,[`requirements`,`currentLevel`]),c(t(le),null,{default:g(()=>[r(`div`,N,[r(`div`,P,[c(t(C),{class:`text-base sm:text-lg cursor-pointer hover:text-primary transition-colors`,onClick:n=>t(de).openTechnology(e,Q(e))},{default:g(()=>[_(d(t(K)[e].name),1)]),_:2},1032,[`onClick`]),c(t(re),{class:`text-xs sm:text-sm`},{default:g(()=>[_(d(t(K)[e].description),1)]),_:2},1024)]),c(t(ie),{variant:`secondary`,class:`text-xs whitespace-nowrap flex-shrink-0`},{default:g(()=>[_(`Lv `+d(Q(e)),1)]),_:2},1024)])]),_:2},1024),c(t(b),null,{default:g(()=>[r(`div`,F,[r(`div`,I,[r(`p`,L,d(t(G)(`researchView.researchCost`))+`:`,1),r(`div`,R,[r(`div`,z,[c(T,{type:`metal`,size:`sm`}),r(`span`,ue,d(t(G)(`resources.metal`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(x)(q.value.resources.metal,$(e,Q(e)+1).metal)])},d(t(S)($(e,Q(e)+1).metal)),3)]),r(`div`,B,[c(T,{type:`crystal`,size:`sm`}),r(`span`,V,d(t(G)(`resources.crystal`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(x)(q.value.resources.crystal,$(e,Q(e)+1).crystal)])},d(t(S)($(e,Q(e)+1).crystal)),3)]),r(`div`,H,[c(T,{type:`deuterium`,size:`sm`}),r(`span`,U,d(t(G)(`resources.deuterium`))+`:`,1),r(`span`,{class:m([`font-medium text-xs sm:text-sm`,t(x)(q.value.resources.deuterium,$(e,Q(e)+1).deuterium)])},d(t(S)($(e,Q(e)+1).deuterium)),3)])])]),c(t(oe),{onClick:t=>he(e),disabled:!ge(e),class:`w-full`},{default:g(()=>[_(d(pe(e)),1)]),_:2},1032,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),c(D,{ref_key:`alertDialog`,ref:Y},null,512)])):ne(``,!0)}});export{W as default}; \ No newline at end of file diff --git a/docs/assets/SelectValue-Cm2l40Fd.js b/docs/assets/SelectValue-Cm2l40Fd.js new file mode 100644 index 0000000..5a633ca --- /dev/null +++ b/docs/assets/SelectValue-Cm2l40Fd.js @@ -0,0 +1 @@ +import{Cn as e,Dt as t,En as n,Ft as r,Kt as i,Mt as a,Nt as o,Ot as s,Tn as c,Vt as l,Yt as u,in as d}from"./game-logic-CfBcTF_c.js";import{c as f}from"./vendor-others-CUjrprN5.js";import{H as p,U as m,_ as h,c as g,d as _,f as v,g as y,h as b,l as x,m as S,p as C,s as w,u as T,v as E}from"./vendor-reka-ui-CZQh7FLl.js";import{H as D,U as O,W as k}from"./vendor-icons-W6Ny__75.js";import{N as A}from"./index-DWmvUlvu.js";var j=o({__name:`Select`,props:{open:{type:Boolean},defaultOpen:{type:Boolean},defaultValue:{},modelValue:{},by:{type:[String,Function]},dir:{},multiple:{type:Boolean},autocomplete:{},disabled:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`],setup(t,{emit:a}){let o=p(t,a);return(t,a)=>(i(),s(e(E),l({"data-slot":`select`},e(o)),{default:d(e=>[u(t.$slots,`default`,n(r(e)))]),_:3},16))}}),M=o({inheritAttrs:!1,__name:`SelectContent`,props:{forceMount:{type:Boolean},position:{default:`popper`},bodyLock:{type:Boolean},side:{},sideOffset:{},sideFlip:{type:Boolean},align:{},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(t,{emit:n}){let r=t,o=n,m=p(f(r,`class`),o);return(n,o)=>(i(),s(e(v),null,{default:d(()=>[a(e(h),l({"data-slot":`select-content`},{...n.$attrs,...e(m)},{class:e(A)(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--reka-select-content-available-height) min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border shadow-md`,t.position===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,r.class)}),{default:d(()=>[a(e(I)),a(e(w),{class:c(e(A)(`p-1`,t.position===`popper`&&`h-[var(--reka-select-trigger-height)] w-full min-w-[var(--reka-select-trigger-width)] scroll-my-1`))},{default:d(()=>[u(n.$slots,`default`)]),_:3},8,[`class`]),a(e(F))]),_:3},16,[`class`])]),_:3}))}}),N={class:`absolute right-2 flex size-3.5 items-center justify-center`},P=o({__name:`SelectItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{}},setup(n){let r=n,o=m(f(r,`class`));return(n,c)=>(i(),s(e(b),l({"data-slot":`select-item`},e(o),{class:e(A)(`focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,r.class)}),{default:d(()=>[t(`span`,N,[a(e(S),null,{default:d(()=>[u(n.$slots,`indicator-icon`,{},()=>[a(e(k),{class:`size-4`})])]),_:3})]),a(e(C),null,{default:d(()=>[u(n.$slots,`default`)]),_:3})]),_:3},16,[`class`]))}}),F=o({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean},as:{},class:{}},setup(t){let n=t,r=m(f(n,`class`));return(t,o)=>(i(),s(e(_),l({"data-slot":`select-scroll-down-button`},e(r),{class:e(A)(`flex cursor-default items-center justify-center py-1`,n.class)}),{default:d(()=>[u(t.$slots,`default`,{},()=>[a(e(O),{class:`size-4`})])]),_:3},16,[`class`]))}}),I=o({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean},as:{},class:{}},setup(t){let n=t,r=m(f(n,`class`));return(t,o)=>(i(),s(e(T),l({"data-slot":`select-scroll-up-button`},e(r),{class:e(A)(`flex cursor-default items-center justify-center py-1`,n.class)}),{default:d(()=>[u(t.$slots,`default`,{},()=>[a(e(D),{class:`size-4`})])]),_:3},16,[`class`]))}}),L=o({__name:`SelectTrigger`,props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{},size:{default:`default`}},setup(t){let n=t,r=m(f(n,`class`,`size`));return(o,c)=>(i(),s(e(x),l({"data-slot":`select-trigger`,"data-size":t.size},e(r),{class:e(A)(`border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,n.class)}),{default:d(()=>[u(o.$slots,`default`),a(e(y),{"as-child":``},{default:d(()=>[a(e(O),{class:`size-4 opacity-50`})]),_:1})]),_:3},16,[`data-size`,`class`]))}}),R=o({__name:`SelectValue`,props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(t){let n=t;return(t,r)=>(i(),s(e(g),l({"data-slot":`select-value`},n),{default:d(()=>[u(t.$slots,`default`)]),_:3},16))}});export{j as a,M as i,L as n,P as r,R as t}; \ No newline at end of file diff --git a/docs/assets/SettingsView-C1jUcCe5.js b/docs/assets/SettingsView-C1jUcCe5.js new file mode 100644 index 0000000..c9817ac --- /dev/null +++ b/docs/assets/SettingsView-C1jUcCe5.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Dt as n,En as r,Ft as i,Kt as a,Mt as o,Nt as s,On as c,Ot as l,Tn as u,Vt as d,Xt as ee,Yt as f,hn as p,in as m,jt as h,kt as te}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import{c as g,n as _}from"./vendor-others-CUjrprN5.js";import{A as v,D as y,E as b,H as x,M as S,N as C,O as w,j as T,k as E}from"./vendor-reka-ui-CZQh7FLl.js";import{t as D}from"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{L as O,R as k,T as A,b as j,i as M,s as N,y as P}from"./vendor-icons-W6Ny__75.js";import{t as F}from"./CardDescription-D2AN1hhX.js";import{I as ne,L as I,M as L,N as R,P as z,c as B,j as V,l as H,s as U,u as W}from"./index-DWmvUlvu.js";var G=s({__name:`AlertDialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:n}){let o=x(e,n);return(e,n)=>(a(),l(t(y),d({"data-slot":`alert-dialog`},t(o)),{default:m(t=>[f(e.$slots,`default`,r(i(t)))]),_:3},16))}}),K=s({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(C),d(t(r),{class:t(R)(t(V)(),n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),q=s({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(T),d(t(r),{class:t(R)(t(V)({variant:`outline`}),`mt-2 sm:mt-0`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),J=s({inheritAttrs:!1,__name:`AlertDialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:n}){let r=e,i=n,s=x(g(r,`class`),i);return(e,n)=>(a(),l(t(w),null,{default:m(()=>[o(t(E),{"data-slot":`alert-dialog-overlay`,class:`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80`}),o(t(S),d({"data-slot":`alert-dialog-content`},{...e.$attrs,...t(s)},{class:t(R)(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,r.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),Y=s({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(v),d({"data-slot":`alert-dialog-description`},t(r),{class:t(R)(`text-muted-foreground text-sm`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),X=s({__name:`AlertDialogFooter`,props:{class:{}},setup(n){let r=n;return(n,i)=>(a(),e(`div`,{"data-slot":`alert-dialog-footer`,class:u(t(R)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,r.class))},[f(n.$slots,`default`)],2))}}),Z=s({__name:`AlertDialogHeader`,props:{class:{}},setup(n){let r=n;return(n,i)=>(a(),e(`div`,{"data-slot":`alert-dialog-header`,class:u(t(R)(`flex flex-col gap-2 text-center sm:text-left`,r.class))},[f(n.$slots,`default`)],2))}}),re=s({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(b),d({"data-slot":`alert-dialog-title`},t(r),{class:t(R)(`text-lg font-semibold`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),ie=D(),ae={class:`container mx-auto p-4 sm:p-6 space-y-6`},oe={class:`flex items-center justify-between`},se={class:`text-2xl font-bold`},ce={class:`flex items-center justify-between p-4 border rounded-lg`},le={class:`space-y-1`},ue={class:`font-medium`},de={class:`text-sm text-muted-foreground`},fe={class:`flex items-center justify-between p-4 border rounded-lg`},pe={class:`space-y-1`},me={class:`font-medium`},he={class:`text-sm text-muted-foreground`},ge={class:`flex gap-2`},_e={class:`flex items-center justify-between p-4 border rounded-lg border-destructive/50`},ve={class:`space-y-1`},ye={class:`font-medium text-destructive`},be={class:`text-sm text-muted-foreground`},xe={class:`flex items-center justify-between p-4 border rounded-lg`},Se={class:`space-y-1`},Ce={class:`font-medium`},we={class:`text-sm text-muted-foreground`},Te={class:`space-y-2`},Ee={class:`flex items-center justify-between text-sm`},De={class:`text-muted-foreground`},Oe={class:`font-medium`},Q={class:`flex items-center justify-between text-sm`},ke={class:`text-muted-foreground`},Ae={class:`font-medium`},je={class:`pt-2 border-t space-y-2`},Me={class:`text-sm font-medium`},Ne={class:`flex flex-col gap-2`},Pe={class:`ml-auto text-xs text-muted-foreground`},$=s({__name:`SettingsView`,setup(r){let{t:i}=z(),s=ne(),u=p(),d=p(!1),f=p(!1),g=p(``),v=p(``),y=null,b=()=>{window.open(`https://github.com/${I.author}/${I.name}`,`_blank`)},x=()=>{window.open(`https://qm.qq.com/q/${I.id}`,`_blank`)},S=async()=>{try{d.value=!0;let e=localStorage.getItem(I.name),t=localStorage.getItem(`${I.name}-universe`);if(!e){_.error(i(`settings.exportFailed`));return}let n={game:e,universe:t||null},r=`${I.name}-${new Date().toISOString().slice(0,10)}-${Date.now()}.json`,a=JSON.stringify(n,null,2);(0,ie.saveAs)(new Blob([a],{type:`application/json`}),r),_.success(i(`settings.exportSuccess`))}catch(e){console.error(`Export failed:`,e),_.error(i(`settings.exportFailed`))}finally{d.value=!1}},C=()=>{u.value?.click()},w=e=>{let t=e.target.files?.[0];t&&(g.value=i(`settings.importConfirmTitle`),v.value=i(`settings.importConfirmMessage`),f.value=!0,s.isPaused=!0,y=()=>T(t))},T=async e=>{try{let t=new FileReader;t.onload=e=>{try{let t=e.target?.result;if(typeof t==`string`){let e=JSON.parse(t);if(typeof e==`string`||!e.game){localStorage.setItem(I.name,t),_.success(i(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3);return}e.game&&localStorage.setItem(I.name,e.game),e.universe&&localStorage.setItem(`${I.name}-universe`,e.universe),_.success(i(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3)}else _.error(i(`settings.importFailed`))}catch(e){let t=e instanceof Error?e.message:String(e);_.error(i(`settings.importFailed`)+`: `+t)}},t.readAsText(e)}catch(e){console.error(`Import failed:`,e),_.error(i(`settings.importFailed`))}},E=()=>{g.value=i(`settings.clearConfirmTitle`),v.value=i(`settings.clearConfirmMessage`),f.value=!0,y=D},D=()=>{localStorage.clear(),window.location.reload()},R=()=>{s.isPaused=!s.isPaused,s.isPaused?_.info(i(`settings.gamePaused`)):_.success(i(`settings.gameResumed`))},V=()=>{y&&=(y(),null),f.value=!1},$=()=>{s.isPaused=!1,y=null,f.value=!1,u.value&&(u.value.value=``)};return(r,p)=>(a(),e(`div`,ae,[n(`div`,oe,[n(`h1`,se,c(t(i)(`nav.settings`)),1)]),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.dataManagement`)),1)]),_:1}),o(t(F),null,{default:m(()=>[h(c(t(i)(`settings.dataManagementDesc`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,ce,[n(`div`,le,[n(`h3`,ue,c(t(i)(`settings.exportData`)),1),n(`p`,de,c(t(i)(`settings.exportDataDesc`)),1)]),o(t(L),{onClick:S,disabled:d.value},{default:m(()=>[o(t(k),{class:`mr-2 h-4 w-4`}),h(` `+c(d.value?t(i)(`settings.exporting`):t(i)(`settings.export`)),1)]),_:1},8,[`disabled`])]),n(`div`,fe,[n(`div`,pe,[n(`h3`,me,c(t(i)(`settings.importData`)),1),n(`p`,he,c(t(i)(`settings.importDataDesc`)),1)]),n(`div`,ge,[n(`input`,{ref_key:`fileInputRef`,ref:u,type:`file`,accept:`.json`,class:`hidden`,onChange:w},null,544),o(t(L),{onClick:C,variant:`outline`},{default:m(()=>[o(t(M),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.selectFile`)),1)]),_:1})])]),n(`div`,_e,[n(`div`,ve,[n(`h3`,ye,c(t(i)(`settings.clearData`)),1),n(`p`,be,c(t(i)(`settings.clearDataDesc`)),1)]),o(t(L),{onClick:E,variant:`destructive`},{default:m(()=>[o(t(N),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.clear`)),1)]),_:1})])]),_:1})]),_:1}),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.gameSettings`)),1)]),_:1}),o(t(F),null,{default:m(()=>[h(c(t(i)(`settings.gameSettingsDesc`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,xe,[n(`div`,Se,[n(`h3`,Ce,c(t(i)(`settings.gamePause`)),1),n(`p`,we,c(t(i)(`settings.gamePauseDesc`)),1)]),o(t(L),{onClick:R,variant:t(s).isPaused?`default`:`outline`},{default:m(()=>[(a(),l(ee(t(s).isPaused?t(P):t(j)),{class:`mr-2 h-4 w-4`})),h(` `+c(t(s).isPaused?t(i)(`settings.resume`):t(i)(`settings.pause`)),1)]),_:1},8,[`variant`])])]),_:1})]),_:1}),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.about`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,Te,[n(`div`,Ee,[n(`span`,De,c(t(i)(`settings.version`))+`:`,1),n(`span`,Oe,c(t(I).version),1)]),n(`div`,Q,[n(`span`,ke,c(t(i)(`settings.buildDate`))+`:`,1),n(`span`,Ae,c(t(I).buildDate),1)])]),n(`div`,je,[n(`h3`,Me,c(t(i)(`settings.community`)),1),n(`div`,Ne,[o(t(L),{variant:`outline`,class:`w-full justify-start`,onClick:b},{default:m(()=>[o(t(O),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.github`)),1)]),_:1}),t(s).locale===`zh-CN`||t(s).locale===`zh-TW`?(a(),l(t(L),{key:0,variant:`outline`,class:`w-full justify-start`,onClick:x},{default:m(()=>[o(t(A),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.qqGroup`))+` `,1),n(`span`,Pe,c(t(I).qq),1)]),_:1})):te(``,!0)])])]),_:1})]),_:1}),o(t(G),{open:f.value,"onUpdate:open":p[0]||=e=>f.value=e},{default:m(()=>[o(t(J),null,{default:m(()=>[o(t(Z),null,{default:m(()=>[o(t(re),null,{default:m(()=>[h(c(g.value),1)]),_:1}),o(t(Y),null,{default:m(()=>[h(c(v.value),1)]),_:1})]),_:1}),o(t(X),null,{default:m(()=>[o(t(q),{onClick:$},{default:m(()=>[h(c(t(i)(`common.cancel`)),1)]),_:1}),o(t(K),{onClick:V},{default:m(()=>[h(c(t(i)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{$ as default}; \ No newline at end of file diff --git a/docs/assets/ShipyardView-CezaC9x_.js b/docs/assets/ShipyardView-CezaC9x_.js new file mode 100644 index 0000000..7f5000a --- /dev/null +++ b/docs/assets/ShipyardView-CezaC9x_.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dn as r,Dt as i,Et as a,Jt as ee,Kt as o,Mt as s,N as c,Nt as l,On as u,Ot as d,Tn as f,c as p,hn as m,in as h,jt as g,kt as _,o as te,r as ne,s as re}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-vue-router-CWDMmE-U.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import"./vendor-others-CUjrprN5.js";import"./vendor-reka-ui-CZQh7FLl.js";import"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import"./vendor-icons-W6Ny__75.js";import{t as ie}from"./CardDescription-D2AN1hhX.js";import{m as v,u as ae}from"./game-config-D-D7cMgJ.js";import{I as oe,M as se,O as ce,P as le,_ as ue,c as y,l as b,o as x,r as S,s as C,t as w,u as T,w as E}from"./index-DWmvUlvu.js";import{t as D}from"./useGameConfig-B5wf1i8i.js";import{t as O}from"./AlertDialog-CiXBEnQ0.js";import{t as k}from"./CardUnlockOverlay-BA1LyGjd.js";import{t as A}from"./UnlockRequirement-c2kDZKZ0.js";var j={key:0,class:`container mx-auto p-4 sm:p-6`},M={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},N={class:`mb-4 sm:mb-6 p-3 sm:p-4 bg-muted/50 rounded-lg border`},P={class:`flex items-center justify-between`},F={class:`text-sm sm:text-base font-medium`},I={class:`text-sm sm:text-base font-bold`},L={class:`mt-2`},R={class:`w-full bg-background rounded-full h-2.5 sm:h-3 overflow-hidden`},z={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},B={class:`space-y-3 sm:space-y-4`},V={class:`grid grid-cols-2 gap-2 text-xs sm:text-sm`},H={class:`text-muted-foreground`},U={class:`font-medium`},de={class:`text-muted-foreground`},fe={class:`font-medium`},pe={class:`text-muted-foreground`},me={class:`font-medium`},he={class:`text-muted-foreground`},ge={class:`font-medium`},_e={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},ve={class:`text-muted-foreground mb-1 sm:mb-2`},ye={class:`space-y-1 sm:space-y-1.5`},be={class:`flex items-center gap-1.5 sm:gap-2`},xe={class:`text-xs`},Se={class:`flex items-center gap-1.5 sm:gap-2`},Ce={class:`text-xs`},we={class:`flex items-center gap-1.5 sm:gap-2`},Te={class:`text-xs`},Ee={class:`space-y-2`},De={key:0,class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2 p-2.5 sm:p-3 bg-muted rounded-lg`},Oe={class:`font-medium text-muted-foreground`},ke={class:`space-y-1 sm:space-y-1.5`},Ae={class:`flex items-center gap-1.5 sm:gap-2`},je={class:`text-xs`},Me={class:`flex items-center gap-1.5 sm:gap-2`},Ne={class:`text-xs`},Pe={class:`flex items-center gap-1.5 sm:gap-2`},Fe={class:`text-xs`},W=l({__name:`ShipyardView`,setup(l){let W=oe(),G=ue(),{t:K}=le(),{SHIPS:q}=D(),J=a(()=>W.currentPlanet),Y=m(null),X=a(()=>J.value?re(J.value.fleet):0),Z=a(()=>J.value?p(J.value,W.player.technologies):0),Q=m({[v.LightFighter]:0,[v.HeavyFighter]:0,[v.Cruiser]:0,[v.Battleship]:0,[v.SmallCargo]:0,[v.LargeCargo]:0,[v.ColonyShip]:0,[v.Recycler]:0,[v.EspionageProbe]:0,[v.DarkMatterHarvester]:0,[v.Deathstar]:0}),Ie=(e,t)=>{if(!W.currentPlanet||!te(W.currentPlanet,e,t,W.player.technologies).valid)return!1;let n=ne(W.currentPlanet,e,t,W.player.officers);return W.currentPlanet.buildQueue.push(n),!0},Le=e=>{let t=Q.value[e];if(t<=0){Y.value?.show({title:K(`shipyardView.inputError`),message:K(`shipyardView.inputErrorMessage`)});return}Ie(e,t)?Q.value[e]=0:Y.value?.show({title:K(`shipyardView.buildFailed`),message:K(`shipyardView.buildFailedMessage`)})},Re=e=>{if(!J.value)return!1;let t=Q.value[e];if(t<=0)return!1;let n=q.value[e],r={metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t};return c(J.value,W.player.technologies,n.requirements)&&J.value.resources.metal>=r.metal&&J.value.resources.crystal>=r.crystal&&J.value.resources.deuterium>=r.deuterium},$=e=>{let t=Q.value[e],n=q.value[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t}};return(a,c)=>J.value?(o(),e(`div`,j,[s(A,{"required-building":t(ae).Shipyard,"required-level":1},null,8,[`required-building`]),i(`h1`,M,u(t(K)(`shipyardView.title`)),1),i(`div`,N,[i(`div`,P,[i(`div`,F,u(t(K)(`shipyardView.fleetStorage`))+`:`,1),i(`div`,I,[i(`span`,{class:f(X.value>Z.value?`text-destructive`:`text-primary`)},u(t(S)(X.value)),3),c[0]||=i(`span`,{class:`text-muted-foreground mx-1`},`/`,-1),i(`span`,null,u(t(S)(Z.value)),1)])]),i(`div`,L,[i(`div`,R,[i(`div`,{class:f([`h-full transition-all duration-300`,X.value>Z.value?`bg-destructive`:`bg-primary`]),style:r({width:`${Math.min(X.value/Z.value*100,100)}%`})},null,6)])])]),i(`div`,z,[(o(!0),e(n,null,ee(Object.values(t(v)),n=>(o(),d(t(T),{key:n,class:`relative`},{default:h(()=>[s(k,{requirements:t(q)[n].requirements},null,8,[`requirements`]),s(t(y),null,{default:h(()=>[s(t(C),{class:`text-base sm:text-lg cursor-pointer hover:text-primary transition-colors`,onClick:e=>t(G).openShip(n)},{default:h(()=>[g(u(t(q)[n].name),1)]),_:2},1032,[`onClick`]),s(t(ie),{class:`text-xs sm:text-sm`},{default:h(()=>[g(u(t(q)[n].description),1)]),_:2},1024)]),_:2},1024),s(t(b),null,{default:h(()=>[i(`div`,B,[i(`div`,V,[i(`div`,null,[i(`p`,H,u(t(K)(`shipyardView.attack`)),1),i(`p`,U,u(t(q)[n].attack),1)]),i(`div`,null,[i(`p`,de,u(t(K)(`shipyardView.shield`)),1),i(`p`,fe,u(t(q)[n].shield),1)]),i(`div`,null,[i(`p`,pe,u(t(K)(`shipyardView.speed`)),1),i(`p`,me,u(t(q)[n].speed),1)]),i(`div`,null,[i(`p`,he,u(t(K)(`shipyardView.cargoCapacity`)),1),i(`p`,ge,u(t(S)(t(q)[n].cargoCapacity)),1)])]),i(`div`,_e,[i(`p`,ve,u(t(K)(`shipyardView.unitCost`))+`:`,1),i(`div`,ye,[i(`div`,be,[s(E,{type:`metal`,size:`sm`}),i(`span`,xe,u(t(K)(`resources.metal`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.metal,t(q)[n].cost.metal)])},u(t(S)(t(q)[n].cost.metal)),3)]),i(`div`,Se,[s(E,{type:`crystal`,size:`sm`}),i(`span`,Ce,u(t(K)(`resources.crystal`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.crystal,t(q)[n].cost.crystal)])},u(t(S)(t(q)[n].cost.crystal)),3)]),i(`div`,we,[s(E,{type:`deuterium`,size:`sm`}),i(`span`,Te,u(t(K)(`resources.deuterium`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.deuterium,t(q)[n].cost.deuterium)])},u(t(S)(t(q)[n].cost.deuterium)),3)])])]),i(`div`,Ee,[s(t(w),{for:`quantity-${n}`,class:`text-xs sm:text-sm`},{default:h(()=>[g(u(t(K)(`shipyardView.buildQuantity`)),1)]),_:1},8,[`for`]),s(t(ce),{id:`quantity-${n}`,modelValue:Q.value[n],"onUpdate:modelValue":e=>Q.value[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])]),Q.value[n]>0?(o(),e(`div`,De,[i(`p`,Oe,u(t(K)(`shipyardView.totalCost`))+`:`,1),i(`div`,ke,[i(`div`,Ae,[s(E,{type:`metal`,size:`sm`}),i(`span`,je,u(t(K)(`resources.metal`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.metal,$(n).metal)])},u(t(S)($(n).metal)),3)]),i(`div`,Me,[s(E,{type:`crystal`,size:`sm`}),i(`span`,Ne,u(t(K)(`resources.crystal`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.crystal,$(n).crystal)])},u(t(S)($(n).crystal)),3)]),i(`div`,Pe,[s(E,{type:`deuterium`,size:`sm`}),i(`span`,Fe,u(t(K)(`resources.deuterium`))+`:`,1),i(`span`,{class:f([`font-medium text-xs sm:text-sm`,t(x)(J.value.resources.deuterium,$(n).deuterium)])},u(t(S)($(n).deuterium)),3)])])])):_(``,!0),s(t(se),{onClick:e=>Le(n),disabled:!Re(n),class:`w-full`},{default:h(()=>[g(u(t(K)(`shipyardView.build`)),1)]),_:1},8,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),s(O,{ref_key:`alertDialog`,ref:Y},null,512)])):_(``,!0)}});export{W as default}; \ No newline at end of file diff --git a/docs/assets/UnlockRequirement-c2kDZKZ0.js b/docs/assets/UnlockRequirement-c2kDZKZ0.js new file mode 100644 index 0000000..d49d4d0 --- /dev/null +++ b/docs/assets/UnlockRequirement-c2kDZKZ0.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Dt as n,Et as r,Kt as i,Mt as a,Nt as o,On as s,in as c,jt as l,kt as u}from"./game-logic-CfBcTF_c.js";import{o as d}from"./vendor-vue-router-CWDMmE-U.js";import{D as f,G as p}from"./vendor-icons-W6Ny__75.js";import{t as m}from"./CardDescription-D2AN1hhX.js";import{A as h,I as g,M as _,P as v,c as y,l as b,s as x,u as S}from"./index-DWmvUlvu.js";import{t as C}from"./useGameConfig-B5wf1i8i.js";var w={key:0,class:`fixed inset-0 z-50 bg-background/80 backdrop-blur-sm flex items-center justify-center p-4`},T={class:`flex justify-center mb-4`},E={class:`rounded-full bg-muted p-4`},D={class:`p-4 bg-muted rounded-lg space-y-2`},O={class:`text-sm font-medium text-center`},k={class:`flex items-center justify-center gap-2`},A={class:`text-base sm:text-lg font-bold`},j={key:0,class:`text-xs text-center text-muted-foreground`},M={class:`flex gap-2`},N=o({__name:`UnlockRequirement`,props:{requiredBuilding:{},requiredLevel:{}},setup(o){let N=o,P=d(),F=g(),{t:I}=v(),{BUILDINGS:L}=C(),R=r(()=>L.value[N.requiredBuilding]?.name||N.requiredBuilding),z=r(()=>F.currentPlanet&&F.currentPlanet.buildings[N.requiredBuilding]||0),B=r(()=>z.value>=N.requiredLevel),V=()=>{P.push(`/buildings`)};return(r,d)=>B.value?u(``,!0):(i(),e(`div`,w,[a(t(S),{class:`max-w-md w-full`},{default:c(()=>[a(t(y),{class:`text-center`},{default:c(()=>[n(`div`,T,[n(`div`,E,[a(t(f),{size:48,class:`text-muted-foreground`})])]),a(t(x),{class:`text-xl sm:text-2xl`},{default:c(()=>[l(s(t(I)(`common.featureLocked`)),1)]),_:1}),a(t(m),{class:`text-sm sm:text-base`},{default:c(()=>[l(s(t(I)(`common.unlockRequired`)),1)]),_:1})]),_:1}),a(t(b),{class:`space-y-4`},{default:c(()=>[n(`div`,D,[n(`p`,O,s(t(I)(`common.requiredBuilding`))+`:`,1),n(`div`,k,[n(`span`,A,s(R.value),1),a(t(h),{variant:`default`},{default:c(()=>[l(`Lv `+s(o.requiredLevel),1)]),_:1})]),z.value===void 0?u(``,!0):(i(),e(`p`,j,s(t(I)(`common.currentLevel`))+`: Lv `+s(z.value),1))]),n(`div`,M,[a(t(_),{onClick:V,class:`flex-1`},{default:c(()=>[a(t(p),{size:16,class:`mr-2`}),l(` `+s(t(I)(`common.goToBuildings`)),1)]),_:1})])]),_:1})]),_:1})]))}});export{N as t}; \ No newline at end of file diff --git a/docs/assets/index-DWmvUlvu.js b/docs/assets/index-DWmvUlvu.js new file mode 100644 index 0000000..698d625 --- /dev/null +++ b/docs/assets/index-DWmvUlvu.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./OverviewView-Eaupz5BG.js","./vendor-others-CUjrprN5.js","./game-logic-CfBcTF_c.js","./game-config-D-D7cMgJ.js","./rolldown-runtime-tX5UdD3f.js","./vendor-others-BMPyaZWq.css","./vendor-reka-ui-CZQh7FLl.js","./vendor-vueuse-C7EbLx--.js","./vendor-crypto-Ce_BCn-h.js","./vendor-utils-Dg-HLkEU.js","./vendor-pinia-DP9x75p8.js","./CardDescription-D2AN1hhX.js","./useGameConfig-B5wf1i8i.js","./game-i18n-DEf7ySVe.js","./BuildingsView-BQvU9Qow.js","./vendor-icons-W6Ny__75.js","./AlertDialog-CiXBEnQ0.js","./CardUnlockOverlay-BA1LyGjd.js","./ResearchView-B3XsR2nC.js","./vendor-vue-router-CWDMmE-U.js","./UnlockRequirement-c2kDZKZ0.js","./ShipyardView-CezaC9x_.js","./DefenseView-DuI03pUa.js","./FleetView-BBGER_SR.js","./OfficersView-Dfgf1DR0.js","./BattleSimulatorView-BDzc1XdU.js","./BattleReportDialog-CWBu6H63.js","./TooltipProvider-BAp4BAXy.js","./MessagesView-DpnWNQDD.js","./GalaxyView-TxzLJXed.js","./SelectValue-Cm2l40Fd.js","./SettingsView-C1jUcCe5.js","./GMView-Cql_sk5m.js"])))=>i.map(i=>d[i]); +import{o as e}from"./rolldown-runtime-tX5UdD3f.js";import{$ as t,A as n,At as r,B as i,Cn as a,Ct as o,D as s,Dn as c,Dt as l,En as u,Et as d,Ft as f,G as ee,Gt as te,H as ne,Jt as p,Kt as m,Mt as h,Nt as g,On as _,Ot as v,R as re,Tn as y,U as ie,Vt as b,W as ae,Wt as oe,X as se,Xt as ce,Y as le,Yt as x,_ as ue,_t as S,an as de,b as fe,bt as pe,ct as me,ft as he,g as ge,gt as _e,h as ve,hn as C,ht as w,in as T,jt as E,kt as D,l as ye,lt as O,mt as be,nt as xe,pt as Se,rt as Ce,tn as we,tt as Te,un as Ee,v as De,w as Oe,wt as ke,x as Ae,y as je,yt as k,z as Me}from"./game-logic-CfBcTF_c.js";import{n as Ne,r as A,t as Pe}from"./vendor-pinia-DP9x75p8.js";import{i as Fe,n as Ie,r as Le,t as Re}from"./vendor-vue-router-CWDMmE-U.js";import{t as ze}from"./vendor-crypto-Ce_BCn-h.js";import{n as Be,r as Ve,t as He}from"./game-i18n-DEf7ySVe.js";import{R as Ue,c as j,t as We,z as Ge}from"./vendor-others-CUjrprN5.js";import{B as Ke,C as qe,F as Je,H as M,I as Ye,L as Xe,P as Ze,R as Qe,S as $e,T as et,U as tt,V as nt,W as rt,a as it,b as at,i as ot,n as st,o as ct,r as lt,t as ut,w as dt,x as ft,y as pt,z as mt}from"./vendor-reka-ui-CZQh7FLl.js";import{n as ht}from"./vendor-utils-Dg-HLkEU.js";import{i as gt,n as _t,r as vt,t as yt}from"./vendor-vueuse-C7EbLx--.js";import{A as bt,B as xt,C as St,E as Ct,F as wt,G as Tt,N as Et,O as Dt,P as Ot,S as kt,V as At,_ as jt,c as Mt,f as Nt,h as Pt,j as Ft,k as It,l as Lt,m as Rt,n as zt,o as Bt,p as Vt,r as Ht,t as Ut,u as Wt,w as Gt,x as Kt}from"./vendor-icons-W6Ny__75.js";import{c as qt,f as N,r as Jt}from"./game-config-D-D7cMgJ.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})(),``+new URL(`logo-Cz0cNqhe.svg`,import.meta.url).href;var P={name:`ogame-vue-ts`,title:`OGame-Vue-Ts`,qq:`920930589`,id:`2zBlHPUA6E`,author:{name:`setube`,email:`1962257451@qq.com`},private:!0,version:`1.1.0`,buildDate:`2025/12/14 13:13:07`,main:`dist-electron/main.js`,type:`module`,scripts:{dev:`vite --port 25121`,build:`vue-tsc -b && vite build && node update-build-date.js`,preview:`vite preview`,"build:server":`pnpm run build && go build`,"build:electron":`pnpm run build && electron-builder`},dependencies:{"@tailwindcss/vite":`^4.1.17`,"@tanstack/vue-table":`^8.21.3`,"@vueuse/core":`^14.1.0`,"class-variance-authority":`^0.7.1`,clsx:`^2.1.1`,"crypto-js":`^4.2.0`,"file-saver":`^2.0.5`,finalhandler:`^2.1.1`,"lucide-vue-next":`^0.556.0`,pinia:`^3.0.4`,"pinia-plugin-persistedstate":`^4.7.1`,"reka-ui":`^2.6.1`,"serve-static":`^2.2.0`,"tailwind-merge":`^3.4.0`,tailwindcss:`^4.1.17`,vue:`^3.5.24`,"vue-router":`4`,"vue-sonner":`^2.0.9`},devDependencies:{"@types/crypto-js":`^4.2.2`,"@types/file-saver":`^2.0.7`,"@types/node":`^24.10.2`,"@vitejs/plugin-vue":`^6.0.1`,"@vue/tsconfig":`^0.8.1`,electron:`^39.2.7`,"electron-builder":`^26.0.12`,"electron-vite":`^5.0.0`,"tw-animate-css":`^1.4.0`,typescript:`~5.9.3`,vite:`npm:rolldown-vite@7.2.5`,"vite-plugin-electron":`^0.29.0`,"vite-plugin-electron-renderer":`^0.14.6`,"vue-tsc":`^3.1.4`},pnpm:{overrides:{vite:`npm:rolldown-vite@7.2.5`},onlyBuiltDependencies:[`electron-winstaller`,`esbuild`,`vue-demi`]},packageManager:`pnpm@10.13.1+sha512.37ebf1a5c7a30d5fabe0c5df44ee8da4c965ca0c5af3dbab28c3a1681b70a256218d05c81c9c0dcf767ef6b8551eb5b960042b9ed4300c59242336377e01cfad`,build:{appId:`games.wenzi.ogame`,productName:`OGame`,directories:{output:`pkg`},win:{target:`nsis`,icon:`public/favicon.ico`,verifyUpdateCodeSignature:!1,artifactName:"${productName}-Setup.${ext}"},mac:{target:[`dmg`,`zip`],artifactName:"${productName}-mac.${ext}"},linux:{target:[`AppImage`,`deb`],artifactName:"${productName}-linux.${ext}"}}},Yt=e(ze(),1);const Xt=e=>{try{let t=JSON.stringify(e);return Yt.default.AES.encrypt(t,P.name).toString()}catch(e){console.error(e)}return``},Zt=e=>{try{let t=Yt.default.AES.decrypt(e,P.name).toString(Yt.default.enc.Utf8);return JSON.parse(t)}catch(e){return console.error(e),{}}},Qt=A(`game`,{state:()=>({gameTime:Date.now(),isPaused:!1,player:{id:`player1`,name:``,planets:[],technologies:{},officers:{},researchQueue:[],fleetMissions:[],battleReports:[],spyReports:[]},currentPlanetId:``,isDark:``,locale:`zh-CN`}),getters:{currentPlanet(){return this.player.planets.find(e=>e.id===this.currentPlanetId)},getMoonForPlanet(){return e=>this.player.planets.find(t=>t.parentPlanetId===e&&t.isMoon)}},persist:{key:P.name,storage:localStorage,serializer:{serialize:e=>Xt(e),deserialize:e=>Zt(e)}}}),$t=A(`universe`,{state:()=>({planets:{},debrisFields:{}}),persist:{key:`${P.name}-universe`,storage:localStorage,serializer:{serialize:e=>Xt(e),deserialize:e=>Zt(e)}}});var F=C(!1);const en=()=>{let e=Qt();oe(()=>{e.isDark?F.value=e.isDark===`dark`:(F.value=window.matchMedia(`(prefers-color-scheme: dark)`).matches,e.isDark=F.value?`dark`:`light`),t()}),we(F,()=>{t(),e.isDark=F.value?`dark`:`light`});let t=()=>{F.value?document.documentElement.classList.add(`dark`):document.documentElement.classList.remove(`dark`)};return{isDark:F,toggleTheme:()=>{F.value=!F.value}}},I=()=>{let e=Qt(),t=d(()=>e.locale),n=d(()=>Ve[t.value]);return{t:e=>{let t=e.split(`.`),r=n.value;for(let n of t)if(r&&typeof r==`object`&&n in r)r=r[n];else return e;return typeof r==`string`?r:e},locale:t,setLocale:t=>{e.locale=t},messages:n}},L=(...e)=>ht(Ge(e));var R=g({__name:`Button`,props:{variant:{},size:{},class:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return(n,r)=>(m(),v(a(nt),{"data-slot":`button`,as:e.as,"as-child":e.asChild,class:y(a(L)(a(tn)({variant:e.variant,size:e.size}),t.class))},{default:T(()=>[x(n.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`]))}});const tn=Ue(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,sm:`h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});var z=g({__name:`Badge`,props:{asChild:{type:Boolean},as:{},variant:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(r,i)=>(m(),v(a(nt),b({"data-slot":`badge`,class:a(L)(a(nn)({variant:e.variant}),t.class)},a(n)),{default:T(()=>[x(r.$slots,`default`)]),_:3},16,[`class`]))}});const nn=Ue(`inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});var rn=g({__name:`Progress`,props:{modelValue:{default:0},max:{},getValueLabel:{},getValueText:{},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(at),b({"data-slot":`progress`},a(n),{class:a(L)(`bg-primary/20 relative h-2 w-full overflow-hidden rounded-full`,t.class)}),{default:T(()=>[h(a(pt),{"data-slot":`progress-indicator`,class:`bg-primary h-full w-full flex-1 transition-all`,style:c(`transform: translateX(-${100-(t.modelValue??0)}%);`)},null,8,[`style`])]),_:1},16,[`class`]))}}),an=g({__name:`Popover`,props:{defaultOpen:{type:Boolean},open:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=M(e,t);return(e,t)=>(m(),v(a(et),b({"data-slot":`popover`},a(n)),{default:T(t=>[x(e.$slots,`default`,u(f(t)))]),_:3},16))}}),on=g({inheritAttrs:!1,__name:`PopoverContent`,props:{forceMount:{type:Boolean},side:{},sideOffset:{default:4},sideFlip:{type:Boolean},align:{default:`center`},alignOffset:{},alignFlip:{type:Boolean},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},disableUpdateOnLayoutShift:{type:Boolean},prioritizePosition:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},disableOutsidePointerEvents:{type:Boolean},class:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=M(j(n,`class`),r);return(e,t)=>(m(),v(a(qe),null,{default:T(()=>[h(a(dt),b({"data-slot":`popover-content`},{...e.$attrs,...a(i)},{class:a(L)(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md origin-(--reka-popover-content-transform-origin) outline-hidden`,n.class)}),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),sn=g({__name:`PopoverTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(m(),v(a($e),b({"data-slot":`popover-trigger`},t),{default:T(()=>[x(e.$slots,`default`)]),_:3},16))}}),cn=g({__name:`Sheet`,props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=M(e,t);return(e,t)=>(m(),v(a(Ke),b({"data-slot":`sheet`},a(n)),{default:T(t=>[x(e.$slots,`default`,u(f(t)))]),_:3},16))}}),ln=g({__name:`SheetOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(Ye),b({"data-slot":`sheet-overlay`,class:a(L)(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80`,t.class)},a(n)),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}}),un=g({inheritAttrs:!1,__name:`SheetContent`,props:{class:{},side:{default:`right`},forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=M(j(n,`class`,`side`),r);return(t,r)=>(m(),v(a(Je),null,{default:T(()=>[h(ln),h(a(Qe),b({"data-slot":`sheet-content`,class:a(L)(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500`,e.side===`right`&&`data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm`,e.side===`left`&&`data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm`,e.side===`top`&&`data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b`,e.side===`bottom`&&`data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t`,n.class)},{...t.$attrs,...a(i)}),{default:T(()=>[x(t.$slots,`default`),h(a(mt),{class:`ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none`},{default:T(()=>[h(a(zt),{class:`size-4`}),r[0]||=l(`span`,{class:`sr-only`},`Close`,-1)]),_:1})]),_:3},16,[`class`])]),_:3}))}}),dn=g({__name:`SheetDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(Xe),b({"data-slot":`sheet-description`,class:a(L)(`text-muted-foreground text-sm`,t.class)},a(n)),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}}),fn=g({__name:`SheetHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sheet-header`,class:y(a(L)(`flex flex-col gap-1.5 p-4`,t.class))},[x(e.$slots,`default`)],2))}}),pn=g({__name:`SheetTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(Ze),b({"data-slot":`sheet-title`,class:a(L)(`text-foreground font-semibold`,t.class)},a(n)),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}});const mn=`sidebar_state`,[hn,gn]=rt(`Sidebar`);var _n={class:`flex h-full w-full flex-col`},vn=[`data-state`,`data-collapsible`,`data-variant`,`data-side`],yn={"data-sidebar":`sidebar`,class:`bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm`},bn=g({inheritAttrs:!1,__name:`Sidebar`,props:{side:{default:`left`},variant:{default:`sidebar`},collapsible:{default:`offcanvas`},class:{}},setup(e){let t=e,{isMobile:n,state:i,openMobile:o,setOpenMobile:s}=hn();return(u,d)=>e.collapsible===`none`?(m(),r(`div`,b({key:0,"data-slot":`sidebar`,class:a(L)(`bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col`,t.class)},u.$attrs),[x(u.$slots,`default`)],16)):a(n)?(m(),v(a(cn),b({key:1,open:a(o)},u.$attrs,{"onUpdate:open":a(s)}),{default:T(()=>[h(a(un),{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,side:e.side,class:`bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden`,style:c({"--sidebar-width":a(`18rem`)})},{default:T(()=>[h(fn,{class:`sr-only`},{default:T(()=>[h(pn,null,{default:T(()=>[...d[0]||=[E(`Sidebar`,-1)]]),_:1}),h(dn,null,{default:T(()=>[...d[1]||=[E(`Displays the mobile sidebar.`,-1)]]),_:1})]),_:1}),l(`div`,_n,[x(u.$slots,`default`)])]),_:3},8,[`side`,`style`])]),_:3},16,[`open`,`onUpdate:open`])):(m(),r(`div`,{key:2,class:`group peer text-sidebar-foreground hidden md:block`,"data-slot":`sidebar`,"data-state":a(i),"data-collapsible":a(i)===`collapsed`?e.collapsible:``,"data-variant":e.variant,"data-side":e.side},[l(`div`,{class:y(a(L)(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,e.variant===`floating`||e.variant===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`))},null,2),l(`div`,b({class:a(L)(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex`,e.side===`left`?`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`:`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,e.variant===`floating`||e.variant===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,t.class)},u.$attrs),[l(`div`,yn,[x(u.$slots,`default`)])],16)],8,vn))}}),xn=g({__name:`SidebarContent`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,class:y(a(L)(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,t.class))},[x(e.$slots,`default`)],2))}}),Sn=g({__name:`SidebarFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,class:y(a(L)(`flex flex-col gap-2 p-2`,t.class))},[x(e.$slots,`default`)],2))}}),Cn=g({__name:`SidebarGroup`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,class:y(a(L)(`relative flex w-full min-w-0 flex-col p-2`,t.class))},[x(e.$slots,`default`)],2))}}),wn=g({__name:`SidebarHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,class:y(a(L)(`flex flex-col gap-2 p-2`,t.class))},[x(e.$slots,`default`)],2))}}),Tn=g({__name:`Input`,props:{defaultValue:{},modelValue:{},class:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,i=gt(n,`modelValue`,t,{passive:!0,defaultValue:n.defaultValue});return(e,t)=>de((m(),r(`input`,{"onUpdate:modelValue":t[0]||=e=>Ee(i)?i.value=e:null,"data-slot":`input`,class:y(a(L)(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,n.class))},null,2)),[[pe,a(i)]])}}),En=g({__name:`SidebarInset`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`main`,{"data-slot":`sidebar-inset`,class:y(a(L)(`bg-background relative flex w-full flex-1 flex-col`,`md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,t.class))},[x(e.$slots,`default`)],2))}}),Dn=g({__name:`SidebarMenu`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,class:y(a(L)(`flex w-full min-w-0 flex-col gap-1`,t.class))},[x(e.$slots,`default`)],2))}}),On=g({__name:`SidebarMenuBadge`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`sidebar-menu-badge`,"data-sidebar":`menu-badge`,class:y(a(L)(`text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,t.class))},[x(e.$slots,`default`)],2))}}),kn=g({__name:`Tooltip`,props:{defaultOpen:{type:Boolean},open:{type:Boolean},delayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=M(e,t);return(e,t)=>(m(),v(a(ot),b({"data-slot":`tooltip`},a(n)),{default:T(t=>[x(e.$slots,`default`,u(f(t)))]),_:3},16))}}),An=g({inheritAttrs:!1,__name:`TooltipContent`,props:{forceMount:{type:Boolean},ariaLabel:{},asChild:{type:Boolean},as:{},side:{},sideOffset:{default:4},align:{},alignOffset:{},avoidCollisions:{type:Boolean},collisionBoundary:{},collisionPadding:{},arrowPadding:{},sticky:{},hideWhenDetached:{type:Boolean},positionStrategy:{},updatePositionStrategy:{},class:{}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,r=t,i=M(j(n,`class`),r);return(e,t)=>(m(),v(a(st),null,{default:T(()=>[h(a(lt),b({"data-slot":`tooltip-content`},{...a(i),...e.$attrs},{class:a(L)(`bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit rounded-md px-3 py-1.5 text-xs text-balance`,n.class)}),{default:T(()=>[x(e.$slots,`default`),h(a(ct),{class:`bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]),_:3},16,[`class`])]),_:3}))}}),jn=g({__name:`TooltipTrigger`,props:{reference:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(m(),v(a(ut),b({"data-slot":`tooltip-trigger`},t),{default:T(()=>[x(e.$slots,`default`)]),_:3},16))}}),Mn=g({__name:`SidebarMenuButtonChild`,props:{variant:{default:`default`},size:{default:`default`},isActive:{type:Boolean},class:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return(n,r)=>(m(),v(a(nt),b({"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":e.size,"data-active":e.isActive,class:a(L)(a(Ln)({variant:e.variant,size:e.size}),t.class),as:e.as,"as-child":e.asChild},n.$attrs),{default:T(()=>[x(n.$slots,`default`)]),_:3},16,[`data-size`,`data-active`,`class`,`as`,`as-child`]))}}),Nn=g({inheritAttrs:!1,__name:`SidebarMenuButton`,props:{variant:{default:`default`},size:{default:`default`},isActive:{type:Boolean},class:{},asChild:{type:Boolean},as:{default:`button`},tooltip:{}},setup(e){let t=e,{isMobile:n,state:i}=hn(),s=j(t,`tooltip`);return(t,c)=>e.tooltip?(m(),v(a(kn),{key:1},{default:T(()=>[h(a(jn),{"as-child":``},{default:T(()=>[h(Mn,u(f({...a(s),...t.$attrs})),{default:T(()=>[x(t.$slots,`default`)]),_:3},16)]),_:3}),h(a(An),{side:`right`,align:`center`,hidden:a(i)!==`collapsed`||a(n)},{default:T(()=>[typeof e.tooltip==`string`?(m(),r(o,{key:0},[E(_(e.tooltip),1)],64)):(m(),v(ce(e.tooltip),{key:1}))]),_:1},8,[`hidden`])]),_:3})):(m(),v(Mn,u(b({key:0},{...a(s),...t.$attrs})),{default:T(()=>[x(t.$slots,`default`)]),_:3},16))}}),Pn=g({__name:`SidebarMenuItem`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,class:y(a(L)(`group/menu-item relative`,t.class))},[x(e.$slots,`default`)],2))}}),Fn=g({__name:`SidebarProvider`,props:{defaultOpen:{type:Boolean,default:!yt?.cookie.includes(`${mn}=false`)},open:{type:Boolean,default:void 0},class:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,i=vt(`(max-width: 768px)`),o=C(!1),s=gt(n,`open`,r,{defaultValue:n.defaultOpen??!1,passive:n.open===void 0});function c(e){s.value=e,document.cookie=`${mn}=${s.value}; path=/; max-age=604800`}function u(e){o.value=e}function f(){return i.value?u(!o.value):c(!s.value)}return _t(`keydown`,e=>{e.key===`b`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),f())}),gn({state:d(()=>s.value?`expanded`:`collapsed`),open:s,setOpen:c,isMobile:i,openMobile:o,setOpenMobile:u,toggleSidebar:f}),(e,t)=>(m(),v(a(it),{"delay-duration":0},{default:T(()=>[l(`div`,b({"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":a(`16rem`),"--sidebar-width-icon":a(`3rem`)},class:a(L)(`group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full`,n.class)},e.$attrs),[x(e.$slots,`default`)],16)]),_:3}))}}),In=g({__name:`SidebarTrigger`,props:{class:{}},setup(e){let t=e,{toggleSidebar:n}=hn();return(e,r)=>(m(),v(a(R),{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon`,class:y(a(L)(`h-7 w-7`,t.class)),onClick:a(n)},{default:T(()=>[h(a(Kt)),r[0]||=l(`span`,{class:`sr-only`},`Toggle Sidebar`,-1)]),_:1},8,[`class`,`onClick`]))}});const Ln=Ue(`peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});var Rn=g({__name:`ResourceIcon`,props:{type:{},size:{default:`md`}},setup(e){let t={metal:`bg-gradient-to-br from-slate-400 to-slate-600`,crystal:`bg-gradient-to-br from-cyan-400 to-blue-600`,deuterium:`bg-gradient-to-br from-green-400 to-emerald-600`,darkMatter:`bg-gradient-to-br from-purple-600 to-indigo-900`,energy:`bg-gradient-to-br from-yellow-400 to-orange-500`},n={sm:`w-3 h-3`,md:`w-4 h-4`,lg:`w-5 h-5`};return(i,a)=>(m(),r(`div`,{class:y([t[e.type],n[e.size],`rounded shadow-sm`])},null,2))}}),zn={key:0,class:`fixed inset-0 z-50 flex items-center justify-center`},Bn={class:`relative bg-card border rounded-lg shadow-lg p-6 max-w-md w-full mx-4 z-10`},Vn={class:`text-lg font-semibold mb-2`},Hn={class:`text-sm text-muted-foreground mb-6`},Un={class:`flex justify-end gap-3`},Wn=g({__name:`ConfirmDialog`,setup(e,{expose:t}){let{t:n}=I(),i=C(!1),o=C(null),s=e=>{o.value=e,i.value=!0},c=()=>{o.value&&o.value.onConfirm(),i.value=!1},u=()=>{i.value=!1};return t({show:s}),(e,t)=>(m(),v(ke,{to:`body`},[i.value?(m(),r(`div`,zn,[l(`div`,{class:`fixed inset-0 bg-black/50`,onClick:u}),l(`div`,Bn,[l(`h2`,Vn,_(o.value?.title),1),l(`p`,Hn,_(o.value?.message),1),l(`div`,Un,[h(a(R),{onClick:u,variant:`outline`},{default:T(()=>[E(_(a(n)(`common.cancel`)),1)]),_:1}),h(a(R),{onClick:c,variant:`default`},{default:T(()=>[E(_(a(n)(`common.confirm`)),1)]),_:1})])])])):D(``,!0)]))}}),Gn=g({__name:`Dialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=M(e,t);return(e,t)=>(m(),v(a(Ke),b({"data-slot":`dialog`},a(n)),{default:T(t=>[x(e.$slots,`default`,u(f(t)))]),_:3},16))}}),Kn=g({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(Ye),b({"data-slot":`dialog-overlay`},a(n),{class:a(L)(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80`,t.class)}),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}}),qn=g({inheritAttrs:!1,__name:`DialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{},showCloseButton:{type:Boolean,default:!0}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=M(j(n,`class`),r);return(t,r)=>(m(),v(a(Je),null,{default:T(()=>[h(Kn),h(a(Qe),b({"data-slot":`dialog-content`},{...t.$attrs,...a(i)},{class:a(L)(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,n.class)}),{default:T(()=>[x(t.$slots,`default`),e.showCloseButton?(m(),v(a(mt),{key:0,"data-slot":`dialog-close`,class:`ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`},{default:T(()=>[h(a(zt)),r[0]||=l(`span`,{class:`sr-only`},`Close`,-1)]),_:1})):D(``,!0)]),_:3},16,[`class`])]),_:3}))}}),B=g({__name:`DialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=tt(j(t,`class`));return(e,r)=>(m(),v(a(Xe),b({"data-slot":`dialog-description`},a(n),{class:a(L)(`text-muted-foreground text-sm`,t.class)}),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}}),V=g({__name:`DialogHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`dialog-header`,class:y(a(L)(`flex flex-col gap-2 text-center sm:text-left`,t.class))},[x(e.$slots,`default`)],2))}}),H=g({__name:`DialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=tt(j(t,`class`));return(e,r)=>(m(),v(a(Ze),b({"data-slot":`dialog-title`},a(n),{class:a(L)(`text-lg leading-none font-semibold`,t.class)}),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}});const Jn=A(`detailDialog`,{state:()=>({isOpen:!1,type:null,itemType:null,currentLevel:void 0}),actions:{openBuilding(e,t){this.isOpen=!0,this.type=`building`,this.itemType=e,this.currentLevel=t},openTechnology(e,t){this.isOpen=!0,this.type=`technology`,this.itemType=e,this.currentLevel=t},openShip(e){this.isOpen=!0,this.type=`ship`,this.itemType=e,this.currentLevel=void 0},openDefense(e){this.isOpen=!0,this.type=`defense`,this.itemType=e,this.currentLevel=void 0},close(){this.isOpen=!1,this.type=null,this.itemType=null,this.currentLevel=void 0}}});var Yn={"data-slot":`table-container`,class:`relative w-full overflow-auto`},Xn=g({__name:`Table`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,Yn,[l(`table`,{"data-slot":`table`,class:y(a(L)(`w-full caption-bottom text-sm`,t.class))},[x(e.$slots,`default`)],2)]))}}),Zn=g({__name:`TableBody`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`tbody`,{"data-slot":`table-body`,class:y(a(L)(`[&_tr:last-child]:border-0`,t.class))},[x(e.$slots,`default`)],2))}}),U=g({__name:`TableCell`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`td`,{"data-slot":`table-cell`,class:y(a(L)(`p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]`,t.class))},[x(e.$slots,`default`)],2))}}),W=g({__name:`TableRow`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`tr`,{"data-slot":`table-row`,class:y(a(L)(`hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors`,t.class))},[x(e.$slots,`default`)],2))}}),G=g({__name:`TableHead`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`th`,{"data-slot":`table-head`,class:y(a(L)(`text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]`,t.class))},[x(e.$slots,`default`)],2))}}),Qn=g({__name:`TableHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`thead`,{"data-slot":`table-header`,class:y(a(L)(`[&_tr]:border-b`,t.class))},[x(e.$slots,`default`)],2))}}),K=g({__name:`Card`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`card`,class:y(a(L)(`bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm`,t.class))},[x(e.$slots,`default`)],2))}}),q=g({__name:`CardContent`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`card-content`,class:y(a(L)(`px-6`,t.class))},[x(e.$slots,`default`)],2))}}),J=g({__name:`CardHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`div`,{"data-slot":`card-header`,class:y(a(L)(`@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6`,t.class))},[x(e.$slots,`default`)],2))}}),Y=g({__name:`CardTitle`,props:{class:{}},setup(e){let t=e;return(e,n)=>(m(),r(`h3`,{"data-slot":`card-title`,class:y(a(L)(`leading-none font-semibold`,t.class))},[x(e.$slots,`default`)],2))}}),$n={class:`cursor-pointer underline decoration-dotted underline-offset-4 touch-manipulation`},er={class:`font-mono text-sm`},X=g({__name:`NumberWithTooltip`,props:{value:{}},setup(e){let t=e,n=d(()=>t.value.toLocaleString()),r=d(()=>{let e=t.value;if(e<1e3)return e.toString();if(e<1e6){let t=e/1e3;return t%1==0?`${t}K`:`${t.toFixed(1)}K`}if(e<1e9){let t=e/1e6;return t%1==0?`${t}M`:`${t.toFixed(1)}M`}let n=e/1e9;return n%1==0?`${n}B`:`${n.toFixed(1)}B`});return(e,t)=>(m(),v(a(an),null,{default:T(()=>[h(a(sn),{"as-child":``},{default:T(()=>[l(`span`,$n,_(r.value),1)]),_:1}),h(a(on),{class:`w-auto p-2`,side:`top`,align:`center`},{default:T(()=>[l(`p`,er,_(n.value),1)]),_:1})]),_:1}))}});const Z=(e,t=2)=>e>=1e9?(e/1e9).toFixed(t)+`B`:e>=1e6?(e/1e6).toFixed(t)+`M`:e>=1e3?(e/1e3).toFixed(t)+`K`:Math.floor(e).toString(),tr=(e,t)=>{let n=e/t;return n>=1?`text-red-600 dark:text-red-400`:n>=.7?`text-yellow-600 dark:text-yellow-400`:``},Q=e=>{let t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60),i=Math.floor(e%60);return t>0?`${t}:${n.toString().padStart(2,`0`)}:${r.toString().padStart(2,`0`)}:${i.toString().padStart(2,`0`)}`:`${n.toString().padStart(2,`0`)}:${r.toString().padStart(2,`0`)}:${i.toString().padStart(2,`0`)}`},nr=e=>new Date(e).toLocaleString(`zh-CN`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`}),rr=(e,t)=>e{let e=n.currentLevel+10,t=[];for(let r=n.currentLevel;r<=e;r++)t.push(r);return t}),s=e=>{if(e===0)return{cost:{metal:0,crystal:0,deuterium:0},buildTime:0,production:0,consumption:0,points:0};let t=me(n.buildingType,e),r=O(n.buildingType,e),i=0,a=0;n.buildingType===`metalMine`?i=Math.floor(1500*e*1.5**e):n.buildingType===`crystalMine`?i=Math.floor(1e3*e*1.5**e):n.buildingType===`deuteriumSynthesizer`&&(i=Math.floor(500*e*1.5**e)),n.buildingType===`solarPlant`&&(i=Math.floor(50*e*1.1**e)),[`metalMine`,`crystalMine`,`deuteriumSynthesizer`].includes(n.buildingType)&&(a=Math.floor(10*e*1.1**e));let o=he(n.buildingType,e-1,e);return{cost:t,buildTime:r,production:i,consumption:a,points:o}},c=d(()=>{let e=0,t=0,n=0,r=0;for(let a of i.value){if(a===0)continue;let i=s(a);e+=i.cost.metal,t+=i.cost.crystal,n+=i.cost.deuterium,r+=i.points}return{metal:e,crystal:t,deuterium:n,points:r}});return(n,u)=>(m(),r(`div`,ir,[l(`div`,ar,[h(a(Xn),null,{default:T(()=>[h(a(Qn),null,{default:T(()=>[h(a(W),null,{default:T(()=>[h(a(G),{class:`w-20 text-center`},{default:T(()=>[E(_(a(t)(`buildings.levelRange`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.metal`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.crystal`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.deuterium`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`buildings.buildTime`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`buildings.production`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`buildings.consumption`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`player.points`)),1)]),_:1})]),_:1})]),_:1}),h(a(Zn),null,{default:T(()=>[(m(!0),r(o,null,p(i.value,n=>(m(),v(a(W),{key:n,class:y({"bg-muted/50":n===e.currentLevel})},{default:T(()=>[h(a(U),{class:`text-center font-medium`},{default:T(()=>[n===e.currentLevel?(m(),v(a(z),{key:0,variant:`default`},{default:T(()=>[E(_(n),1)]),_:2},1024)):(m(),r(`span`,or,_(n),1))]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(n).cost.metal},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(n).cost.crystal},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(n).cost.deuterium},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[E(_(a(Q)(s(n).buildTime)),1)]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[s(n).production>0?(m(),r(`span`,sr,[u[0]||=E(` + `,-1),h(X,{value:s(n).production},null,8,[`value`]),E(` /`+_(a(t)(`resources.perHour`)),1)])):(m(),r(`span`,cr,`-`))]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[s(n).consumption>0?(m(),r(`span`,lr,[u[1]||=E(` - `,-1),h(X,{value:s(n).consumption},null,8,[`value`])])):(m(),r(`span`,ur,`-`))]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[l(`span`,dr,[u[2]||=E(` + `,-1),h(X,{value:s(n).points},null,8,[`value`])])]),_:2},1024)]),_:2},1032,[`class`]))),128))]),_:1})]),_:1})]),l(`div`,fr,[h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`buildings.totalCost`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-2`},{default:T(()=>[l(`div`,pr,[l(`span`,mr,_(a(t)(`resources.metal`))+`:`,1),l(`span`,hr,[h(X,{value:c.value.metal},null,8,[`value`])])]),l(`div`,gr,[l(`span`,_r,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,vr,[h(X,{value:c.value.crystal},null,8,[`value`])])]),l(`div`,yr,[l(`span`,br,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,xr,[h(X,{value:c.value.deuterium},null,8,[`value`])])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`buildings.totalPoints`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Sr,[h(X,{value:c.value.points},null,8,[`value`])]),l(`p`,Cr,_(a(t)(`buildings.levelRange`))+`: `+_(Math.max(0,e.currentLevel-10))+` - `+_(Math.min(e.currentLevel+10,e.currentLevel+10)),1)]),_:1})]),_:1})])]))}}),Tr={class:`space-y-4`},Er={class:`border rounded-lg overflow-hidden`},Dr={key:1},Or={class:`text-primary font-medium`},kr={class:`grid grid-cols-2 gap-4`},Ar={class:`flex items-center justify-between text-sm`},jr={class:`text-muted-foreground`},Mr={class:`font-medium`},Nr={class:`flex items-center justify-between text-sm`},Pr={class:`text-muted-foreground`},Fr={class:`font-medium`},Ir={class:`flex items-center justify-between text-sm`},Lr={class:`text-muted-foreground`},Rr={class:`font-medium`},zr={class:`text-3xl font-bold text-primary`},Br={class:`text-xs text-muted-foreground mt-1`},Vr=g({__name:`TechnologyDetailView`,props:{technologyType:{},currentLevel:{}},setup(e){let{t}=I(),n=e,i=d(()=>{let e=n.currentLevel+10,t=[];for(let r=n.currentLevel;r<=e;r++)t.push(r);return t}),s=e=>e===0?{cost:{metal:0,crystal:0,deuterium:0},researchTime:0,points:0}:{cost:_e(n.technologyType,e),researchTime:S(n.technologyType,e-1),points:w(n.technologyType,e-1,e)},c=d(()=>{let e=0,t=0,n=0,r=0;for(let a of i.value){if(a===0)continue;let i=s(a);e+=i.cost.metal,t+=i.cost.crystal,n+=i.cost.deuterium,r+=i.points}return{metal:e,crystal:t,deuterium:n,points:r}});return(n,u)=>(m(),r(`div`,Tr,[l(`div`,Er,[h(a(Xn),null,{default:T(()=>[h(a(Qn),null,{default:T(()=>[h(a(W),null,{default:T(()=>[h(a(G),{class:`w-20 text-center`},{default:T(()=>[E(_(a(t)(`research.levelRange`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.metal`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.crystal`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`resources.deuterium`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`research.researchTime`)),1)]),_:1}),h(a(G),{class:`text-center`},{default:T(()=>[E(_(a(t)(`player.points`)),1)]),_:1})]),_:1})]),_:1}),h(a(Zn),null,{default:T(()=>[(m(!0),r(o,null,p(i.value,t=>(m(),v(a(W),{key:t,class:y({"bg-muted/50":t===e.currentLevel})},{default:T(()=>[h(a(U),{class:`text-center font-medium`},{default:T(()=>[t===e.currentLevel?(m(),v(a(z),{key:0,variant:`default`},{default:T(()=>[E(_(t),1)]),_:2},1024)):(m(),r(`span`,Dr,_(t),1))]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(t).cost.metal},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(t).cost.crystal},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[h(X,{value:s(t).cost.deuterium},null,8,[`value`])]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[E(_(a(Q)(s(t).researchTime)),1)]),_:2},1024),h(a(U),{class:`text-center text-sm`},{default:T(()=>[l(`span`,Or,[u[0]||=E(` + `,-1),h(X,{value:s(t).points},null,8,[`value`])])]),_:2},1024)]),_:2},1032,[`class`]))),128))]),_:1})]),_:1})]),l(`div`,kr,[h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`research.totalCost`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-2`},{default:T(()=>[l(`div`,Ar,[l(`span`,jr,_(a(t)(`resources.metal`))+`:`,1),l(`span`,Mr,[h(X,{value:c.value.metal},null,8,[`value`])])]),l(`div`,Nr,[l(`span`,Pr,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,Fr,[h(X,{value:c.value.crystal},null,8,[`value`])])]),l(`div`,Ir,[l(`span`,Lr,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,Rr,[h(X,{value:c.value.deuterium},null,8,[`value`])])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`research.totalPoints`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,zr,[h(X,{value:c.value.points},null,8,[`value`])]),l(`p`,Br,_(a(t)(`research.levelRange`))+`: `+_(Math.max(0,e.currentLevel-10))+` - `+_(Math.min(e.currentLevel+10,e.currentLevel+10)),1)]),_:1})]),_:1})])]))}}),Hr=g({__name:`Label`,props:{for:{},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=j(t,`class`);return(e,r)=>(m(),v(a(ft),b({"data-slot":`label`},a(n),{class:a(L)(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,t.class)}),{default:T(()=>[x(e.$slots,`default`)]),_:3},16,[`class`]))}}),Ur={class:`space-y-4`},Wr={class:`grid grid-cols-2 md:grid-cols-3 gap-4`},Gr={class:`text-2xl font-bold`},Kr={class:`text-2xl font-bold`},qr={class:`text-2xl font-bold`},Jr={class:`text-2xl font-bold`},Yr={class:`text-2xl font-bold`},Xr={class:`text-2xl font-bold`},Zr={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Qr={key:0,class:`flex items-center justify-between text-sm`},$r={class:`text-muted-foreground`},ei={class:`font-medium`},ti={key:1,class:`flex items-center justify-between text-sm`},ni={class:`text-muted-foreground`},ri={class:`font-medium`},ii={key:2,class:`flex items-center justify-between text-sm`},ai={class:`text-muted-foreground`},oi={class:`font-medium`},si={class:`flex items-center justify-between text-sm pt-2 border-t`},ci={class:`text-muted-foreground`},li={class:`font-bold text-primary`},ui={class:`text-3xl font-bold`},di={class:`text-xs text-muted-foreground mt-2`},fi={class:`flex items-center gap-4`},pi={class:`grid grid-cols-2 gap-4 pt-4 border-t`},mi={class:`space-y-2`},hi={class:`text-sm text-muted-foreground`},gi={class:`space-y-1 text-sm`},_i={class:`flex justify-between`},vi={class:`font-medium`},yi={class:`flex justify-between`},bi={class:`font-medium`},xi={class:`flex justify-between`},Si={class:`font-medium`},Ci={class:`space-y-2`},wi={class:`text-sm text-muted-foreground`},Ti={class:`text-xl font-bold`},Ei={class:`text-xs text-muted-foreground`},Di=g({__name:`ShipDetailView`,props:{shipType:{}},setup(e){let{t}=I(),n=e,i=d(()=>qt[n.shipType]),o=C(1),s=d(()=>be(n.shipType,1)),c=d(()=>({metal:i.value.cost.metal*o.value,crystal:i.value.cost.crystal*o.value,deuterium:i.value.cost.deuterium*o.value})),u=d(()=>be(n.shipType,o.value));return(e,n)=>(m(),r(`div`,Ur,[l(`div`,Wr,[h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Mt),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.attack`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Gr,[h(X,{value:i.value.attack},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Vt),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.shield`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Kr,[h(X,{value:i.value.shield},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Rt),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.armor`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,qr,[h(X,{value:i.value.armor},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Ut),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.speed`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Jr,[h(X,{value:i.value.speed},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(kt),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.cargoCapacity`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Yr,[h(X,{value:i.value.cargoCapacity},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Ot),{class:`h-4 w-4`}),E(` `+_(a(t)(`shipyard.fuelConsumption`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Xr,[h(X,{value:i.value.fuelConsumption},null,8,[`value`])])]),_:1})]),_:1})]),l(`div`,Zr,[h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`shipyard.buildCost`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-2`},{default:T(()=>[i.value.cost.metal>0?(m(),r(`div`,Qr,[l(`span`,$r,_(a(t)(`resources.metal`))+`:`,1),l(`span`,ei,[h(X,{value:i.value.cost.metal},null,8,[`value`])])])):D(``,!0),i.value.cost.crystal>0?(m(),r(`div`,ti,[l(`span`,ni,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,ri,[h(X,{value:i.value.cost.crystal},null,8,[`value`])])])):D(``,!0),i.value.cost.deuterium>0?(m(),r(`div`,ii,[l(`span`,ai,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,oi,[h(X,{value:i.value.cost.deuterium},null,8,[`value`])])])):D(``,!0),l(`div`,si,[l(`span`,ci,_(a(t)(`player.points`))+`:`,1),l(`span`,li,[h(X,{value:s.value},null,8,[`value`])])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`shipyard.buildTime`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,ui,_(a(Q)(i.value.buildTime)),1),l(`p`,di,_(a(t)(`shipyard.perUnit`)),1)]),_:1})]),_:1})]),h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`shipyard.batchCalculator`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-4`},{default:T(()=>[l(`div`,fi,[h(a(Hr),{class:`w-20`},{default:T(()=>[E(_(a(t)(`shipyard.quantity`))+`:`,1)]),_:1}),h(a(Tn),{modelValue:o.value,"onUpdate:modelValue":n[0]||=e=>o.value=e,modelModifiers:{number:!0},type:`number`,min:`1`,class:`flex-1`},null,8,[`modelValue`])]),l(`div`,pi,[l(`div`,mi,[l(`p`,hi,_(a(t)(`shipyard.totalCost`))+`:`,1),l(`div`,gi,[l(`div`,_i,[l(`span`,null,_(a(t)(`resources.metal`))+`:`,1),l(`span`,vi,[h(X,{value:c.value.metal},null,8,[`value`])])]),l(`div`,yi,[l(`span`,null,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,bi,[h(X,{value:c.value.crystal},null,8,[`value`])])]),l(`div`,xi,[l(`span`,null,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,Si,[h(X,{value:c.value.deuterium},null,8,[`value`])])])])]),l(`div`,Ci,[l(`p`,wi,_(a(t)(`shipyard.totalTime`))+`:`,1),l(`div`,Ti,_(a(Q)(i.value.buildTime*o.value)),1),l(`p`,Ei,[E(_(a(t)(`player.points`))+`: + `,1),h(X,{value:u.value},null,8,[`value`])])])])]),_:1})]),_:1})]))}}),Oi={class:`space-y-4`},ki={class:`grid grid-cols-2 md:grid-cols-3 gap-4`},Ai={class:`text-2xl font-bold`},ji={class:`text-2xl font-bold`},Mi={class:`text-2xl font-bold`},Ni={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Pi={key:0,class:`flex items-center justify-between text-sm`},Fi={class:`text-muted-foreground`},Ii={class:`font-medium`},Li={key:1,class:`flex items-center justify-between text-sm`},Ri={class:`text-muted-foreground`},zi={class:`font-medium`},Bi={key:2,class:`flex items-center justify-between text-sm`},Vi={class:`text-muted-foreground`},Hi={class:`font-medium`},Ui={class:`flex items-center justify-between text-sm pt-2 border-t`},Wi={class:`text-muted-foreground`},Gi={class:`font-bold text-primary`},Ki={class:`text-3xl font-bold`},qi={class:`text-xs text-muted-foreground mt-2`},Ji={class:`flex items-center gap-4`},Yi={class:`grid grid-cols-2 gap-4 pt-4 border-t`},Xi={class:`space-y-2`},Zi={class:`text-sm text-muted-foreground`},Qi={class:`space-y-1 text-sm`},$i={class:`flex justify-between`},ea={class:`font-medium`},ta={class:`flex justify-between`},na={class:`font-medium`},ra={class:`flex justify-between`},ia={class:`font-medium`},aa={class:`space-y-2`},oa={class:`text-sm text-muted-foreground`},sa={class:`text-xl font-bold`},ca={class:`text-xs text-muted-foreground`},la=g({__name:`DefenseDetailView`,props:{defenseType:{}},setup(e){let{t}=I(),n=e,i=d(()=>Jt[n.defenseType]),o=C(1),s=d(()=>Se(n.defenseType,1)),c=d(()=>({metal:i.value.cost.metal*o.value,crystal:i.value.cost.crystal*o.value,deuterium:i.value.cost.deuterium*o.value})),u=d(()=>Se(n.defenseType,o.value));return(e,n)=>(m(),r(`div`,Oi,[l(`div`,ki,[h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Mt),{class:`h-4 w-4`}),E(` `+_(a(t)(`defense.attack`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Ai,[h(X,{value:i.value.attack},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Vt),{class:`h-4 w-4`}),E(` `+_(a(t)(`defense.shield`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,ji,[h(X,{value:i.value.shield},null,8,[`value`])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),{class:`pb-3`},{default:T(()=>[h(a(Y),{class:`text-sm flex items-center gap-2`},{default:T(()=>[h(a(Rt),{class:`h-4 w-4`}),E(` `+_(a(t)(`defense.armor`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Mi,[h(X,{value:i.value.armor},null,8,[`value`])])]),_:1})]),_:1})]),l(`div`,Ni,[h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`defense.buildCost`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-2`},{default:T(()=>[i.value.cost.metal>0?(m(),r(`div`,Pi,[l(`span`,Fi,_(a(t)(`resources.metal`))+`:`,1),l(`span`,Ii,[h(X,{value:i.value.cost.metal},null,8,[`value`])])])):D(``,!0),i.value.cost.crystal>0?(m(),r(`div`,Li,[l(`span`,Ri,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,zi,[h(X,{value:i.value.cost.crystal},null,8,[`value`])])])):D(``,!0),i.value.cost.deuterium>0?(m(),r(`div`,Bi,[l(`span`,Vi,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,Hi,[h(X,{value:i.value.cost.deuterium},null,8,[`value`])])])):D(``,!0),l(`div`,Ui,[l(`span`,Wi,_(a(t)(`player.points`))+`:`,1),l(`span`,Gi,[h(X,{value:s.value},null,8,[`value`])])])]),_:1})]),_:1}),h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`defense.buildTime`)),1)]),_:1})]),_:1}),h(a(q),null,{default:T(()=>[l(`div`,Ki,_(a(Q)(i.value.buildTime)),1),l(`p`,qi,_(a(t)(`defense.perUnit`)),1)]),_:1})]),_:1})]),h(a(K),null,{default:T(()=>[h(a(J),null,{default:T(()=>[h(a(Y),{class:`text-sm`},{default:T(()=>[E(_(a(t)(`defense.batchCalculator`)),1)]),_:1})]),_:1}),h(a(q),{class:`space-y-4`},{default:T(()=>[l(`div`,Ji,[h(a(Hr),{class:`w-20`},{default:T(()=>[E(_(a(t)(`defense.quantity`))+`:`,1)]),_:1}),h(a(Tn),{modelValue:o.value,"onUpdate:modelValue":n[0]||=e=>o.value=e,modelModifiers:{number:!0},type:`number`,min:`1`,class:`flex-1`},null,8,[`modelValue`])]),l(`div`,Yi,[l(`div`,Xi,[l(`p`,Zi,_(a(t)(`defense.totalCost`))+`:`,1),l(`div`,Qi,[l(`div`,$i,[l(`span`,null,_(a(t)(`resources.metal`))+`:`,1),l(`span`,ea,[h(X,{value:c.value.metal},null,8,[`value`])])]),l(`div`,ta,[l(`span`,null,_(a(t)(`resources.crystal`))+`:`,1),l(`span`,na,[h(X,{value:c.value.crystal},null,8,[`value`])])]),l(`div`,ra,[l(`span`,null,_(a(t)(`resources.deuterium`))+`:`,1),l(`span`,ia,[h(X,{value:c.value.deuterium},null,8,[`value`])])])])]),l(`div`,aa,[l(`p`,oa,_(a(t)(`defense.totalTime`))+`:`,1),l(`div`,sa,_(a(Q)(i.value.buildTime*o.value)),1),l(`p`,ca,[E(_(a(t)(`player.points`))+`: + `,1),h(X,{value:u.value},null,8,[`value`])])])])]),_:1})]),_:1})]))}}),ua={class:`overflow-y-auto px-6 pb-6`},da={class:`overflow-y-auto px-6 pb-6`},fa={class:`overflow-y-auto px-6 pb-6`},pa={class:`overflow-y-auto px-6 pb-6`},ma=g({__name:`DetailDialog`,setup(e){let{t}=I(),n=Jn(),i=e=>{e||n.close()};return(e,s)=>(m(),v(a(Gn),{open:a(n).isOpen,"onUpdate:open":i},{default:T(()=>[h(a(qn),{class:`max-w-[calc(100%-1rem)] sm:max-w-[90vw] md:max-w-3xl lg:max-w-4xl max-h-[90vh] flex flex-col p-0`},{default:T(()=>[a(n).type===`building`&&a(n).itemType?(m(),r(o,{key:0},[h(a(V),{class:`px-6 pt-6 pb-4 shrink-0`},{default:T(()=>[h(a(H),{class:`flex items-center gap-2`},{default:T(()=>[E(_(a(t)(`buildings.${a(n).itemType}`))+` `,1),h(a(z),{variant:`outline`},{default:T(()=>[E(_(a(t)(`common.currentLevel`))+` `+_(a(n).currentLevel||0),1)]),_:1})]),_:1}),h(a(B),null,{default:T(()=>[E(_(a(t)(`buildingDescriptions.${a(n).itemType}`)),1)]),_:1})]),_:1}),l(`div`,ua,[h(wr,{buildingType:a(n).itemType,currentLevel:a(n).currentLevel||0},null,8,[`buildingType`,`currentLevel`])])],64)):a(n).type===`technology`&&a(n).itemType?(m(),r(o,{key:1},[h(a(V),{class:`px-6 pt-6 pb-4 shrink-0`},{default:T(()=>[h(a(H),{class:`flex items-center gap-2`},{default:T(()=>[E(_(a(t)(`technologies.${a(n).itemType}`))+` `,1),h(a(z),{variant:`outline`},{default:T(()=>[E(_(a(t)(`common.currentLevel`))+` `+_(a(n).currentLevel||0),1)]),_:1})]),_:1}),h(a(B),null,{default:T(()=>[E(_(a(t)(`technologyDescriptions.${a(n).itemType}`)),1)]),_:1})]),_:1}),l(`div`,da,[h(Vr,{technologyType:a(n).itemType,currentLevel:a(n).currentLevel||0},null,8,[`technologyType`,`currentLevel`])])],64)):a(n).type===`ship`&&a(n).itemType?(m(),r(o,{key:2},[h(a(V),{class:`px-6 pt-6 pb-4 shrink-0`},{default:T(()=>[h(a(H),null,{default:T(()=>[E(_(a(t)(`ships.${a(n).itemType}`)),1)]),_:1}),h(a(B),null,{default:T(()=>[E(_(a(t)(`shipDescriptions.${a(n).itemType}`)),1)]),_:1})]),_:1}),l(`div`,fa,[h(Di,{shipType:a(n).itemType},null,8,[`shipType`])])],64)):a(n).type===`defense`&&a(n).itemType?(m(),r(o,{key:3},[h(a(V),{class:`px-6 pt-6 pb-4 shrink-0`},{default:T(()=>[h(a(H),null,{default:T(()=>[E(_(a(t)(`defenses.${a(n).itemType}`)),1)]),_:1}),h(a(B),null,{default:T(()=>[E(_(a(t)(`defenseDescriptions.${a(n).itemType}`)),1)]),_:1})]),_:1}),l(`div`,pa,[h(la,{defenseType:a(n).itemType},null,8,[`defenseType`])])],64)):D(``,!0)]),_:1})]),_:1},8,[`open`]))}}),ha=g({__name:`Sonner`,props:{id:{},invert:{type:Boolean},theme:{},position:{},closeButtonPosition:{},hotkey:{},richColors:{type:Boolean},expand:{type:Boolean},duration:{},gap:{},visibleToasts:{},closeButton:{type:Boolean},toastOptions:{},class:{},style:{},offset:{},mobileOffset:{},dir:{},swipeDirections:{},icons:{},containerAriaLabel:{}},setup(e){let t=e;return(e,n)=>(m(),v(a(We),b({class:a(L)(`toaster group`,t.class),style:{"--normal-bg":`var(--popover)`,"--normal-text":`var(--popover-foreground)`,"--normal-border":`var(--border)`,"--border-radius":`var(--radius)`}},t),{"success-icon":T(()=>[h(a(xt),{class:`size-4`})]),"info-icon":T(()=>[h(a(bt),{class:`size-4`})]),"warning-icon":T(()=>[h(a(Bt),{class:`size-4`})]),"error-icon":T(()=>[h(a(St),{class:`size-4`})]),"loading-icon":T(()=>[l(`div`,null,[h(a(Dt),{class:`size-4 animate-spin`})])]),"close-icon":T(()=>[h(a(zt),{class:`size-4`})]),_:1},16,[`class`]))}});const ga=()=>{try{let e=P.name,t=`${P.name}-universe`,n=localStorage.getItem(e);if(!n)return;let r;try{r=Zt(n)}catch{try{r=JSON.parse(n)}catch{return}}if(!(r.universePlanets||r.debrisFields))return;let i={planets:{},debrisFields:{}};if(r.universePlanets){let e=r.universePlanets,t=r.player?.planets||[],n=new Set(t.map(e=>e.id));Object.entries(e).forEach(([e,t])=>{n.has(t.id)||(i.planets[e]=t)}),delete r.universePlanets}r.debrisFields&&(i.debrisFields=r.debrisFields,delete r.debrisFields),localStorage.setItem(t,Xt(i)),localStorage.setItem(e,Xt(r))}catch(e){console.error(e)}};var _a={class:`flex items-center justify-center p-4 group-data-[collapsible=icon]:p-2`},va={class:`text-xl font-bold ml-2 group-data-[collapsible=icon]:hidden`},ya={class:`px-4 py-3 space-y-2 text-sm`},ba={class:`font-semibold mb-1`},xa={class:`text-muted-foreground text-xs`},Sa={class:`bg-muted/50 rounded-lg p-2`},Ca={class:`flex items-center justify-between`},wa={class:`text-xs text-muted-foreground`},Ta={class:`text-sm font-bold text-primary`},Ea={key:0,class:`flex gap-1`},Da={class:`space-y-1`},Oa={class:`flex flex-col h-full overflow-hidden`},ka={key:0,class:`bg-card border-b px-4 sm:px-6 py-6.5 shadow-md`},Aa={class:`flex items-center justify-between gap-3 sm:gap-6`},ja={class:`lg:flex-1`},Ma={class:`flex items-center gap-3 sm:gap-6 flex-1 lg:flex-none overflow-x-auto lg:justify-center`},Na={class:`min-w-0`},Pa={class:`text-[10px] sm:text-xs text-muted-foreground truncate`},Fa={class:`flex items-center gap-2 sm:gap-4 flex-shrink-0 lg:flex-1 lg:justify-end`},Ia={key:0,class:`flex items-center gap-1.5 sm:gap-2 text-xs sm:text-sm`},La={class:`text-muted-foreground hidden sm:inline`},Ra={key:1,class:`flex items-center gap-1.5 sm:gap-2 text-xs sm:text-sm`},za={class:`text-muted-foreground hidden sm:inline`},Ba={key:1,class:`bg-card border-b px-4 sm:px-6 py-4.5`},Va={class:`space-y-3`},Ha={class:`flex items-center justify-between text-xs sm:text-sm gap-2`},Ua={class:`flex items-center gap-1.5 sm:gap-2 min-w-0 flex-1`},Wa={class:`font-medium truncate`},Ga={class:`text-muted-foreground hidden sm:inline flex-shrink-0 text-[10px] sm:text-xs`},Ka={class:`flex items-center gap-2 sm:gap-3 flex-shrink-0`},qa={class:`text-muted-foreground text-[10px] sm:text-xs whitespace-nowrap`},Ja={class:`flex items-center justify-between text-xs sm:text-sm gap-2`},Ya={class:`flex items-center gap-1.5 sm:gap-2 min-w-0 flex-1`},Xa={class:`font-medium truncate`},Za={class:`text-muted-foreground hidden sm:inline flex-shrink-0 text-[10px] sm:text-xs`},Qa={class:`flex items-center gap-2 sm:gap-3 flex-shrink-0`},$a={class:`text-muted-foreground text-[10px] sm:text-xs whitespace-nowrap`},eo={class:`flex-1 overflow-y-auto`},to={class:`animate-fade-in`},no=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(g({__name:`App`,setup(e){ga();let c=Qt(),u=$t(),{isDark:f}=en(),{t:g}=I(),b=C(null),x=[`zh-CN`,`zh-TW`,`en`,`de`,`ru`,`ko`,`ja`],S=C(window.innerWidth>=1024),de=async()=>{if(!ae(c.player.planets)){let e=Date.now(),n=Ce(c.player.officers,e);c.player.planets.forEach(r=>{t(r,e,n)}),pe();return}c.player=ne(c.player.id,g(`common.playerName`));let e=Te(c.player.id,g(`planet.homePlanet`));c.player.planets=[e],c.currentPlanetId=e.id},pe=()=>{for(let e=0;e<200;e++){let t=i(),n=Me(t.galaxy,t.system,t.position);if(u.planets[n])continue;let r=xe(e,t,g(`planet.planetPrefix`));u.planets[n]=r}},me=()=>{if(c.isPaused)return;let e=Date.now();c.gameTime=e,re(c.player.officers,e);let t=ie(c.player,e);c.player.researchQueue=t.updatedResearchQueue,c.player.fleetMissions.forEach(t=>{t.status===`outbound`&&e>=t.arrivalTime?he(t):t.status===`returning`&&t.returnTime&&e>=t.returnTime&&_e(t)})},he=async e=>{let t=Me(e.targetPosition.galaxy,e.targetPosition.system,e.targetPosition.position),n=c.player.planets.find(t=>t.position.galaxy===e.targetPosition.galaxy&&t.position.system===e.targetPosition.system&&t.position.position===e.targetPosition.position)||u.planets[t];if(e.missionType===N.Transport)Ae(e,n);else if(e.missionType===N.Attack){let t=await ve(e,n,c.player,null,c.player.planets);t&&(c.player.battleReports.push(t.battleResult),t.moon&&c.player.planets.push(t.moon),t.debrisField&&(u.debrisFields[t.debrisField.id]=t.debrisField))}else if(e.missionType===N.Colonize){let t=ge(e,n,c.player.id,g(`planet.colonyPrefix`));t&&c.player.planets.push(t)}else if(e.missionType===N.Spy){let t=fe(e,n,c.player.id);t&&c.player.spyReports.push(t)}else if(e.missionType===N.Deploy){if(ue(e,n,c.player.id)){let t=c.player.fleetMissions.indexOf(e);t>-1&&c.player.fleetMissions.splice(t,1);return}}else if(e.missionType===N.Recycle){let t=`debris_${e.targetPosition.galaxy}_${e.targetPosition.system}_${e.targetPosition.position}`,n=u.debrisFields[t],r=je(e,n);r&&n&&(r.remainingDebris&&(r.remainingDebris.metal>0||r.remainingDebris.crystal>0)?u.debrisFields[t]={id:n.id,position:n.position,resources:r.remainingDebris,createdAt:n.createdAt,expiresAt:n.expiresAt}:delete u.debrisFields[t])}else if(e.missionType===N.Destroy){let r=De(e,n,c.player);if(r&&r.success&&r.planetId){let e=c.player.planets.findIndex(e=>e.id===r.planetId);e>-1?c.player.planets.splice(e,1):delete u.planets[t]}}},_e=e=>{let t=c.player.planets.find(t=>t.id===e.originPlanetId);if(!t)return;ye(t.fleet,e.fleet),ee(t.resources,e.cargo);let n=c.player.fleetMissions.indexOf(e);n>-1&&c.player.fleetMissions.splice(n,1)},w=null;te(()=>{w&&clearInterval(w)}),oe(async()=>{c.player.planets.length===0&&(c.locale=He()),await de(),w=setInterval(()=>{me()},1e3)});let O=d(()=>c.currentPlanet),be=[{name:d(()=>g(`nav.overview`)),path:`/`,icon:Ft},{name:d(()=>g(`nav.buildings`)),path:`/buildings`,icon:Tt},{name:d(()=>g(`nav.research`)),path:`/research`,icon:wt},{name:d(()=>g(`nav.shipyard`)),path:`/shipyard`,icon:Nt},{name:d(()=>g(`nav.defense`)),path:`/defense`,icon:Vt},{name:d(()=>g(`nav.fleet`)),path:`/fleet`,icon:jt},{name:d(()=>g(`nav.officers`)),path:`/officers`,icon:Ht},{name:d(()=>g(`nav.simulator`)),path:`/battle-simulator`,icon:Lt},{name:d(()=>g(`nav.galaxy`)),path:`/galaxy`,icon:Et},{name:d(()=>g(`nav.messages`)),path:`/messages`,icon:Ct},{name:d(()=>g(`nav.settings`)),path:`/settings`,icon:Pt},...[]],Se=d(()=>{if(!O.value)return null;let e=Date.now(),t=Ce(c.player.officers,e);return se(O.value,{resourceProductionBonus:t.resourceProductionBonus,darkMatterProductionBonus:t.darkMatterProductionBonus,energyProductionBonus:t.energyProductionBonus})}),we=d(()=>{if(!O.value)return null;let e=Date.now(),t=Ce(c.player.officers,e);return le(O.value,t.storageCapacityBonus)}),Ee=d(()=>c.player.battleReports.filter(e=>!e.read).length+c.player.spyReports.filter(e=>!e.read).length),ke=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`energy`},{key:`darkMatter`}],k=d(()=>!O.value||O.value.isMoon?null:c.getMoonForPlanet(O.value.id)),Ne=d(()=>!!k.value),A=()=>{k.value&&(c.currentPlanetId=k.value.id)},Pe=()=>{O.value?.parentPlanetId&&(c.currentPlanetId=O.value.parentPlanetId)},Fe=()=>{S.value=!S.value},Le=e=>{if(e.type===`building`||e.type===`demolish`){let t=g(`buildings.${e.itemType}`);return e.type===`demolish`?`${g(`buildingsView.demolish`)} - ${t}`:t}else if(e.type===`technology`)return g(`technologies.${e.itemType}`);else if(e.type===`ship`)return g(`ships.${e.itemType}`);else if(e.type===`defense`)return g(`defenses.${e.itemType}`);return e.itemType},ze=e=>{let t=Date.now();return Math.max(0,Math.floor((e.endTime-t)/1e3))},Ve=e=>{let t=Date.now(),n=e.endTime-e.startTime,r=t-e.startTime;return Math.min(100,Math.max(0,r/n*100))},Ue=e=>{b.value?.show({title:g(`queue.cancelBuild`),message:g(`queue.confirmCancel`),onConfirm:()=>{if(!c.currentPlanet)return!1;let{item:t,index:r}=n(c.currentPlanet.buildQueue,e);if(!t)return!1;if(t.type===`building`){let e=s(c.currentPlanet,t);ee(c.currentPlanet.resources,e)}return c.currentPlanet.buildQueue.splice(r,1),!0}})},j=e=>{b.value?.show({title:g(`queue.cancelResearch`),message:g(`queue.confirmCancel`),onConfirm:()=>{if(!c.currentPlanet)return!1;let{item:t,index:r}=n(c.player.researchQueue,e);if(!t)return!1;if(t.type===`technology`){let e=Oe(t);ee(c.currentPlanet.resources,e)}return c.player.researchQueue.splice(r,1),!0}})};return(e,t)=>(m(),v(a(Fn),{open:S.value,"onUpdate:open":t[1]||=e=>S.value=e},{default:T(()=>[h(a(bn),{collapsible:`icon`},{default:T(()=>[h(a(wn),{class:`border-b`},{default:T(()=>[l(`div`,_a,[t[2]||=l(`img`,{src:``+new URL(`logo-Cz0cNqhe.svg`,import.meta.url).href,class:`w-10 group-data-[collapsible=icon]:w-8`},null,-1),l(`h1`,va,_(a(P).title),1)])]),_:1}),h(a(xn),null,{default:T(()=>[O.value?(m(),v(a(Cn),{key:0,class:`border-b group-data-[collapsible=icon]:hidden`},{default:T(()=>[l(`div`,ya,[l(`div`,null,[l(`p`,ba,[E(_(O.value.name)+` `,1),O.value.isMoon?(m(),v(a(z),{key:0,variant:`secondary`,class:`ml-1 text-xs`},{default:T(()=>[E(_(a(g)(`planet.moon`)),1)]),_:1})):D(``,!0)]),l(`p`,xa,` [`+_(O.value.position.galaxy)+`:`+_(O.value.position.system)+`:`+_(O.value.position.position)+`] `,1)]),l(`div`,Sa,[l(`div`,Ca,[l(`span`,wa,_(a(g)(`player.points`)),1),l(`span`,Ta,_(a(Z)(a(c).player.points)),1)])]),Ne.value||O.value.isMoon?(m(),r(`div`,Ea,[O.value.isMoon?(m(),v(a(R),{key:0,onClick:Pe,variant:`outline`,size:`sm`,class:`w-full text-xs h-7`},{default:T(()=>[E(_(a(g)(`planet.backToPlanet`)),1)]),_:1})):k.value?(m(),v(a(R),{key:1,onClick:A,variant:`outline`,size:`sm`,class:`w-full text-xs h-7`},{default:T(()=>[E(_(a(g)(`planet.switchToMoon`)),1)]),_:1})):D(``,!0)])):D(``,!0)])]),_:1})):D(``,!0),h(a(Cn),null,{default:T(()=>[h(a(Dn),null,{default:T(()=>[(m(),r(o,null,p(be,t=>h(a(Pn),{key:t.path},{default:T(()=>[h(a(Nn),{"as-child":``,"is-active":e.$route.path===t.path,tooltip:t.name.value},{default:T(()=>[h(a(Re),{to:t.path},{default:T(()=>[(m(),v(ce(t.icon))),l(`span`,null,_(t.name.value),1),t.path===`/messages`&&Ee.value>0?(m(),v(a(On),{key:0},{default:T(()=>[E(_(Ee.value),1)]),_:1})):D(``,!0)]),_:2},1032,[`to`])]),_:2},1032,[`is-active`,`tooltip`])]),_:2},1024)),64))]),_:1})]),_:1})]),_:1}),h(a(Sn),{class:`border-t`},{default:T(()=>[h(a(Dn),null,{default:T(()=>[h(a(Pn),null,{default:T(()=>[h(a(an),null,{default:T(()=>[h(a(sn),{"as-child":``},{default:T(()=>[h(a(Nn),{tooltip:a(Be)[a(c).locale]},{default:T(()=>[h(a(It)),l(`span`,null,_(a(Be)[a(c).locale]),1)]),_:1},8,[`tooltip`])]),_:1}),h(a(on),{class:`w-48 p-2`,side:`right`,align:`end`},{default:T(()=>[l(`div`,Da,[(m(),r(o,null,p(x,e=>h(a(R),{key:e,onClick:t=>a(c).locale=e,variant:a(c).locale===e?`secondary`:`ghost`,class:`w-full justify-start`,size:`sm`},{default:T(()=>[E(_(a(Be)[e]),1)]),_:2},1032,[`onClick`,`variant`])),64))])]),_:1})]),_:1})]),_:1}),h(a(Pn),null,{default:T(()=>[h(a(Nn),{onClick:t[0]||=e=>f.value=!a(f),tooltip:a(f)?a(g)(`sidebar.lightMode`):a(g)(`sidebar.darkMode`)},{default:T(()=>[a(f)?(m(),v(a(Wt),{key:0})):(m(),v(a(Gt),{key:1})),l(`span`,null,_(a(f)?a(g)(`sidebar.lightMode`):a(g)(`sidebar.darkMode`)),1)]),_:1},8,[`tooltip`])]),_:1}),h(a(Pn),{class:`hidden sm:inline`},{default:T(()=>[h(a(Nn),{onClick:Fe,tooltip:S.value?a(g)(`sidebar.collapse`):a(g)(`sidebar.expand`)},{default:T(()=>[h(a(At),{class:`group-data-[state=collapsed]:rotate-180 transition-transform`}),l(`span`,null,_(a(g)(`sidebar.collapse`)),1)]),_:1},8,[`tooltip`])]),_:1})]),_:1})]),_:1})]),_:1}),h(a(En),null,{default:T(()=>[l(`div`,Oa,[O.value?(m(),r(`header`,ka,[l(`div`,Aa,[l(`div`,ja,[h(a(In),{class:`lg:hidden`})]),l(`div`,Ma,[(m(),r(o,null,p(ke,e=>l(`div`,{key:e.key,class:`flex items-center gap-1.5 sm:gap-2 flex-shrink-0`},[h(Rn,{type:e.key,size:`md`},null,8,[`type`]),l(`div`,Na,[l(`p`,{class:y([`text-xs sm:text-sm font-medium truncate`,a(tr)(O.value.resources[e.key],we.value?.[e.key]||1/0)])},_(a(Z)(O.value.resources[e.key]))+` / `+_(a(Z)(we.value?.[e.key]||0)),3),l(`p`,Pa,` +`+_(a(Z)(Math.round((Se.value?.[e.key]||0)/60)))+`/`+_(a(g)(`resources.perMinute`)),1)])])),64))]),l(`div`,Fa,[O.value.buildQueue.length>0?(m(),r(`div`,Ia,[t[3]||=l(`div`,{class:`h-2 w-2 rounded-full bg-green-500 animate-pulse`},null,-1),l(`span`,La,_(a(g)(`queue.building`)),1)])):D(``,!0),a(c).player.researchQueue.length>0?(m(),r(`div`,Ra,[t[4]||=l(`div`,{class:`h-2 w-2 rounded-full bg-blue-500 animate-pulse`},null,-1),l(`span`,za,_(a(g)(`queue.researching`)),1)])):D(``,!0)])])])):D(``,!0),O.value&&(O.value.buildQueue.length>0||a(c).player.researchQueue.length>0)?(m(),r(`div`,Ba,[l(`div`,Va,[(m(!0),r(o,null,p(O.value.buildQueue,e=>(m(),r(`div`,{key:e.id,class:`space-y-1.5`},[l(`div`,Ha,[l(`div`,Ua,[t[5]||=l(`div`,{class:`h-2 w-2 rounded-full bg-green-500 animate-pulse flex-shrink-0`},null,-1),l(`span`,Wa,_(Le(e)),1),l(`span`,Ga,[e.type===`ship`||e.type===`defense`?(m(),r(o,{key:0},[E(` → `+_(a(g)(`queue.quantity`))+` `+_(e.quantity),1)],64)):(m(),r(o,{key:1},[E(`→ `+_(a(g)(`queue.level`))+` `+_(e.targetLevel),1)],64))])]),l(`div`,Ka,[l(`span`,qa,_(a(Q)(ze(e))),1),h(a(R),{onClick:t=>Ue(e.id),variant:`ghost`,size:`sm`,class:`h-5 sm:h-6 px-1.5 sm:px-2 text-[10px] sm:text-xs`},{default:T(()=>[E(_(a(g)(`queue.cancel`)),1)]),_:1},8,[`onClick`])])]),h(a(rn),{"model-value":Ve(e),class:`h-1.5`},null,8,[`model-value`])]))),128)),(m(!0),r(o,null,p(a(c).player.researchQueue,e=>(m(),r(`div`,{key:e.id,class:`space-y-1.5`},[l(`div`,Ja,[l(`div`,Ya,[t[6]||=l(`div`,{class:`h-2 w-2 rounded-full bg-blue-500 animate-pulse flex-shrink-0`},null,-1),l(`span`,Xa,_(Le(e)),1),l(`span`,Za,` → `+_(a(g)(`queue.level`))+` `+_(e.targetLevel),1)]),l(`div`,Qa,[l(`span`,$a,_(a(Q)(ze(e))),1),h(a(R),{onClick:t=>j(e.id),variant:`ghost`,size:`sm`,class:`h-5 sm:h-6 px-1.5 sm:px-2 text-[10px] sm:text-xs`},{default:T(()=>[E(_(a(g)(`queue.cancel`)),1)]),_:1},8,[`onClick`])])]),h(a(rn),{"model-value":Ve(e),class:`h-1.5`},null,8,[`model-value`])]))),128))])])):D(``,!0),l(`main`,eo,[l(`div`,to,[h(a(Ie))])])])]),_:1}),h(Wn,{ref_key:`confirmDialog`,ref:b},null,512),h(ma),h(ha,{position:`top-center`})]),_:1},8,[`open`]))}}),[[`__scopeId`,`data-v-784f12ab`]]),ro=`modulepreload`,io=function(e,t){return new URL(e,t).href},ao={};const $=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=io(t,n),t in ao)return;ao[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:ro,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};var oo=Le({history:Fe(),routes:[{path:`/`,name:`overview`,component:()=>$(()=>import(`./OverviewView-Eaupz5BG.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13]),import.meta.url)},{path:`/buildings`,name:`buildings`,component:()=>$(()=>import(`./BuildingsView-BQvU9Qow.js`),__vite__mapDeps([14,1,2,3,4,5,6,7,8,9,15,10,16,17,12,11,13]),import.meta.url)},{path:`/research`,name:`research`,component:()=>$(()=>import(`./ResearchView-B3XsR2nC.js`),__vite__mapDeps([18,1,2,3,4,5,6,7,8,9,15,10,19,16,17,12,20,11,13]),import.meta.url)},{path:`/shipyard`,name:`shipyard`,component:()=>$(()=>import(`./ShipyardView-CezaC9x_.js`),__vite__mapDeps([21,1,2,3,4,5,6,7,8,9,15,10,19,16,17,12,20,11,13]),import.meta.url)},{path:`/defense`,name:`defense`,component:()=>$(()=>import(`./DefenseView-DuI03pUa.js`),__vite__mapDeps([22,1,2,3,4,5,6,7,8,9,15,10,19,16,17,12,20,11,13]),import.meta.url)},{path:`/fleet`,name:`fleet`,component:()=>$(()=>import(`./FleetView-BBGER_SR.js`),__vite__mapDeps([23,1,2,3,4,5,6,7,8,9,15,10,19,16,20,11,12,13]),import.meta.url)},{path:`/officers`,name:`officers`,component:()=>$(()=>import(`./OfficersView-Dfgf1DR0.js`),__vite__mapDeps([24,1,2,3,4,5,6,7,8,9,10,16,11,12,13]),import.meta.url)},{path:`/battle-simulator`,name:`battle-simulator`,component:()=>$(()=>import(`./BattleSimulatorView-BDzc1XdU.js`),__vite__mapDeps([25,1,2,3,4,5,6,7,8,9,15,10,26,27,12,11,13]),import.meta.url)},{path:`/messages`,name:`messages`,component:()=>$(()=>import(`./MessagesView-DpnWNQDD.js`),__vite__mapDeps([28,1,2,3,4,5,6,7,8,9,15,10,26,27,12,11,13]),import.meta.url)},{path:`/galaxy`,name:`galaxy`,component:()=>$(()=>import(`./GalaxyView-TxzLJXed.js`),__vite__mapDeps([29,1,2,3,4,5,6,7,8,9,15,10,19,16,11,30,27,13]),import.meta.url)},{path:`/settings`,name:`settings`,component:()=>$(()=>import(`./SettingsView-C1jUcCe5.js`),__vite__mapDeps([31,1,2,3,4,5,6,7,8,9,15,10,11,13]),import.meta.url)},{path:`/gm`,name:`gm`,component:()=>$(()=>import(`./GMView-Cql_sk5m.js`),__vite__mapDeps([32,1,2,3,4,5,6,7,8,9,15,10,11,30,12,13]),import.meta.url),beforeEnter:(e,t,n)=>{n(`/`)}}]}),so=k(no),co=Ne();co.use(Pe),so.use(co),so.use(oo),so.mount(`#app`);export{z as A,Wn as C,kn as D,An as E,$t as F,Qt as I,P as L,R as M,L as N,Tn as O,I as P,Gn as S,jn as T,Jn as _,tr as a,B as b,J as c,Qn as d,G as f,Xn as g,Zn as h,Q as i,tn as j,rn as k,q as l,U as m,nr as n,rr as o,W as p,Z as r,Y as s,Hr as t,K as u,H as v,Rn as w,qn as x,V as y}; \ No newline at end of file diff --git a/docs/assets/index-Woj5fYlK.css b/docs/assets/index-Woj5fYlK.css new file mode 100644 index 0000000..60eec93 --- /dev/null +++ b/docs/assets/index-Woj5fYlK.css @@ -0,0 +1,2 @@ +/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */ +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:#fef2f2;--color-red-300:#ffa3a3;--color-red-400:#ff6568;--color-red-600:#e40014;--color-red-700:#bf000f;--color-red-950:#460809;--color-orange-500:#fe6e00;--color-amber-50:#fffbeb;--color-amber-200:#fee685;--color-amber-400:#fcbb00;--color-amber-700:#b75000;--color-amber-800:#953d00;--color-amber-950:#461901;--color-yellow-400:#fac800;--color-yellow-600:#cd8900;--color-green-50:#f0fdf4;--color-green-300:#7bf1a8;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-green-950:#032e15;--color-emerald-600:#009767;--color-cyan-400:#00d2ef;--color-blue-50:#eff6ff;--color-blue-300:#90c5ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-950:#162456;--color-indigo-900:#312c85;--color-purple-600:#9810fa;--color-slate-400:#90a1b9;--color-slate-600:#45556c;--color-gray-50:#f9fafb;--color-gray-300:#d1d5dc;--color-gray-700:#364153;--color-gray-950:#030712;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-50:lab(96.5005% 4.18511 1.52329);--color-red-300:lab(76.5514% 36.4219 15.5335);--color-red-400:lab(63.7053% 60.7449 31.3109);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-red-950:lab(13.003% 29.04 16.7519);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-amber-50:lab(98.6252% -.635982 8.42309);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-800:lab(37.8823% 37.1699 52.2718);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-600:lab(62.7799% 22.4198 86.1544);--color-green-50:lab(98.1563% -5.60117 2.75913);--color-green-300:lab(86.9953% -47.2691 25.0054);--color-green-400:lab(78.503% -64.9265 39.7492);--color-green-500:lab(70.5521% -66.5147 45.8072);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-green-700:lab(47.0329% -47.0239 31.4788);--color-green-950:lab(15.6845% -20.4225 11.7249);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-blue-50:lab(96.492% -1.14647 -5.11479);--color-blue-300:lab(77.5052% -6.4629 -36.42);--color-blue-400:lab(65.0361% -1.42062 -56.9803);--color-blue-500:lab(54.1736% 13.3368 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-blue-950:lab(15.6723% 8.86233 -32.2945);--color-indigo-900:lab(23.3911% 24.6978 -50.4719);--color-purple-600:lab(43.0295% 75.21 -86.5669);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-950:lab(1.90334% .278696 -5.48866)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}html{transition:background-color .3s,color .3s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background-color:#0000}::-webkit-scrollbar-thumb{border-radius:var(--radius);background-color:var(--border)}::-webkit-scrollbar-thumb:hover{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){::-webkit-scrollbar-thumb:hover{background-color:color-mix(in oklab,var(--muted-foreground)50%,transparent)}}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-3{top:calc(var(--spacing)*3)}.top-3\.5{top:calc(var(--spacing)*3.5)}.top-4{top:calc(var(--spacing)*4)}.top-\[50\%\]{top:50%}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-2{right:calc(var(--spacing)*2)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-6{left:calc(var(--spacing)*-6)}.left-0{left:calc(var(--spacing)*0)}.left-2{left:calc(var(--spacing)*2)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3\.5{margin-inline:calc(var(--spacing)*3.5)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-8{margin-block:calc(var(--spacing)*8)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-6{margin-left:calc(var(--spacing)*6)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.aspect-square{aspect-ratio:1}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-\[var\(--reka-select-trigger-height\)\]{height:var(--reka-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--reka-select-content-available-height\){max-height:var(--reka-select-content-available-height)}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-svh{min-height:100svh}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-20{width:calc(var(--spacing)*20)}.w-48{width:calc(var(--spacing)*48)}.w-72{width:calc(var(--spacing)*72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[calc\(100\%-1rem\)\]{max-width:calc(100% - 1rem)}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--reka-select-trigger-width\)\]{min-width:var(--reka-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\(--reka-popover-content-transform-origin\){transform-origin:var(--reka-popover-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-manipulation{touch-action:manipulation}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-amber-200{border-color:var(--color-amber-200)}.border-background{border-color:var(--background)}.border-blue-300{border-color:var(--color-blue-300)}.border-border{border-color:var(--border)}.border-destructive,.border-destructive\/50{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/50{border-color:color-mix(in oklab,var(--destructive)50%,transparent)}}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.bg-amber-50{background-color:var(--color-amber-50)}.bg-background,.bg-background\/70{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/70{background-color:color-mix(in oklab,var(--background)70%,transparent)}}.bg-background\/80{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/80{background-color:color-mix(in oklab,var(--background)80%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black)80%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-500{background-color:var(--color-green-500)}.bg-muted,.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.bg-red-50{background-color:var(--color-red-50)}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-cyan-400{--tw-gradient-from:var(--color-cyan-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-green-400{--tw-gradient-from:var(--color-green-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-purple-600{--tw-gradient-from:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-400{--tw-gradient-from:var(--color-slate-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-yellow-400{--tw-gradient-from:var(--color-yellow-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-600{--tw-gradient-to:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-indigo-900{--tw-gradient-to:var(--color-indigo-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-orange-500{--tw-gradient-to:var(--color-orange-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-600{--tw-gradient-to:var(--color-slate-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-foreground{fill:var(--foreground)}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-4\.5{padding-block:calc(var(--spacing)*4.5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-6\.5{padding-block:calc(var(--spacing)*6.5)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-6{padding-left:calc(var(--spacing)*6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-amber-700{color:var(--color-amber-700)}.text-background{color:var(--background)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-gray-700{color:var(--color-gray-700)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground)70%,transparent)}}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.paused{animation-play-state:paused}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing)*8)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing)*-8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)!important;height:calc(var(--spacing)*8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-8:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*0)!important}.group-data-\[collapsible\=icon\]\:p-2:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing)*0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing)*-4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing)*0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=collapsed\]\:rotate-180:is(:where(.group)[data-state=collapsed] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing)*1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing)*2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing)*1)}.selection\:bg-primary ::selection,.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection,.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing)*-2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:calc(var(--spacing)*0)}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing)*9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing)*2)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}@media (min-width:40rem){.sm\:col-span-1{grid-column:span 1/span 1}.sm\:mt-0{margin-top:calc(var(--spacing)*0)}.sm\:mb-2{margin-bottom:calc(var(--spacing)*2)}.sm\:mb-6{margin-bottom:calc(var(--spacing)*6)}.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:h-3{height:calc(var(--spacing)*3)}.sm\:h-4{height:calc(var(--spacing)*4)}.sm\:h-6{height:calc(var(--spacing)*6)}.sm\:w-4{width:calc(var(--spacing)*4)}.sm\:w-12{width:calc(var(--spacing)*12)}.sm\:max-w-\[90vw\]{max-width:90vw}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2{gap:calc(var(--spacing)*2)}.sm\:gap-3{gap:calc(var(--spacing)*3)}.sm\:gap-4{gap:calc(var(--spacing)*4)}.sm\:gap-6{gap:calc(var(--spacing)*6)}:where(.sm\:space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.sm\:space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:p-3{padding:calc(var(--spacing)*3)}.sm\:p-4{padding:calc(var(--spacing)*4)}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:px-2{padding-inline:calc(var(--spacing)*2)}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:w-full{width:100%}.md\:max-w-3xl{max-width:var(--container-3xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing)*2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing)*0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing)*2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (min-width:64rem){.lg\:hidden{display:none}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:flex-1{flex:1}.lg\:flex-none{flex:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:justify-center{justify-content:center}.lg\:justify-end{justify-content:flex-end}}.dark\:border-amber-800:is(.dark *){border-color:var(--color-amber-800)}.dark\:border-blue-700:is(.dark *){border-color:var(--color-blue-700)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-amber-950\/30:is(.dark *){background-color:#4619014d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-amber-950)30%,transparent)}}.dark\:bg-blue-950:is(.dark *){background-color:var(--color-blue-950)}.dark\:bg-blue-950\/20:is(.dark *){background-color:#16245633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-blue-950)20%,transparent)}}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-gray-950:is(.dark *){background-color:var(--color-gray-950)}.dark\:bg-green-950:is(.dark *){background-color:var(--color-green-950)}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-red-950:is(.dark *){background-color:var(--color-red-950)}.dark\:bg-red-950\/20:is(.dark *){background-color:#46080933}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-red-950)20%,transparent)}}.dark\:text-amber-400:is(.dark *){color:var(--color-amber-400)}.dark\:text-blue-300:is(.dark *){color:var(--color-blue-300)}.dark\:text-blue-400:is(.dark *){color:var(--color-blue-400)}.dark\:text-gray-300:is(.dark *){color:var(--color-gray-300)}.dark\:text-green-300:is(.dark *){color:var(--color-green-300)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-red-300:is(.dark *){color:var(--color-red-300)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-yellow-400:is(.dark *){color:var(--color-yellow-400)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]),.\[\&_svg\:not\(\[class\*\=\\\'size-\\\'\]\)\]\:size-4 svg:not([class*="'size-'"]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\\\'text-\\\'\]\)\]\:text-muted-foreground svg:not([class*="'text-'"]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing)*2)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing)*-2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing)*-2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary)90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:#fcfcfc;--foreground:#020618;--card:#fff;--card-foreground:#020618;--popover:#fff;--popover-foreground:#020618;--primary:#0f172b;--primary-foreground:#f8fafc;--secondary:#f1f5f9;--secondary-foreground:#0f172b;--muted:#f1f5f9;--muted-foreground:#62748e;--accent:#f1f5f9;--accent-foreground:#0f172b;--destructive:#e40014;--border:#e2e8f0;--input:#e2e8f0;--ring:#90a1b9;--chart-1:#f05100;--chart-2:#009588;--chart-3:#104e64;--chart-4:#fcbb00;--chart-5:#f99c00;--sidebar:#f8fafc;--sidebar-foreground:#020618;--sidebar-primary:#0f172b;--sidebar-primary-foreground:#f8fafc;--sidebar-accent:#f1f5f9;--sidebar-accent-foreground:#0f172b;--sidebar-border:#e2e8f0;--sidebar-ring:#90a1b9}@supports (color:lab(0% 0 0)){:root{--background:lab(98.84% 0 0);--foreground:lab(1.76974% 1.32743 -9.28855);--card:lab(100% 0 0);--card-foreground:lab(1.76974% 1.32743 -9.28855);--popover:lab(100% 0 0);--popover-foreground:lab(1.76974% 1.32743 -9.28855);--primary:lab(7.78673% 1.82346 -15.0537);--primary-foreground:lab(98.1434% -.369549 -1.05968);--secondary:lab(96.286% -.852466 -2.46847);--secondary-foreground:lab(7.78673% 1.82346 -15.0537);--muted:lab(96.286% -.852466 -2.46847);--muted-foreground:lab(48.0876% -2.03595 -16.5814);--accent:lab(96.286% -.852466 -2.46847);--accent-foreground:lab(7.78673% 1.82346 -15.0537);--destructive:lab(48.4493% 77.4328 61.5452);--border:lab(91.7353% -.998765 -4.76968);--input:lab(91.7353% -.998765 -4.76968);--ring:lab(65.5349% -2.25151 -14.5072);--chart-1:lab(57.1026% 64.2584 89.8886);--chart-2:lab(55.0223% -41.0774 -3.90277);--chart-3:lab(30.372% -13.1853 -18.7887);--chart-4:lab(80.1641% 16.6016 99.2089);--chart-5:lab(72.7183% 31.8672 97.9407);--sidebar:lab(98.1434% -.369549 -1.05968);--sidebar-foreground:lab(1.76974% 1.32743 -9.28855);--sidebar-primary:lab(7.78673% 1.82346 -15.0537);--sidebar-primary-foreground:lab(98.1434% -.369549 -1.05968);--sidebar-accent:lab(96.286% -.852466 -2.46847);--sidebar-accent-foreground:lab(7.78673% 1.82346 -15.0537);--sidebar-border:lab(91.7353% -.998765 -4.76968);--sidebar-ring:lab(65.5349% -2.25151 -14.5072)}}.dark{--background:#020307;--foreground:#f8fafc;--card:#070b14;--card-foreground:#f8fafc;--popover:#070b14;--popover-foreground:#f8fafc;--primary:#76aaed;--primary-foreground:#f8fafc;--secondary:#1b222e;--secondary-foreground:#f8fafc;--muted:#1b222e;--muted-foreground:#72839a;--accent:#1b222e;--accent-foreground:#f8fafc;--destructive:#dc414a;--border:#1b222e;--input:#1b222e;--ring:#6a7282;--chart-1:#1447e6;--chart-2:#00bb7f;--chart-3:#f99c00;--chart-4:#ac4bff;--chart-5:#ff2357;--sidebar:#070b14;--sidebar-foreground:#f8fafc;--sidebar-primary:#1447e6;--sidebar-primary-foreground:#f8fafc;--sidebar-accent:#1b222e;--sidebar-accent-foreground:#f8fafc;--sidebar-border:#1b222e;--sidebar-ring:#6a7282}@supports (color:lab(0% 0 0)){.dark{--background:lab(.879473% .0693277 -1.61465);--foreground:lab(98.1434% -.369549 -1.05968);--card:lab(2.98047% .150263 -4.74351);--card-foreground:lab(98.1434% -.369549 -1.05968);--popover:lab(2.98047% .150263 -4.74351);--popover-foreground:lab(98.1434% -.369549 -1.05968);--primary:lab(68.0384% -3.53837 -39.6946);--primary-foreground:lab(98.1434% -.369549 -1.05968);--secondary:lab(12.8805% -.587493 -9.04602);--secondary-foreground:lab(98.1434% -.369549 -1.05968);--muted:lab(12.8805% -.587493 -9.04602);--muted-foreground:lab(53.9284% -2.13248 -14.4608);--accent:lab(12.8805% -.587493 -9.04602);--accent-foreground:lab(98.1434% -.369549 -1.05968);--destructive:lab(52.0859% 60.8796 32.2468);--border:lab(12.8805% -.587493 -9.04602);--input:lab(12.8805% -.587493 -9.04602);--ring:lab(47.7841% -.393212 -10.0268);--chart-1:lab(36.9089% 35.0961 -85.6872);--chart-2:lab(66.9756% -58.27 19.5419);--chart-3:lab(72.7183% 31.8672 97.9407);--chart-4:lab(52.0183% 66.11 -78.2316);--chart-5:lab(56.101% 79.4329 31.4532);--sidebar:lab(2.98047% .150263 -4.74351);--sidebar-foreground:lab(98.1434% -.369549 -1.05968);--sidebar-primary:lab(36.9089% 35.0961 -85.6872);--sidebar-primary-foreground:lab(98.1434% -.369549 -1.05968);--sidebar-accent:lab(12.8805% -.587493 -9.04602);--sidebar-accent-foreground:lab(98.1434% -.369549 -1.05968);--sidebar-border:lab(12.8805% -.587493 -9.04602);--sidebar-ring:lab(47.7841% -.393212 -10.0268)}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out fade-in}aside nav a{transition:all .2s}aside nav a:hover button{transform:translate(4px)}@keyframes pulse-resource{0%,to{opacity:1}50%{opacity:.8}}.resource-pulse{animation:2s ease-in-out infinite pulse-resource}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}main[data-v-784f12ab]{scroll-behavior:smooth} diff --git a/docs/assets/useGameConfig-B5wf1i8i.js b/docs/assets/useGameConfig-B5wf1i8i.js new file mode 100644 index 0000000..addfd0d --- /dev/null +++ b/docs/assets/useGameConfig-B5wf1i8i.js @@ -0,0 +1 @@ +import{Et as e}from"./game-logic-CfBcTF_c.js";import{c as t,d as n,h as r,l as i,m as a,n as o,o as s,p as c,r as l,u}from"./game-config-D-D7cMgJ.js";import{P as d}from"./index-DWmvUlvu.js";const f=()=>{let{t:f}=d(),p={[u.MetalMine]:`metalMine`,[u.CrystalMine]:`crystalMine`,[u.DeuteriumSynthesizer]:`deuteriumSynthesizer`,[u.SolarPlant]:`solarPlant`,[u.RoboticsFactory]:`roboticsFactory`,[u.NaniteFactory]:`naniteFactory`,[u.Shipyard]:`shipyard`,[u.ResearchLab]:`researchLab`,[u.MetalStorage]:`metalStorage`,[u.CrystalStorage]:`crystalStorage`,[u.DeuteriumTank]:`deuteriumTank`,[u.DarkMatterCollector]:`darkMatterCollector`,[u.Terraformer]:`terraformer`,[u.LunarBase]:`lunarBase`,[u.SensorPhalanx]:`sensorPhalanx`,[u.JumpGate]:`jumpGate`,[u.PlanetDestroyerFactory]:`planetDestroyerFactory`},m={[a.LightFighter]:`lightFighter`,[a.HeavyFighter]:`heavyFighter`,[a.Cruiser]:`cruiser`,[a.Battleship]:`battleship`,[a.SmallCargo]:`smallCargo`,[a.LargeCargo]:`largeCargo`,[a.ColonyShip]:`colonyShip`,[a.Recycler]:`recycler`,[a.EspionageProbe]:`espionageProbe`,[a.DarkMatterHarvester]:`darkMatterHarvester`,[a.Deathstar]:`deathstar`},h={[n.RocketLauncher]:`rocketLauncher`,[n.LightLaser]:`lightLaser`,[n.HeavyLaser]:`heavyLaser`,[n.GaussCannon]:`gaussCannon`,[n.IonCannon]:`ionCannon`,[n.PlasmaTurret]:`plasmaTurret`,[n.SmallShieldDome]:`smallShieldDome`,[n.LargeShieldDome]:`largeShieldDome`,[n.PlanetaryShield]:`planetaryShield`},g={[r.EnergyTechnology]:`energyTechnology`,[r.LaserTechnology]:`laserTechnology`,[r.IonTechnology]:`ionTechnology`,[r.HyperspaceTechnology]:`hyperspaceTechnology`,[r.PlasmaTechnology]:`plasmaTechnology`,[r.ComputerTechnology]:`computerTechnology`,[r.CombustionDrive]:`combustionDrive`,[r.ImpulseDrive]:`impulseDrive`,[r.HyperspaceDrive]:`hyperspaceDrive`,[r.DarkMatterTechnology]:`darkMatterTechnology`,[r.TerraformingTechnology]:`terraformingTechnology`,[r.PlanetDestructionTech]:`planetDestructionTech`},_={[c.Commander]:`commander`,[c.Admiral]:`admiral`,[c.Engineer]:`engineer`,[c.Geologist]:`geologist`,[c.Technocrat]:`technocrat`,[c.DarkMatterSpecialist]:`darkMatterSpecialist`};return{BUILDINGS:e(()=>{let e={};for(let[t,n]of Object.entries(o)){let r=t,i=p[r];e[r]={...n,name:f(`buildings.${i}`),description:f(`buildingDescriptions.${i}`)}}return e}),SHIPS:e(()=>{let e={};for(let[n,r]of Object.entries(t)){let t=n,i=m[t];e[t]={...r,name:f(`ships.${i}`),description:f(`shipDescriptions.${i}`)}}return e}),DEFENSES:e(()=>{let e={};for(let[t,n]of Object.entries(l)){let r=t,i=h[r];e[r]={...n,name:f(`defenses.${i}`),description:f(`defenseDescriptions.${i}`)}}return e}),TECHNOLOGIES:e(()=>{let e={};for(let[t,n]of Object.entries(i)){let r=t,i=g[r];e[r]={...n,name:f(`technologies.${i}`),description:f(`technologyDescriptions.${i}`)}}return e}),OFFICERS:e(()=>{let e={};for(let[t,n]of Object.entries(s)){let r=t,i=_[r];e[r]={...n,name:f(`officers.${i}`),description:f(`officerDescriptions.${i}`)}}return e})}};export{f as t}; \ No newline at end of file diff --git a/docs/assets/vendor-crypto-Ce_BCn-h.js b/docs/assets/vendor-crypto-Ce_BCn-h.js new file mode 100644 index 0000000..4b02ccf --- /dev/null +++ b/docs/assets/vendor-crypto-Ce_BCn-h.js @@ -0,0 +1 @@ +import{a as e,i as t,n,r,t as i}from"./rolldown-runtime-tX5UdD3f.js";var a=r({Certificate:()=>G,Cipher:()=>K,Cipheriv:()=>ue,Decipher:()=>de,Decipheriv:()=>fe,DiffieHellman:()=>pe,DiffieHellmanGroup:()=>me,ECDH:()=>he,Hash:()=>ge,Hmac:()=>_e,KeyObject:()=>ve,Sign:()=>ye,Verify:()=>be,X509Certificate:()=>xe,checkPrime:()=>s,checkPrimeSync:()=>c,constants:()=>we,createCipheriv:()=>l,createDecipheriv:()=>u,createDiffieHellman:()=>d,createDiffieHellmanGroup:()=>f,createECDH:()=>p,createHash:()=>m,createHmac:()=>h,createPrivateKey:()=>g,createPublicKey:()=>_,createSecretKey:()=>v,createSign:()=>y,createVerify:()=>b,default:()=>ke,diffieHellman:()=>x,fips:()=>Ce,generateKey:()=>ee,generateKeyPair:()=>N,generateKeyPairSync:()=>P,generateKeySync:()=>te,generatePrime:()=>S,generatePrimeSync:()=>C,getCipherInfo:()=>T,getCiphers:()=>w,getCurves:()=>E,getDiffieHellman:()=>D,getFips:()=>W,getHashes:()=>O,getRandomValues:()=>De,hash:()=>le,hkdf:()=>k,hkdfSync:()=>A,pbkdf2:()=>j,pbkdf2Sync:()=>M,privateDecrypt:()=>F,privateEncrypt:()=>I,prng:()=>Oe,pseudoRandomBytes:()=>q,publicDecrypt:()=>ne,publicEncrypt:()=>L,randomBytes:()=>re,randomFill:()=>R,randomFillSync:()=>ie,randomInt:()=>z,randomUUID:()=>B,rng:()=>J,scrypt:()=>V,scryptSync:()=>H,secureHeapUsed:()=>Se,setEngine:()=>oe,setFips:()=>se,sign:()=>ae,subtle:()=>Ee,timingSafeEqual:()=>U,verify:()=>ce,webcrypto:()=>Te}),o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,N,P,ee,te,F,I,ne,L,re,R,ie,z,B,V,H,ae,oe,U,W,se,ce,le,G,K,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,De,Oe,q,J,ke,Ae=n((()=>{o=(Ae(),e(a)),s=o.checkPrime,c=o.checkPrimeSync,l=o.createCipheriv,u=o.createDecipheriv,d=o.createDiffieHellman,f=o.createDiffieHellmanGroup,p=o.createECDH,m=o.createHash,h=o.createHmac,g=o.createPrivateKey,_=o.createPublicKey,v=o.createSecretKey,y=o.createSign,b=o.createVerify,x=o.diffieHellman,S=o.generatePrime,C=o.generatePrimeSync,w=o.getCiphers,T=o.getCipherInfo,E=o.getCurves,D=o.getDiffieHellman,O=o.getHashes,k=o.hkdf,A=o.hkdfSync,j=o.pbkdf2,M=o.pbkdf2Sync,N=o.generateKeyPair,P=o.generateKeyPairSync,ee=o.generateKey,te=o.generateKeySync,F=o.privateDecrypt,I=o.privateEncrypt,ne=o.publicDecrypt,L=o.publicEncrypt,re=o.randomBytes,R=o.randomFill,ie=o.randomFillSync,z=o.randomInt,B=o.randomUUID,V=o.scrypt,H=o.scryptSync,ae=o.sign,oe=o.setEngine,U=o.timingSafeEqual,W=o.getFips,se=o.setFips,ce=o.verify,le=o.hash,G=o.Certificate,K=o.Cipher,ue=o.Cipheriv,de=o.Decipher,fe=o.Decipheriv,pe=o.DiffieHellman,me=o.DiffieHellmanGroup,he=o.ECDH,ge=o.Hash,_e=o.Hmac,ve=o.KeyObject,ye=o.Sign,be=o.Verify,xe=o.X509Certificate,Se=o.secureHeapUsed,Ce=o.fips,we=o.constants,Te=o.webcrypto,Ee=o.subtle,De=o.getRandomValues,Oe=o.prng,q=o.pseudoRandomBytes,J=o.rng,ke=o.default||o})),Y=i(((n,r)=>{(function(e,t){typeof n==`object`?r.exports=n=t():typeof define==`function`&&define.amd?define([],t):e.CryptoJS=t()})(n,function(){var n=n||function(n,r){var i;if(typeof window<`u`&&window.crypto&&(i=window.crypto),typeof self<`u`&&self.crypto&&(i=self.crypto),typeof globalThis<`u`&&globalThis.crypto&&(i=globalThis.crypto),!i&&typeof window<`u`&&window.msCrypto&&(i=window.msCrypto),!i&&typeof global<`u`&&global.crypto&&(i=global.crypto),!i&&typeof t==`function`)try{i=(Ae(),e(a))}catch{}var o=function(){if(i){if(typeof i.getRandomValues==`function`)try{return i.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof i.randomBytes==`function`)try{return i.randomBytes(4).readInt32LE()}catch{}}throw Error(`Native crypto module could not be used to get secure random number.`)},s=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),c={},l=c.lib={},u=l.Base=function(){return{extend:function(e){var t=s(this);return e&&t.mixIn(e),(!t.hasOwnProperty(`init`)||this.init===t.init)&&(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty(`toString`)&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),d=l.WordArray=u.extend({init:function(e,t){e=this.words=e||[],t==r?this.sigBytes=e.length*4:this.sigBytes=t},toString:function(e){return(e||p).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes,i=e.sigBytes;if(this.clamp(),r%4)for(var a=0;a>>2]>>>24-a%4*8&255;t[r+a>>>2]|=o<<24-(r+a)%4*8}else for(var s=0;s>>2]=n[s>>>2];return this.sigBytes+=i,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=n.ceil(t/4)},clone:function(){var e=u.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n>>2]>>>24-i%4*8&255;r.push((a>>>4).toString(16)),r.push((a&15).toString(16))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new d.init(n,t/2)}},m=f.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i>>2]>>>24-i%4*8&255;r.push(String.fromCharCode(a))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new d.init(n,t)}},h=f.Utf8={stringify:function(e){try{return decodeURIComponent(escape(m.stringify(e)))}catch{throw Error(`Malformed UTF-8 data`)}},parse:function(e){return m.parse(unescape(encodeURIComponent(e)))}},g=l.BufferedBlockAlgorithm=u.extend({reset:function(){this._data=new d.init,this._nDataBytes=0},_append:function(e){typeof e==`string`&&(e=h.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t,r=this._data,i=r.words,a=r.sigBytes,o=this.blockSize,s=a/(o*4);s=e?n.ceil(s):n.max((s|0)-this._minBufferSize,0);var c=s*o,l=n.min(c*4,a);if(c){for(var u=0;u{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.Base,a=r.WordArray,o=n.x64={};o.Word=i.extend({init:function(e,t){this.high=e,this.low=t}}),o.WordArray=i.extend({init:function(e,n){e=this.words=e||[],n==t?this.sigBytes=e.length*8:this.sigBytes=n},toX32:function(){for(var e=this.words,t=e.length,n=[],r=0;r{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){if(typeof ArrayBuffer==`function`){var t=e.lib.WordArray,n=t.init,r=t.init=function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),(e instanceof Int8Array||typeof Uint8ClampedArray<`u`&&e instanceof Uint8ClampedArray||e instanceof Int16Array||e instanceof Uint16Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array)&&(e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),e instanceof Uint8Array){for(var t=e.byteLength,r=[],i=0;i>>2]|=e[i]<<24-i%4*8;n.call(this,r,t)}else n.apply(this,arguments)};r.prototype=t}})(),e.lib.WordArray})})),Ne=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.enc;r.Utf16=r.Utf16BE={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i>>2]>>>16-i%4*8&65535;r.push(String.fromCharCode(a))}return r.join(``)},parse:function(e){for(var t=e.length,r=[],i=0;i>>1]|=e.charCodeAt(i)<<16-i%2*16;return n.create(r,t*2)}},r.Utf16LE={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],a=0;a>>2]>>>16-a%4*8&65535);r.push(String.fromCharCode(o))}return r.join(``)},parse:function(e){for(var t=e.length,r=[],a=0;a>>1]|=i(e.charCodeAt(a)<<16-a%2*16);return n.create(r,t*2)}};function i(e){return e<<8&4278255360|e>>>8&16711935}})(),e.enc.Utf16})})),X=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.enc;r.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,r=this._map;e.clamp();for(var i=[],a=0;a>>2]>>>24-a%4*8&255,s=t[a+1>>>2]>>>24-(a+1)%4*8&255,c=t[a+2>>>2]>>>24-(a+2)%4*8&255,l=o<<16|s<<8|c,u=0;u<4&&a+u*.75>>6*(3-u)&63));var d=r.charAt(64);if(d)for(;i.length%4;)i.push(d);return i.join(``)},parse:function(e){var t=e.length,n=this._map,r=this._reverseMap;if(!r){r=this._reverseMap=[];for(var a=0;a>>6-o%4*2;i[a>>>2]|=s<<24-a%4*8,a++}return n.create(i,a)}})(),e.enc.Base64})})),Pe=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.enc;r.Base64url={stringify:function(e,t){t===void 0&&(t=!0);var n=e.words,r=e.sigBytes,i=t?this._safe_map:this._map;e.clamp();for(var a=[],o=0;o>>2]>>>24-o%4*8&255,c=n[o+1>>>2]>>>24-(o+1)%4*8&255,l=n[o+2>>>2]>>>24-(o+2)%4*8&255,u=s<<16|c<<8|l,d=0;d<4&&o+d*.75>>6*(3-d)&63));var f=i.charAt(64);if(f)for(;a.length%4;)a.push(f);return a.join(``)},parse:function(e,t){t===void 0&&(t=!0);var n=e.length,r=t?this._safe_map:this._map,a=this._reverseMap;if(!a){a=this._reverseMap=[];for(var o=0;o>>6-o%4*2;i[a>>>2]|=s<<24-a%4*8,a++}return n.create(i,a)}})(),e.enc.Base64url})})),Z=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.algo,s=[];(function(){for(var e=0;e<64;e++)s[e]=t.abs(t.sin(e+1))*4294967296|0})();var c=o.MD5=a.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=t+n,i=e[r];e[r]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var a=this._hash.words,o=e[t+0],c=e[t+1],p=e[t+2],m=e[t+3],h=e[t+4],g=e[t+5],_=e[t+6],v=e[t+7],y=e[t+8],b=e[t+9],x=e[t+10],S=e[t+11],C=e[t+12],w=e[t+13],T=e[t+14],E=e[t+15],D=a[0],O=a[1],k=a[2],A=a[3];D=l(D,O,k,A,o,7,s[0]),A=l(A,D,O,k,c,12,s[1]),k=l(k,A,D,O,p,17,s[2]),O=l(O,k,A,D,m,22,s[3]),D=l(D,O,k,A,h,7,s[4]),A=l(A,D,O,k,g,12,s[5]),k=l(k,A,D,O,_,17,s[6]),O=l(O,k,A,D,v,22,s[7]),D=l(D,O,k,A,y,7,s[8]),A=l(A,D,O,k,b,12,s[9]),k=l(k,A,D,O,x,17,s[10]),O=l(O,k,A,D,S,22,s[11]),D=l(D,O,k,A,C,7,s[12]),A=l(A,D,O,k,w,12,s[13]),k=l(k,A,D,O,T,17,s[14]),O=l(O,k,A,D,E,22,s[15]),D=u(D,O,k,A,c,5,s[16]),A=u(A,D,O,k,_,9,s[17]),k=u(k,A,D,O,S,14,s[18]),O=u(O,k,A,D,o,20,s[19]),D=u(D,O,k,A,g,5,s[20]),A=u(A,D,O,k,x,9,s[21]),k=u(k,A,D,O,E,14,s[22]),O=u(O,k,A,D,h,20,s[23]),D=u(D,O,k,A,b,5,s[24]),A=u(A,D,O,k,T,9,s[25]),k=u(k,A,D,O,m,14,s[26]),O=u(O,k,A,D,y,20,s[27]),D=u(D,O,k,A,w,5,s[28]),A=u(A,D,O,k,p,9,s[29]),k=u(k,A,D,O,v,14,s[30]),O=u(O,k,A,D,C,20,s[31]),D=d(D,O,k,A,g,4,s[32]),A=d(A,D,O,k,y,11,s[33]),k=d(k,A,D,O,S,16,s[34]),O=d(O,k,A,D,T,23,s[35]),D=d(D,O,k,A,c,4,s[36]),A=d(A,D,O,k,h,11,s[37]),k=d(k,A,D,O,v,16,s[38]),O=d(O,k,A,D,x,23,s[39]),D=d(D,O,k,A,w,4,s[40]),A=d(A,D,O,k,o,11,s[41]),k=d(k,A,D,O,m,16,s[42]),O=d(O,k,A,D,_,23,s[43]),D=d(D,O,k,A,b,4,s[44]),A=d(A,D,O,k,C,11,s[45]),k=d(k,A,D,O,E,16,s[46]),O=d(O,k,A,D,p,23,s[47]),D=f(D,O,k,A,o,6,s[48]),A=f(A,D,O,k,v,10,s[49]),k=f(k,A,D,O,T,15,s[50]),O=f(O,k,A,D,g,21,s[51]),D=f(D,O,k,A,C,6,s[52]),A=f(A,D,O,k,m,10,s[53]),k=f(k,A,D,O,x,15,s[54]),O=f(O,k,A,D,c,21,s[55]),D=f(D,O,k,A,y,6,s[56]),A=f(A,D,O,k,E,10,s[57]),k=f(k,A,D,O,_,15,s[58]),O=f(O,k,A,D,w,21,s[59]),D=f(D,O,k,A,h,6,s[60]),A=f(A,D,O,k,S,10,s[61]),k=f(k,A,D,O,p,15,s[62]),O=f(O,k,A,D,b,21,s[63]),a[0]=a[0]+D|0,a[1]=a[1]+O|0,a[2]=a[2]+k|0,a[3]=a[3]+A|0},_doFinalize:function(){var e=this._data,n=e.words,r=this._nDataBytes*8,i=e.sigBytes*8;n[i>>>5]|=128<<24-i%32;var a=t.floor(r/4294967296),o=r;n[(i+64>>>9<<4)+15]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360,n[(i+64>>>9<<4)+14]=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,e.sigBytes=(n.length+1)*4,this._process();for(var s=this._hash,c=s.words,l=0;l<4;l++){var u=c[l];c[l]=(u<<8|u>>>24)&16711935|(u<<24|u>>>8)&4278255360}return s},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});function l(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+i+o;return(s<>>32-a)+t}function u(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+i+o;return(s<>>32-a)+t}function d(e,t,n,r,i,a,o){var s=e+(t^n^r)+i+o;return(s<>>32-a)+t}function f(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+i+o;return(s<>>32-a)+t}n.MD5=a._createHelper(c),n.HmacMD5=a._createHmacHelper(c)})(Math),e.MD5})})),Fe=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.WordArray,i=n.Hasher,a=t.algo,o=[],s=a.SHA1=i.extend({_doReset:function(){this._hash=new r.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],s=n[3],c=n[4],l=0;l<80;l++){if(l<16)o[l]=e[t+l]|0;else{var u=o[l-3]^o[l-8]^o[l-14]^o[l-16];o[l]=u<<1|u>>>31}var d=(r<<5|r>>>27)+c+o[l];l<20?d+=(i&a|~i&s)+1518500249:l<40?d+=(i^a^s)+1859775393:l<60?d+=(i&a|i&s|a&s)-1894007588:d+=(i^a^s)-899497514,c=s,s=a,a=i<<30|i>>>2,i=r,r=d}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+s|0,n[4]=n[4]+c|0},_doFinalize:function(){var e=this._data,t=e.words,n=this._nDataBytes*8,r=e.sigBytes*8;return t[r>>>5]|=128<<24-r%32,t[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),t[(r+64>>>9<<4)+15]=n,e.sigBytes=t.length*4,this._process(),this._hash},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA1=i._createHelper(s),t.HmacSHA1=i._createHmacHelper(s)})(),e.SHA1})})),Ie=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.algo,s=[],c=[];(function(){function e(e){for(var n=t.sqrt(e),r=2;r<=n;r++)if(!(e%r))return!1;return!0}function n(e){return(e-(e|0))*4294967296|0}for(var r=2,i=0;i<64;)e(r)&&(i<8&&(s[i]=n(t.pow(r,1/2))),c[i]=n(t.pow(r,1/3)),i++),r++})();var l=[],u=o.SHA256=a.extend({_doReset:function(){this._hash=new i.init(s.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],o=n[3],s=n[4],u=n[5],d=n[6],f=n[7],p=0;p<64;p++){if(p<16)l[p]=e[t+p]|0;else{var m=l[p-15],h=(m<<25|m>>>7)^(m<<14|m>>>18)^m>>>3,g=l[p-2],_=(g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10;l[p]=h+l[p-7]+_+l[p-16]}var v=s&u^~s&d,y=r&i^r&a^i&a,b=(r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22),x=(s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25),S=f+x+v+c[p]+l[p],C=b+y;f=d,d=u,u=s,s=o+S|0,o=a,a=i,i=r,r=S+C|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+o|0,n[4]=n[4]+s|0,n[5]=n[5]+u|0,n[6]=n[6]+d|0,n[7]=n[7]+f|0},_doFinalize:function(){var e=this._data,n=e.words,r=this._nDataBytes*8,i=e.sigBytes*8;return n[i>>>5]|=128<<24-i%32,n[(i+64>>>9<<4)+14]=t.floor(r/4294967296),n[(i+64>>>9<<4)+15]=r,e.sigBytes=n.length*4,this._process(),this._hash},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});n.SHA256=a._createHelper(u),n.HmacSHA256=a._createHmacHelper(u)})(Math),e.SHA256})})),Le=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ie()):typeof define==`function`&&define.amd?define([`./core`,`./sha256`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.algo,i=r.SHA256,a=r.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var e=i._doFinalize.call(this);return e.sigBytes-=4,e}});t.SHA224=i._createHelper(a),t.HmacSHA224=i._createHmacHelper(a)})(),e.SHA224})})),Re=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),je()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.Hasher,r=t.x64,i=r.Word,a=r.WordArray,o=t.algo;function s(){return i.create.apply(i,arguments)}var c=[s(1116352408,3609767458),s(1899447441,602891725),s(3049323471,3964484399),s(3921009573,2173295548),s(961987163,4081628472),s(1508970993,3053834265),s(2453635748,2937671579),s(2870763221,3664609560),s(3624381080,2734883394),s(310598401,1164996542),s(607225278,1323610764),s(1426881987,3590304994),s(1925078388,4068182383),s(2162078206,991336113),s(2614888103,633803317),s(3248222580,3479774868),s(3835390401,2666613458),s(4022224774,944711139),s(264347078,2341262773),s(604807628,2007800933),s(770255983,1495990901),s(1249150122,1856431235),s(1555081692,3175218132),s(1996064986,2198950837),s(2554220882,3999719339),s(2821834349,766784016),s(2952996808,2566594879),s(3210313671,3203337956),s(3336571891,1034457026),s(3584528711,2466948901),s(113926993,3758326383),s(338241895,168717936),s(666307205,1188179964),s(773529912,1546045734),s(1294757372,1522805485),s(1396182291,2643833823),s(1695183700,2343527390),s(1986661051,1014477480),s(2177026350,1206759142),s(2456956037,344077627),s(2730485921,1290863460),s(2820302411,3158454273),s(3259730800,3505952657),s(3345764771,106217008),s(3516065817,3606008344),s(3600352804,1432725776),s(4094571909,1467031594),s(275423344,851169720),s(430227734,3100823752),s(506948616,1363258195),s(659060556,3750685593),s(883997877,3785050280),s(958139571,3318307427),s(1322822218,3812723403),s(1537002063,2003034995),s(1747873779,3602036899),s(1955562222,1575990012),s(2024104815,1125592928),s(2227730452,2716904306),s(2361852424,442776044),s(2428436474,593698344),s(2756734187,3733110249),s(3204031479,2999351573),s(3329325298,3815920427),s(3391569614,3928383900),s(3515267271,566280711),s(3940187606,3454069534),s(4118630271,4000239992),s(116418474,1914138554),s(174292421,2731055270),s(289380356,3203993006),s(460393269,320620315),s(685471733,587496836),s(852142971,1086792851),s(1017036298,365543100),s(1126000580,2618297676),s(1288033470,3409855158),s(1501505948,4234509866),s(1607167915,987167468),s(1816402316,1246189591)],l=[];(function(){for(var e=0;e<80;e++)l[e]=s()})();var u=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],o=n[3],s=n[4],u=n[5],d=n[6],f=n[7],p=r.high,m=r.low,h=i.high,g=i.low,_=a.high,v=a.low,y=o.high,b=o.low,x=s.high,S=s.low,C=u.high,w=u.low,T=d.high,E=d.low,D=f.high,O=f.low,k=p,A=m,j=h,M=g,N=_,P=v,ee=y,te=b,F=x,I=S,ne=C,L=w,re=T,R=E,ie=D,z=O,B=0;B<80;B++){var V,H,ae=l[B];if(B<16)H=ae.high=e[t+B*2]|0,V=ae.low=e[t+B*2+1]|0;else{var oe=l[B-15],U=oe.high,W=oe.low,se=(U>>>1|W<<31)^(U>>>8|W<<24)^U>>>7,ce=(W>>>1|U<<31)^(W>>>8|U<<24)^(W>>>7|U<<25),le=l[B-2],G=le.high,K=le.low,ue=(G>>>19|K<<13)^(G<<3|K>>>29)^G>>>6,de=(K>>>19|G<<13)^(K<<3|G>>>29)^(K>>>6|G<<26),fe=l[B-7],pe=fe.high,me=fe.low,he=l[B-16],ge=he.high,_e=he.low;V=ce+me,H=se+pe+(V>>>0>>0?1:0),V+=de,H=H+ue+(V>>>0>>0?1:0),V+=_e,H=H+ge+(V>>>0<_e>>>0?1:0),ae.high=H,ae.low=V}var ve=F&ne^~F&re,ye=I&L^~I&R,be=k&j^k&N^j&N,xe=A&M^A&P^M&P,Se=(k>>>28|A<<4)^(k<<30|A>>>2)^(k<<25|A>>>7),Ce=(A>>>28|k<<4)^(A<<30|k>>>2)^(A<<25|k>>>7),we=(F>>>14|I<<18)^(F>>>18|I<<14)^(F<<23|I>>>9),Te=(I>>>14|F<<18)^(I>>>18|F<<14)^(I<<23|F>>>9),Ee=c[B],De=Ee.high,Oe=Ee.low,q=z+Te,J=ie+we+(q>>>0>>0?1:0),q=q+ye,J=J+ve+(q>>>0>>0?1:0),q=q+Oe,J=J+De+(q>>>0>>0?1:0),q=q+V,J=J+H+(q>>>0>>0?1:0),ke=Ce+xe,Ae=Se+be+(ke>>>0>>0?1:0);ie=re,z=R,re=ne,R=L,ne=F,L=I,I=te+q|0,F=ee+J+(I>>>0>>0?1:0)|0,ee=N,te=P,N=j,P=M,j=k,M=A,A=q+ke|0,k=J+Ae+(A>>>0>>0?1:0)|0}m=r.low=m+A,r.high=p+k+(m>>>0>>0?1:0),g=i.low=g+M,i.high=h+j+(g>>>0>>0?1:0),v=a.low=v+P,a.high=_+N+(v>>>0

>>0?1:0),b=o.low=b+te,o.high=y+ee+(b>>>0>>0?1:0),S=s.low=S+I,s.high=x+F+(S>>>0>>0?1:0),w=u.low=w+L,u.high=C+ne+(w>>>0>>0?1:0),E=d.low=E+R,d.high=T+re+(E>>>0>>0?1:0),O=f.low=O+z,f.high=D+ie+(O>>>0>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=this._nDataBytes*8,r=e.sigBytes*8;return t[r>>>5]|=128<<24-r%32,t[(r+128>>>10<<5)+30]=Math.floor(n/4294967296),t[(r+128>>>10<<5)+31]=n,e.sigBytes=t.length*4,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:1024/32});t.SHA512=n._createHelper(u),t.HmacSHA512=n._createHmacHelper(u)})(),e.SHA512})})),ze=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),je(),Re()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`,`./sha512`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.x64,r=n.Word,i=n.WordArray,a=t.algo,o=a.SHA512,s=a.SHA384=o.extend({_doReset:function(){this._hash=new i.init([new r.init(3418070365,3238371032),new r.init(1654270250,914150663),new r.init(2438529370,812702999),new r.init(355462360,4144912697),new r.init(1731405415,4290775857),new r.init(2394180231,1750603025),new r.init(3675008525,1694076839),new r.init(1203062813,3204075428)])},_doFinalize:function(){var e=o._doFinalize.call(this);return e.sigBytes-=16,e}});t.SHA384=o._createHelper(s),t.HmacSHA384=o._createHmacHelper(s)})(),e.SHA384})})),Be=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),je()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.x64.Word,s=n.algo,c=[],l=[],u=[];(function(){for(var e=1,t=0,n=0;n<24;n++){c[e+5*t]=(n+1)*(n+2)/2%64;var r=t%5,i=(2*e+3*t)%5;e=r,t=i}for(var e=0;e<5;e++)for(var t=0;t<5;t++)l[e+5*t]=t+(2*e+3*t)%5*5;for(var a=1,s=0;s<24;s++){for(var d=0,f=0,p=0;p<7;p++){if(a&1){var m=(1<>>24)&16711935|(a<<24|a>>>8)&4278255360,o=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360;var s=n[i];s.high^=o,s.low^=a}for(var f=0;f<24;f++){for(var p=0;p<5;p++){for(var m=0,h=0,g=0;g<5;g++){var s=n[p+5*g];m^=s.high,h^=s.low}var _=d[p];_.high=m,_.low=h}for(var p=0;p<5;p++)for(var v=d[(p+4)%5],y=d[(p+1)%5],b=y.high,x=y.low,m=v.high^(b<<1|x>>>31),h=v.low^(x<<1|b>>>31),g=0;g<5;g++){var s=n[p+5*g];s.high^=m,s.low^=h}for(var S=1;S<25;S++){var m,h,s=n[S],C=s.high,w=s.low,T=c[S];T<32?(m=C<>>32-T,h=w<>>32-T):(m=w<>>64-T,h=C<>>64-T);var E=d[l[S]];E.high=m,E.low=h}var D=d[0],O=n[0];D.high=O.high,D.low=O.low;for(var p=0;p<5;p++)for(var g=0;g<5;g++){var S=p+5*g,s=n[S],k=d[S],A=d[(p+1)%5+5*g],j=d[(p+2)%5+5*g];s.high=k.high^~A.high&j.high,s.low=k.low^~A.low&j.low}var s=n[0],M=u[f];s.high^=M.high,s.low^=M.low}},_doFinalize:function(){var e=this._data,n=e.words;this._nDataBytes*8;var r=e.sigBytes*8,a=this.blockSize*32;n[r>>>5]|=1<<24-r%32,n[(t.ceil((r+1)/a)*a>>>5)-1]|=128,e.sigBytes=n.length*4,this._process();for(var o=this._state,s=this.cfg.outputLength/8,c=s/8,l=[],u=0;u>>24)&16711935|(f<<24|f>>>8)&4278255360,p=(p<<8|p>>>24)&16711935|(p<<24|p>>>8)&4278255360,l.push(p),l.push(f)}return new i.init(l,s)},clone:function(){for(var e=a.clone.call(this),t=e._state=this._state.slice(0),n=0;n<25;n++)t[n]=t[n].clone();return e}});n.SHA3=a._createHelper(f),n.HmacSHA3=a._createHmacHelper(f)})(Math),e.SHA3})})),Ve=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.algo,s=i.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=i.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),l=i.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),u=i.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=i.create([0,1518500249,1859775393,2400959708,2840853838]),f=i.create([1352829926,1548603684,1836072691,2053994217,0]),p=o.RIPEMD160=a.extend({_doReset:function(){this._hash=i.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=t+n,i=e[r];e[r]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}for(var a=this._hash.words,o=d.words,p=f.words,b=s.words,x=c.words,S=l.words,C=u.words,w,T,E,D,O,k=w=a[0],A=T=a[1],j=E=a[2],M=D=a[3],N=O=a[4],P,n=0;n<80;n+=1)P=w+e[t+b[n]]|0,n<16?P+=m(T,E,D)+o[0]:n<32?P+=h(T,E,D)+o[1]:n<48?P+=g(T,E,D)+o[2]:n<64?P+=_(T,E,D)+o[3]:P+=v(T,E,D)+o[4],P|=0,P=y(P,S[n]),P=P+O|0,w=O,O=D,D=y(E,10),E=T,T=P,P=k+e[t+x[n]]|0,n<16?P+=v(A,j,M)+p[0]:n<32?P+=_(A,j,M)+p[1]:n<48?P+=g(A,j,M)+p[2]:n<64?P+=h(A,j,M)+p[3]:P+=m(A,j,M)+p[4],P|=0,P=y(P,C[n]),P=P+N|0,k=N,N=M,M=y(j,10),j=A,A=P;P=a[1]+E+M|0,a[1]=a[2]+D+N|0,a[2]=a[3]+O+k|0,a[3]=a[4]+w+A|0,a[4]=a[0]+T+j|0,a[0]=P},_doFinalize:function(){var e=this._data,t=e.words,n=this._nDataBytes*8,r=e.sigBytes*8;t[r>>>5]|=128<<24-r%32,t[(r+64>>>9<<4)+14]=(n<<8|n>>>24)&16711935|(n<<24|n>>>8)&4278255360,e.sigBytes=(t.length+1)*4,this._process();for(var i=this._hash,a=i.words,o=0;o<5;o++){var s=a[o];a[o]=(s<<8|s>>>24)&16711935|(s<<24|s>>>8)&4278255360}return i},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});function m(e,t,n){return e^t^n}function h(e,t,n){return e&t|~e&n}function g(e,t,n){return(e|~t)^n}function _(e,t,n){return e&n|t&~n}function v(e,t,n){return e^(t|~n)}function y(e,t){return e<>>32-t}n.RIPEMD160=a._createHelper(p),n.HmacRIPEMD160=a._createHmacHelper(p)})(Math),e.RIPEMD160})})),He=i(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(Y()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){(function(){var t=e,n=t.lib.Base,r=t.enc.Utf8,i=t.algo;i.HMAC=n.extend({init:function(e,t){e=this._hasher=new e.init,typeof t==`string`&&(t=r.parse(t));var n=e.blockSize,i=n*4;t.sigBytes>i&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),s=a.words,c=o.words,l=0;l{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ie(),He()):typeof define==`function`&&define.amd?define([`./core`,`./sha256`,`./hmac`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.Base,i=n.WordArray,a=t.algo,o=a.SHA256,s=a.HMAC,c=a.PBKDF2=r.extend({cfg:r.extend({keySize:128/32,hasher:o,iterations:25e4}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=this.cfg,r=s.create(n.hasher,e),a=i.create(),o=i.create([1]),c=a.words,l=o.words,u=n.keySize,d=n.iterations;c.length{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Fe(),He()):typeof define==`function`&&define.amd?define([`./core`,`./sha1`,`./hmac`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.Base,i=n.WordArray,a=t.algo,o=a.MD5,s=a.EvpKDF=r.extend({cfg:r.extend({keySize:128/32,hasher:o,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n,r=this.cfg,a=r.hasher.create(),o=i.create(),s=o.words,c=r.keySize,l=r.iterations;s.length{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Q()):typeof define==`function`&&define.amd?define([`./core`,`./evpkdf`],r):r(n.CryptoJS)})(e,function(e){e.lib.Cipher||function(t){var n=e,r=n.lib,i=r.Base,a=r.WordArray,o=r.BufferedBlockAlgorithm,s=n.enc;s.Utf8;var c=s.Base64,l=n.algo.EvpKDF,u=r.Cipher=o.extend({cfg:i.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,n){this.cfg=this.cfg.extend(n),this._xformMode=e,this._key=t,this.reset()},reset:function(){o.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return typeof e==`string`?S:y}return function(t){return{encrypt:function(n,r,i){return e(r).encrypt(t,n,r,i)},decrypt:function(n,r,i){return e(r).decrypt(t,n,r,i)}}}}()});r.StreamCipher=u.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var d=n.mode={},f=r.BlockCipherMode=i.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),p=d.CBC=function(){var e=f.extend();e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize;n.call(this,e,t,i),r.encryptBlock(e,t),this._prevBlock=e.slice(t,t+i)}}),e.Decryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,a=e.slice(t,t+i);r.decryptBlock(e,t),n.call(this,e,t,i),this._prevBlock=a}});function n(e,n,r){var i,a=this._iv;a?(i=a,this._iv=t):i=this._prevBlock;for(var o=0;o>>2]&255;e.sigBytes-=t}};r.BlockCipher=u.extend({cfg:u.cfg.extend({mode:p,padding:h}),reset:function(){var e;u.reset.call(this);var t=this.cfg,n=t.iv,r=t.mode;this._xformMode==this._ENC_XFORM_MODE?e=r.createEncryptor:(e=r.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==e?this._mode.init(this,n&&n.words):(this._mode=e.call(r,this,n&&n.words),this._mode.__creator=e)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:128/32});var g=r.CipherParams=i.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),_=n.format={},v=_.OpenSSL={stringify:function(e){var t,n=e.ciphertext,r=e.salt;return t=r?a.create([1398893684,1701076831]).concat(r).concat(n):n,t.toString(c)},parse:function(e){var t,n=c.parse(e),r=n.words;return r[0]==1398893684&&r[1]==1701076831&&(t=a.create(r.slice(2,4)),r.splice(0,4),n.sigBytes-=16),g.create({ciphertext:n,salt:t})}},y=r.SerializableCipher=i.extend({cfg:i.extend({format:v}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r),a=i.finalize(t),o=i.cfg;return g.create({ciphertext:a,key:n,iv:o.iv,algorithm:e,mode:o.mode,padding:o.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return typeof e==`string`?t.parse(e,this):e}}),b=n.kdf={},x=b.OpenSSL={execute:function(e,t,n,r,i){if(r||=a.random(64/8),i)var o=l.create({keySize:t+n,hasher:i}).compute(e,r);else var o=l.create({keySize:t+n}).compute(e,r);var s=a.create(o.words.slice(t),n*4);return o.sigBytes=t*4,g.create({key:o,iv:s,salt:r})}},S=r.PasswordBasedCipher=y.extend({cfg:y.cfg.extend({kdf:x}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=r.kdf.execute(n,e.keySize,e.ivSize,r.salt,r.hasher);r.iv=i.iv;var a=y.encrypt.call(this,e,t,i.key,r);return a.mixIn(i),a},decrypt:function(e,t,n,r){r=this.cfg.extend(r),t=this._parse(t,r.format);var i=r.kdf.execute(n,e.keySize,e.ivSize,t.salt,r.hasher);return r.iv=i.iv,y.decrypt.call(this,e,t,i.key,r)}})}()})})),We=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.CFB=function(){var t=e.lib.BlockCipherMode.extend();t.Encryptor=t.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize;n.call(this,e,t,i,r),this._prevBlock=e.slice(t,t+i)}}),t.Decryptor=t.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,a=e.slice(t,t+i);n.call(this,e,t,i,r),this._prevBlock=a}});function n(e,t,n,r){var i,a=this._iv;a?(i=a.slice(0),this._iv=void 0):i=this._prevBlock,r.encryptBlock(i,0);for(var o=0;o{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend();return t.Decryptor=t.Encryptor=t.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize,i=this._iv,a=this._counter;i&&(a=this._counter=i.slice(0),this._iv=void 0);var o=a.slice(0);n.encryptBlock(o,0),a[r-1]=a[r-1]+1|0;for(var s=0;s{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();function n(e){if((e>>24&255)==255){var t=e>>16&255,n=e>>8&255,r=e&255;t===255?(t=0,n===255?(n=0,r===255?r=0:++r):++n):++t,e=0,e+=t<<16,e+=n<<8,e+=r}else e+=1<<24;return e}function r(e){return(e[0]=n(e[0]))===0&&(e[1]=n(e[1])),e}return t.Decryptor=t.Encryptor=t.extend({processBlock:function(e,t){var n=this._cipher,i=n.blockSize,a=this._iv,o=this._counter;a&&(o=this._counter=a.slice(0),this._iv=void 0),r(o);var s=o.slice(0);n.encryptBlock(s,0);for(var c=0;c{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.OFB=function(){var t=e.lib.BlockCipherMode.extend();return t.Decryptor=t.Encryptor=t.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize,i=this._iv,a=this._keystream;i&&(a=this._keystream=i.slice(0),this._iv=void 0),n.encryptBlock(a,0);for(var o=0;o{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),t.Decryptor=t.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),t}(),e.mode.ECB})})),Ye=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.AnsiX923={pad:function(e,t){var n=e.sigBytes,r=t*4,i=r-n%r,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Ansix923})})),Xe=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Iso10126={pad:function(t,n){var r=n*4,i=r-t.sigBytes%r;t.concat(e.lib.WordArray.random(i-1)).concat(e.lib.WordArray.create([i<<24],1))},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Iso10126})})),Ze=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Iso97971={pad:function(t,n){t.concat(e.lib.WordArray.create([2147483648],1)),e.pad.ZeroPadding.pad(t,n)},unpad:function(t){e.pad.ZeroPadding.unpad(t),t.sigBytes--}},e.pad.Iso97971})})),Qe=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.ZeroPadding={pad:function(e,t){var n=t*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var t=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(t[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},e.pad.ZeroPadding})})),$e=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})})),et=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),$()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib.CipherParams,i=n.enc.Hex,a=n.format;a.Hex={stringify:function(e){return e.ciphertext.toString(i)},parse:function(e){var t=i.parse(e);return r.create({ciphertext:t})}}})(),e.format.Hex})})),tt=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.BlockCipher,r=t.algo,i=[],a=[],o=[],s=[],c=[],l=[],u=[],d=[],f=[],p=[];(function(){for(var e=[],t=0;t<256;t++)t<128?e[t]=t<<1:e[t]=t<<1^283;for(var n=0,r=0,t=0;t<256;t++){var m=r^r<<1^r<<2^r<<3^r<<4;m=m>>>8^m&255^99,i[n]=m,a[m]=n;var h=e[n],g=e[h],_=e[g],v=e[m]*257^m*16843008;o[n]=v<<24|v>>>8,s[n]=v<<16|v>>>16,c[n]=v<<8|v>>>24,l[n]=v;var v=_*16843009^g*65537^h*257^n*16843008;u[m]=v<<24|v>>>8,d[m]=v<<16|v>>>16,f[m]=v<<8|v>>>24,p[m]=v,n?(n=h^e[e[e[_^h]]],r^=e[e[r]]):n=r=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],h=r.AES=n.extend({_doReset:function(){var e;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var t=this._keyPriorReset=this._key,n=t.words,r=t.sigBytes/4,a=((this._nRounds=r+6)+1)*4,o=this._keySchedule=[],s=0;s6&&s%r==4&&(e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255]):(e=e<<8|e>>>24,e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255],e^=m[s/r|0]<<24),o[s]=o[s-r]^e);for(var c=this._invKeySchedule=[],l=0;l>>24]]^d[i[e>>>16&255]]^f[i[e>>>8&255]]^p[i[e&255]]}}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,s,c,l,i)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,u,d,f,p,a);var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var c=this._nRounds,l=e[t]^n[0],u=e[t+1]^n[1],d=e[t+2]^n[2],f=e[t+3]^n[3],p=4,m=1;m>>24]^i[u>>>16&255]^a[d>>>8&255]^o[f&255]^n[p++],g=r[u>>>24]^i[d>>>16&255]^a[f>>>8&255]^o[l&255]^n[p++],_=r[d>>>24]^i[f>>>16&255]^a[l>>>8&255]^o[u&255]^n[p++],v=r[f>>>24]^i[l>>>16&255]^a[u>>>8&255]^o[d&255]^n[p++];l=h,u=g,d=_,f=v}var h=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[d>>>8&255]<<8|s[f&255])^n[p++],g=(s[u>>>24]<<24|s[d>>>16&255]<<16|s[f>>>8&255]<<8|s[l&255])^n[p++],_=(s[d>>>24]<<24|s[f>>>16&255]<<16|s[l>>>8&255]<<8|s[u&255])^n[p++],v=(s[f>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[d&255])^n[p++];e[t]=h,e[t+1]=g,e[t+2]=_,e[t+3]=v},keySize:256/32});t.AES=n._createHelper(h)})(),e.AES})})),nt=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.WordArray,i=n.BlockCipher,a=t.algo,o=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],s=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],l=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],u=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=a.DES=i.extend({_doReset:function(){for(var e=this._key.words,t=[],n=0;n<56;n++){var r=o[n]-1;t[n]=e[r>>>5]>>>31-r%32&1}for(var i=this._subKeys=[],a=0;a<16;a++){for(var l=i[a]=[],u=c[a],n=0;n<24;n++)l[n/6|0]|=t[(s[n]-1+u)%28]<<31-n%6,l[4+(n/6|0)]|=t[28+(s[n+24]-1+u)%28]<<31-n%6;l[0]=l[0]<<1|l[0]>>>31;for(var n=1;n<7;n++)l[n]=l[n]>>>(n-1)*4+3;l[7]=l[7]<<5|l[7]>>>27}for(var d=this._invSubKeys=[],n=0;n<16;n++)d[n]=i[15-n]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._subKeys)},decryptBlock:function(e,t){this._doCryptBlock(e,t,this._invSubKeys)},_doCryptBlock:function(e,t,n){this._lBlock=e[t],this._rBlock=e[t+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var r=0;r<16;r++){for(var i=n[r],a=this._lBlock,o=this._rBlock,s=0,c=0;c<8;c++)s|=l[c][((o^i[c])&u[c])>>>0];this._lBlock=o,this._rBlock=a^s}var d=this._lBlock;this._lBlock=this._rBlock,this._rBlock=d,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),e[t]=this._lBlock,e[t+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(e,t){var n=(this._lBlock>>>e^this._rBlock)&t;this._rBlock^=n,this._lBlock^=n<>>e^this._lBlock)&t;this._lBlock^=n,this._rBlock^=n<192.`);var t=e.slice(0,2),n=e.length<4?e.slice(0,2):e.slice(2,4),i=e.length<6?e.slice(0,2):e.slice(4,6);this._des1=d.createEncryptor(r.create(t)),this._des2=d.createEncryptor(r.create(n)),this._des3=d.createEncryptor(r.create(i))},encryptBlock:function(e,t){this._des1.encryptBlock(e,t),this._des2.decryptBlock(e,t),this._des3.encryptBlock(e,t)},decryptBlock:function(e,t){this._des3.decryptBlock(e,t),this._des2.encryptBlock(e,t),this._des1.decryptBlock(e,t)},keySize:192/32,ivSize:64/32,blockSize:64/32});t.TripleDES=i._createHelper(m)})(),e.TripleDES})})),rt=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.StreamCipher,r=t.algo,i=r.RC4=n.extend({_doReset:function(){for(var e=this._key,t=e.words,n=e.sigBytes,r=this._S=[],i=0;i<256;i++)r[i]=i;for(var i=0,a=0;i<256;i++){var o=i%n,s=t[o>>>2]>>>24-o%4*8&255;a=(a+r[i]+s)%256;var c=r[i];r[i]=r[a],r[a]=c}this._i=this._j=0},_doProcessBlock:function(e,t){e[t]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var e=this._S,t=this._i,n=this._j,r=0,i=0;i<4;i++){t=(t+1)%256,n=(n+e[t])%256;var a=e[t];e[t]=e[n],e[n]=a,r|=e[(e[t]+e[n])%256]<<24-i*8}return this._i=t,this._j=n,r}t.RC4=n._createHelper(i);var o=r.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var e=this.cfg.drop;e>0;e--)a.call(this)}});t.RC4Drop=n._createHelper(o)})(),e.RC4})})),it=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.StreamCipher,r=t.algo,i=[],a=[],o=[],s=r.Rabbit=n.extend({_doReset:function(){for(var e=this._key.words,t=this.cfg.iv,n=0;n<4;n++)e[n]=(e[n]<<8|e[n]>>>24)&16711935|(e[n]<<24|e[n]>>>8)&4278255360;var r=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],i=this._C=[e[2]<<16|e[2]>>>16,e[0]&4294901760|e[1]&65535,e[3]<<16|e[3]>>>16,e[1]&4294901760|e[2]&65535,e[0]<<16|e[0]>>>16,e[2]&4294901760|e[3]&65535,e[1]<<16|e[1]>>>16,e[3]&4294901760|e[0]&65535];this._b=0;for(var n=0;n<4;n++)c.call(this);for(var n=0;n<8;n++)i[n]^=r[n+4&7];if(t){var a=t.words,o=a[0],s=a[1],l=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,u=(s<<8|s>>>24)&16711935|(s<<24|s>>>8)&4278255360,d=l>>>16|u&4294901760,f=u<<16|l&65535;i[0]^=l,i[1]^=d,i[2]^=u,i[3]^=f,i[4]^=l,i[5]^=d,i[6]^=u,i[7]^=f;for(var n=0;n<4;n++)c.call(this)}},_doProcessBlock:function(e,t){var n=this._X;c.call(this),i[0]=n[0]^n[5]>>>16^n[3]<<16,i[1]=n[2]^n[7]>>>16^n[5]<<16,i[2]=n[4]^n[1]>>>16^n[7]<<16,i[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)i[r]=(i[r]<<8|i[r]>>>24)&16711935|(i[r]<<24|i[r]>>>8)&4278255360,e[t+r]^=i[r]},blockSize:128/32,ivSize:64/32});function c(){for(var e=this._X,t=this._C,n=0;n<8;n++)a[n]=t[n];t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(var n=0;n<8;n++){var r=e[n]+t[n],i=r&65535,s=r>>>16;o[n]=((i*i>>>17)+i*s>>>15)+s*s^((r&4294901760)*r|0)+((r&65535)*r|0)}e[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,e[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,e[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,e[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,e[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,e[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,e[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,e[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.Rabbit=n._createHelper(s)})(),e.Rabbit})})),at=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.StreamCipher,r=t.algo,i=[],a=[],o=[],s=r.RabbitLegacy=n.extend({_doReset:function(){var e=this._key.words,t=this.cfg.iv,n=this._X=[e[0],e[3]<<16|e[2]>>>16,e[1],e[0]<<16|e[3]>>>16,e[2],e[1]<<16|e[0]>>>16,e[3],e[2]<<16|e[1]>>>16],r=this._C=[e[2]<<16|e[2]>>>16,e[0]&4294901760|e[1]&65535,e[3]<<16|e[3]>>>16,e[1]&4294901760|e[2]&65535,e[0]<<16|e[0]>>>16,e[2]&4294901760|e[3]&65535,e[1]<<16|e[1]>>>16,e[3]&4294901760|e[0]&65535];this._b=0;for(var i=0;i<4;i++)c.call(this);for(var i=0;i<8;i++)r[i]^=n[i+4&7];if(t){var a=t.words,o=a[0],s=a[1],l=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,u=(s<<8|s>>>24)&16711935|(s<<24|s>>>8)&4278255360,d=l>>>16|u&4294901760,f=u<<16|l&65535;r[0]^=l,r[1]^=d,r[2]^=u,r[3]^=f,r[4]^=l,r[5]^=d,r[6]^=u,r[7]^=f;for(var i=0;i<4;i++)c.call(this)}},_doProcessBlock:function(e,t){var n=this._X;c.call(this),i[0]=n[0]^n[5]>>>16^n[3]<<16,i[1]=n[2]^n[7]>>>16^n[5]<<16,i[2]=n[4]^n[1]>>>16^n[7]<<16,i[3]=n[6]^n[3]>>>16^n[1]<<16;for(var r=0;r<4;r++)i[r]=(i[r]<<8|i[r]>>>24)&16711935|(i[r]<<24|i[r]>>>8)&4278255360,e[t+r]^=i[r]},blockSize:128/32,ivSize:64/32});function c(){for(var e=this._X,t=this._C,n=0;n<8;n++)a[n]=t[n];t[0]=t[0]+1295307597+this._b|0,t[1]=t[1]+3545052371+(t[0]>>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(var n=0;n<8;n++){var r=e[n]+t[n],i=r&65535,s=r>>>16;o[n]=((i*i>>>17)+i*s>>>15)+s*s^((r&4294901760)*r|0)+((r&65535)*r|0)}e[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,e[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,e[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,e[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,e[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,e[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,e[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,e[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.RabbitLegacy=n._createHelper(s)})(),e.RabbitLegacy})})),ot=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),X(),Z(),Q(),$()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.BlockCipher,r=t.algo;let i=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],a=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var o={pbox:[],sbox:[]};function s(e,t){let n=t>>24&255,r=t>>16&255,i=t>>8&255,a=t&255,o=e.sbox[0][n]+e.sbox[1][r];return o^=e.sbox[2][i],o+=e.sbox[3][a],o}function c(e,t,n){let r=t,i=n,a;for(let t=0;t<16;++t)r^=e.pbox[t],i=s(e,r)^i,a=r,r=i,i=a;return a=r,r=i,i=a,i^=e.pbox[16],r^=e.pbox[17],{left:r,right:i}}function l(e,t,n){let r=t,i=n,a;for(let t=17;t>1;--t)r^=e.pbox[t],i=s(e,r)^i,a=r,r=i,i=a;return a=r,r=i,i=a,i^=e.pbox[1],r^=e.pbox[0],{left:r,right:i}}function u(e,t,n){for(let t=0;t<4;t++){e.sbox[t]=[];for(let n=0;n<256;n++)e.sbox[t][n]=a[t][n]}let r=0;for(let a=0;a<18;a++)e.pbox[a]=i[a]^t[r],r++,r>=n&&(r=0);let o=0,s=0,l=0;for(let t=0;t<18;t+=2)l=c(e,o,s),o=l.left,s=l.right,e.pbox[t]=o,e.pbox[t+1]=s;for(let t=0;t<4;t++)for(let n=0;n<256;n+=2)l=c(e,o,s),o=l.left,s=l.right,e.sbox[t][n]=o,e.sbox[t][n+1]=s;return!0}var d=r.Blowfish=n.extend({_doReset:function(){if(this._keyPriorReset!==this._key){var e=this._keyPriorReset=this._key,t=e.words;u(o,t,e.sigBytes/4)}},encryptBlock:function(e,t){var n=c(o,e[t],e[t+1]);e[t]=n.left,e[t+1]=n.right},decryptBlock:function(e,t){var n=l(o,e[t],e[t+1]);e[t]=n.left,e[t+1]=n.right},blockSize:64/32,keySize:128/32,ivSize:64/32});t.Blowfish=n._createHelper(d)})(),e.Blowfish})})),st=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),je(),Me(),Ne(),X(),Pe(),Z(),Fe(),Ie(),Le(),Re(),ze(),Be(),Ve(),He(),Ue(),Q(),$(),We(),Ge(),Ke(),qe(),Je(),Ye(),Xe(),Ze(),Qe(),$e(),et(),tt(),nt(),rt(),it(),at(),ot()):typeof define==`function`&&define.amd?define(`./core,./x64-core,./lib-typedarrays,./enc-utf16,./enc-base64,./enc-base64url,./md5,./sha1,./sha256,./sha224,./sha512,./sha384,./sha3,./ripemd160,./hmac,./pbkdf2,./evpkdf,./cipher-core,./mode-cfb,./mode-ctr,./mode-ctr-gladman,./mode-ofb,./mode-ecb,./pad-ansix923,./pad-iso10126,./pad-iso97971,./pad-zeropadding,./pad-nopadding,./format-hex,./aes,./tripledes,./rc4,./rabbit,./rabbit-legacy,./blowfish`.split(`,`),r):n.CryptoJS=r(n.CryptoJS)})(e,function(e){return e})}));export{st as t}; \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 17da821..bf181ce 100644 --- a/docs/index.html +++ b/docs/index.html @@ -7,21 +7,21 @@ OGame-Vue-Ts - + - + - + diff --git a/package.json b/package.json index a687539..a0a09aa 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "private": true, "version": "1.1.0", - "buildDate": "2025/12/14 13:13:07", + "buildDate": "2025/12/14 15:57:43", "main": "dist-electron/main.js", "type": "module", "scripts": { @@ -79,11 +79,17 @@ "artifactName": "${productName}-Setup.${ext}" }, "mac": { - "target": ["dmg", "zip"], + "target": [ + "dmg", + "zip" + ], "artifactName": "${productName}-mac.${ext}" }, "linux": { - "target": ["AppImage", "deb"], + "target": [ + "AppImage", + "deb" + ], "artifactName": "${productName}-linux.${ext}" } }