From 763dfdde049a81058031493bcdcdc687245adac9 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Sun, 14 Dec 2025 15:55:05 +0800 Subject: [PATCH 01/14] github-pages --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 2b72b2c..73f996e 100644 --- a/.gitignore +++ b/.gitignore @@ -12,7 +12,6 @@ node_modules dist dist-ssr *.local -docs # Editor directories and files .claude/* From 2601f1b776bd3b52533b46276b339a5d18aad8ef Mon Sep 17 00:00:00 2001 From: coolxitech Date: Sun, 14 Dec 2025 15:55:27 +0800 Subject: [PATCH 02/14] github-pages --- docs/CNAME | 1 + docs/assets/AlertDialog-Bf_xgpJz.js | 1 + docs/assets/BattleReportDialog-BxeTjW1s.js | 1 + docs/assets/BattleSimulatorView-DyCE8DDk.js | 1 + docs/assets/BuildingsView-fbXzR4lw.js | 2 + docs/assets/CardDescription-BjAei3DC.js | 1 + docs/assets/CardUnlockOverlay-CVKjkS94.js | 2 + docs/assets/DefenseView-BHOUOKOH.js | 1 + docs/assets/FleetView-C_yELhx2.js | 1 + docs/assets/GMView-TnIOhUsC.js | 1 + docs/assets/GalaxyView-BxX60NKB.js | 1 + docs/assets/MessagesView-D8V3gkqX.js | 1 + docs/assets/OfficersView-vhUgk-zn.js | 1 + docs/assets/OverviewView-BmFIi4eW.js | 1 + docs/assets/ResearchView-CxV9s7Q0.js | 2 + docs/assets/SelectValue-B8Xyt9cq.js | 1 + docs/assets/SettingsView-ByY8npXW.js | 1 + docs/assets/ShipyardView-7hLJW6aW.js | 1 + docs/assets/TooltipProvider-BAp4BAXy.js | 1 + docs/assets/UnlockRequirement-p2W4t6RX.js | 1 + docs/assets/battle.worker-CNO8oZzx.js | 1 + docs/assets/game-config-D-D7cMgJ.js | 1 + docs/assets/game-i18n-DEf7ySVe.js | 57 ++++++++++++++++++++ docs/assets/game-logic-CfBcTF_c.js | 3 ++ docs/assets/index-C1ya9Q3J.css | 2 + docs/assets/index-DRmrr36X.js | 2 + docs/assets/logo-Cz0cNqhe.svg | 1 + docs/assets/rolldown-runtime-tX5UdD3f.js | 1 + docs/assets/useGameConfig-CVlwnWOp.js | 1 + docs/assets/vendor-crypto-DGvz1MHk.js | 1 + docs/assets/vendor-icons-W6Ny__75.js | 1 + docs/assets/vendor-others-BMPyaZWq.css | 1 + docs/assets/vendor-others-CUjrprN5.js | 1 + docs/assets/vendor-pinia-DP9x75p8.js | 1 + docs/assets/vendor-reka-ui-CZQh7FLl.js | 8 +++ docs/assets/vendor-utils-Dg-HLkEU.js | 1 + docs/assets/vendor-vue-router-CWDMmE-U.js | 1 + docs/assets/vendor-vueuse-C7EbLx--.js | 1 + docs/favicon.ico | Bin 0 -> 232564 bytes docs/index.html | 34 ++++++++++++ docs/logo.svg | 1 + 41 files changed, 143 insertions(+) create mode 100644 docs/CNAME create mode 100644 docs/assets/AlertDialog-Bf_xgpJz.js create mode 100644 docs/assets/BattleReportDialog-BxeTjW1s.js create mode 100644 docs/assets/BattleSimulatorView-DyCE8DDk.js create mode 100644 docs/assets/BuildingsView-fbXzR4lw.js create mode 100644 docs/assets/CardDescription-BjAei3DC.js create mode 100644 docs/assets/CardUnlockOverlay-CVKjkS94.js create mode 100644 docs/assets/DefenseView-BHOUOKOH.js create mode 100644 docs/assets/FleetView-C_yELhx2.js create mode 100644 docs/assets/GMView-TnIOhUsC.js create mode 100644 docs/assets/GalaxyView-BxX60NKB.js create mode 100644 docs/assets/MessagesView-D8V3gkqX.js create mode 100644 docs/assets/OfficersView-vhUgk-zn.js create mode 100644 docs/assets/OverviewView-BmFIi4eW.js create mode 100644 docs/assets/ResearchView-CxV9s7Q0.js create mode 100644 docs/assets/SelectValue-B8Xyt9cq.js create mode 100644 docs/assets/SettingsView-ByY8npXW.js create mode 100644 docs/assets/ShipyardView-7hLJW6aW.js create mode 100644 docs/assets/TooltipProvider-BAp4BAXy.js create mode 100644 docs/assets/UnlockRequirement-p2W4t6RX.js create mode 100644 docs/assets/battle.worker-CNO8oZzx.js create mode 100644 docs/assets/game-config-D-D7cMgJ.js create mode 100644 docs/assets/game-i18n-DEf7ySVe.js create mode 100644 docs/assets/game-logic-CfBcTF_c.js create mode 100644 docs/assets/index-C1ya9Q3J.css create mode 100644 docs/assets/index-DRmrr36X.js create mode 100644 docs/assets/logo-Cz0cNqhe.svg create mode 100644 docs/assets/rolldown-runtime-tX5UdD3f.js create mode 100644 docs/assets/useGameConfig-CVlwnWOp.js create mode 100644 docs/assets/vendor-crypto-DGvz1MHk.js create mode 100644 docs/assets/vendor-icons-W6Ny__75.js create mode 100644 docs/assets/vendor-others-BMPyaZWq.css create mode 100644 docs/assets/vendor-others-CUjrprN5.js create mode 100644 docs/assets/vendor-pinia-DP9x75p8.js create mode 100644 docs/assets/vendor-reka-ui-CZQh7FLl.js create mode 100644 docs/assets/vendor-utils-Dg-HLkEU.js create mode 100644 docs/assets/vendor-vue-router-CWDMmE-U.js create mode 100644 docs/assets/vendor-vueuse-C7EbLx--.js create mode 100644 docs/favicon.ico create mode 100644 docs/index.html create mode 100644 docs/logo.svg diff --git a/docs/CNAME b/docs/CNAME new file mode 100644 index 0000000..ec747bb --- /dev/null +++ b/docs/CNAME @@ -0,0 +1 @@ +ogame-vue-ts.wenzi.games \ No newline at end of file diff --git a/docs/assets/AlertDialog-Bf_xgpJz.js b/docs/assets/AlertDialog-Bf_xgpJz.js new file mode 100644 index 0000000..c2753f5 --- /dev/null +++ b/docs/assets/AlertDialog-Bf_xgpJz.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-DRmrr36X.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-BxeTjW1s.js b/docs/assets/BattleReportDialog-BxeTjW1s.js new file mode 100644 index 0000000..e1cd7fa --- /dev/null +++ b/docs/assets/BattleReportDialog-BxeTjW1s.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-DRmrr36X.js";import{t as w}from"./useGameConfig-CVlwnWOp.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-DyCE8DDk.js b/docs/assets/BattleSimulatorView-DyCE8DDk.js new file mode 100644 index 0000000..6823494 --- /dev/null +++ b/docs/assets/BattleSimulatorView-DyCE8DDk.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as ie}from"./useGameConfig-CVlwnWOp.js";import{t as ae}from"./BattleReportDialog-BxeTjW1s.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-fbXzR4lw.js b/docs/assets/BuildingsView-fbXzR4lw.js new file mode 100644 index 0000000..a0ba853 --- /dev/null +++ b/docs/assets/BuildingsView-fbXzR4lw.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as N}from"./useGameConfig-CVlwnWOp.js";import{t as P}from"./AlertDialog-Bf_xgpJz.js";import{t as F}from"./CardUnlockOverlay-CVKjkS94.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-BjAei3DC.js b/docs/assets/CardDescription-BjAei3DC.js new file mode 100644 index 0000000..bdb4d87 --- /dev/null +++ b/docs/assets/CardDescription-BjAei3DC.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-DRmrr36X.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-CVKjkS94.js b/docs/assets/CardUnlockOverlay-CVKjkS94.js new file mode 100644 index 0000000..acbbaf1 --- /dev/null +++ b/docs/assets/CardUnlockOverlay-CVKjkS94.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-DRmrr36X.js";import{t as y}from"./useGameConfig-CVlwnWOp.js";import{t as b}from"./AlertDialog-Bf_xgpJz.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-BHOUOKOH.js b/docs/assets/DefenseView-BHOUOKOH.js new file mode 100644 index 0000000..c0ee501 --- /dev/null +++ b/docs/assets/DefenseView-BHOUOKOH.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as D}from"./useGameConfig-CVlwnWOp.js";import{t as O}from"./AlertDialog-Bf_xgpJz.js";import{t as k}from"./CardUnlockOverlay-CVKjkS94.js";import{t as A}from"./UnlockRequirement-p2W4t6RX.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-C_yELhx2.js b/docs/assets/FleetView-C_yELhx2.js new file mode 100644 index 0000000..e616697 --- /dev/null +++ b/docs/assets/FleetView-C_yELhx2.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as Se}from"./useGameConfig-CVlwnWOp.js";import{t as Ce}from"./AlertDialog-Bf_xgpJz.js";import{t as we}from"./UnlockRequirement-p2W4t6RX.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-TnIOhUsC.js b/docs/assets/GMView-TnIOhUsC.js new file mode 100644 index 0000000..fbc9de2 --- /dev/null +++ b/docs/assets/GMView-TnIOhUsC.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as le}from"./useGameConfig-CVlwnWOp.js";import{a as ue,i as de,n as fe,r as pe,t as S}from"./SelectValue-B8Xyt9cq.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-BxX60NKB.js b/docs/assets/GalaxyView-BxX60NKB.js new file mode 100644 index 0000000..c7fb184 --- /dev/null +++ b/docs/assets/GalaxyView-BxX60NKB.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as me}from"./AlertDialog-Bf_xgpJz.js";import{a as E,i as D,n as O,r as k,t as A}from"./SelectValue-B8Xyt9cq.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-D8V3gkqX.js b/docs/assets/MessagesView-D8V3gkqX.js new file mode 100644 index 0000000..07c0246 --- /dev/null +++ b/docs/assets/MessagesView-D8V3gkqX.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as R}from"./useGameConfig-CVlwnWOp.js";import{t as z}from"./BattleReportDialog-BxeTjW1s.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-vhUgk-zn.js b/docs/assets/OfficersView-vhUgk-zn.js new file mode 100644 index 0000000..014a15a --- /dev/null +++ b/docs/assets/OfficersView-vhUgk-zn.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as O}from"./useGameConfig-CVlwnWOp.js";import{t as k}from"./AlertDialog-Bf_xgpJz.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-BmFIi4eW.js b/docs/assets/OverviewView-BmFIi4eW.js new file mode 100644 index 0000000..fed7d79 --- /dev/null +++ b/docs/assets/OverviewView-BmFIi4eW.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as k}from"./useGameConfig-CVlwnWOp.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-CxV9s7Q0.js b/docs/assets/ResearchView-CxV9s7Q0.js new file mode 100644 index 0000000..cd816ab --- /dev/null +++ b/docs/assets/ResearchView-CxV9s7Q0.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as E}from"./useGameConfig-CVlwnWOp.js";import{t as D}from"./AlertDialog-Bf_xgpJz.js";import{t as O}from"./CardUnlockOverlay-CVKjkS94.js";import{t as k}from"./UnlockRequirement-p2W4t6RX.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-B8Xyt9cq.js b/docs/assets/SelectValue-B8Xyt9cq.js new file mode 100644 index 0000000..9d02c4e --- /dev/null +++ b/docs/assets/SelectValue-B8Xyt9cq.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-DRmrr36X.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-ByY8npXW.js b/docs/assets/SettingsView-ByY8npXW.js new file mode 100644 index 0000000..691f99e --- /dev/null +++ b/docs/assets/SettingsView-ByY8npXW.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.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-7hLJW6aW.js b/docs/assets/ShipyardView-7hLJW6aW.js new file mode 100644 index 0000000..c54c89c --- /dev/null +++ b/docs/assets/ShipyardView-7hLJW6aW.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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as D}from"./useGameConfig-CVlwnWOp.js";import{t as O}from"./AlertDialog-Bf_xgpJz.js";import{t as k}from"./CardUnlockOverlay-CVKjkS94.js";import{t as A}from"./UnlockRequirement-p2W4t6RX.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/TooltipProvider-BAp4BAXy.js b/docs/assets/TooltipProvider-BAp4BAXy.js new file mode 100644 index 0000000..646b257 --- /dev/null +++ b/docs/assets/TooltipProvider-BAp4BAXy.js @@ -0,0 +1 @@ +import{Cn as e,En as t,Ft as n,Kt as r,Nt as i,Ot as a,Yt as o,in as s}from"./game-logic-CfBcTF_c.js";import{a as c}from"./vendor-reka-ui-CZQh7FLl.js";var l=i({__name:`TooltipProvider`,props:{delayDuration:{default:0},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},setup(i){let l=i;return(i,u)=>(r(),a(e(c),t(n(l)),{default:s(()=>[o(i.$slots,`default`)]),_:3},16))}});export{l as t}; \ No newline at end of file diff --git a/docs/assets/UnlockRequirement-p2W4t6RX.js b/docs/assets/UnlockRequirement-p2W4t6RX.js new file mode 100644 index 0000000..4b924db --- /dev/null +++ b/docs/assets/UnlockRequirement-p2W4t6RX.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-BjAei3DC.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-DRmrr36X.js";import{t as C}from"./useGameConfig-CVlwnWOp.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/battle.worker-CNO8oZzx.js b/docs/assets/battle.worker-CNO8oZzx.js new file mode 100644 index 0000000..6079c0b --- /dev/null +++ b/docs/assets/battle.worker-CNO8oZzx.js @@ -0,0 +1 @@ +(function(){let e={MetalMine:`metalMine`,CrystalMine:`crystalMine`,DeuteriumSynthesizer:`deuteriumSynthesizer`,SolarPlant:`solarPlant`,RoboticsFactory:`roboticsFactory`,NaniteFactory:`naniteFactory`,Shipyard:`shipyard`,ResearchLab:`researchLab`,MetalStorage:`metalStorage`,CrystalStorage:`crystalStorage`,DeuteriumTank:`deuteriumTank`,DarkMatterCollector:`darkMatterCollector`,Terraformer:`terraformer`,LunarBase:`lunarBase`,SensorPhalanx:`sensorPhalanx`,JumpGate:`jumpGate`,PlanetDestroyerFactory:`planetDestroyerFactory`},t={EnergyTechnology:`energyTechnology`,LaserTechnology:`laserTechnology`,IonTechnology:`ionTechnology`,HyperspaceTechnology:`hyperspaceTechnology`,PlasmaTechnology:`plasmaTechnology`,ComputerTechnology:`computerTechnology`,CombustionDrive:`combustionDrive`,ImpulseDrive:`impulseDrive`,HyperspaceDrive:`hyperspaceDrive`,DarkMatterTechnology:`darkMatterTechnology`,TerraformingTechnology:`terraformingTechnology`,PlanetDestructionTech:`planetDestructionTech`},n={RocketLauncher:`rocketLauncher`,LightLaser:`lightLaser`,HeavyLaser:`heavyLaser`,GaussCannon:`gaussCannon`,IonCannon:`ionCannon`,PlasmaTurret:`plasmaTurret`,SmallShieldDome:`smallShieldDome`,LargeShieldDome:`largeShieldDome`,PlanetaryShield:`planetaryShield`},r={LightFighter:`lightFighter`,HeavyFighter:`heavyFighter`,Cruiser:`cruiser`,Battleship:`battleship`,SmallCargo:`smallCargo`,LargeCargo:`largeCargo`,ColonyShip:`colonyShip`,Recycler:`recycler`,EspionageProbe:`espionageProbe`,DarkMatterHarvester:`darkMatterHarvester`,Deathstar:`deathstar`},i={Commander:`commander`,Admiral:`admiral`,Engineer:`engineer`,Geologist:`geologist`,Technocrat:`technocrat`,DarkMatterSpecialist:`darkMatterSpecialist`};e.MetalMine,e.MetalMine,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.CrystalMine,e.CrystalMine,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.DeuteriumSynthesizer,e.DeuteriumSynthesizer,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.SolarPlant,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.RoboticsFactory,e.RoboticsFactory,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.ResearchLab,e.SolarPlant,e.ResearchLab,e.SolarPlant,e.MetalMine,e.CrystalMine,e.ResearchLab,e.NaniteFactory,e.NaniteFactory,e.NaniteFactory,e.RoboticsFactory,e.ResearchLab,e.Shipyard,t.ComputerTechnology,e.ResearchLab,e.Shipyard,t.ComputerTechnology,e.Shipyard,e.Shipyard,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.ResearchLab,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.RoboticsFactory,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.RoboticsFactory,e.NaniteFactory,t.EnergyTechnology,e.MetalStorage,e.MetalStorage,e.MetalMine,e.MetalMine,e.RoboticsFactory,e.MetalMine,e.RoboticsFactory,e.CrystalStorage,e.CrystalStorage,e.CrystalMine,e.CrystalMine,e.RoboticsFactory,e.CrystalMine,e.RoboticsFactory,e.DeuteriumTank,e.DeuteriumTank,e.DeuteriumSynthesizer,e.DeuteriumSynthesizer,e.RoboticsFactory,e.DeuteriumSynthesizer,e.RoboticsFactory,e.DarkMatterCollector,e.DarkMatterCollector,e.ResearchLab,t.DarkMatterTechnology,e.ResearchLab,t.DarkMatterTechnology,e.RoboticsFactory,e.ResearchLab,t.DarkMatterTechnology,e.NaniteFactory,e.Terraformer,e.Terraformer,e.ResearchLab,e.RoboticsFactory,t.TerraformingTechnology,e.ResearchLab,t.TerraformingTechnology,e.NaniteFactory,e.ResearchLab,t.TerraformingTechnology,e.NaniteFactory,e.LunarBase,e.LunarBase,e.RoboticsFactory,e.RoboticsFactory,e.NaniteFactory,e.SensorPhalanx,e.SensorPhalanx,e.LunarBase,e.LunarBase,t.ComputerTechnology,e.LunarBase,t.ComputerTechnology,e.NaniteFactory,e.JumpGate,e.JumpGate,e.LunarBase,t.HyperspaceTechnology,e.LunarBase,t.HyperspaceTechnology,e.NaniteFactory,e.PlanetDestroyerFactory,e.PlanetDestroyerFactory,e.Shipyard,e.RoboticsFactory,e.NaniteFactory,t.PlanetDestructionTech,e.Shipyard,e.NaniteFactory,t.PlanetDestructionTech,t.HyperspaceTechnology,t.EnergyTechnology,t.EnergyTechnology,e.ResearchLab,e.ResearchLab,e.SolarPlant,e.ResearchLab,e.SolarPlant,e.RoboticsFactory,e.ResearchLab,e.RoboticsFactory,e.NaniteFactory,t.LaserTechnology,t.LaserTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.IonTechnology,t.IonTechnology,e.ResearchLab,t.LaserTechnology,t.EnergyTechnology,e.ResearchLab,t.LaserTechnology,t.EnergyTechnology,e.ResearchLab,t.LaserTechnology,e.NaniteFactory,t.HyperspaceTechnology,t.HyperspaceTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.NaniteFactory,t.PlasmaTechnology,t.PlasmaTechnology,e.ResearchLab,t.EnergyTechnology,t.LaserTechnology,t.IonTechnology,e.ResearchLab,t.EnergyTechnology,t.IonTechnology,e.NaniteFactory,e.ResearchLab,t.EnergyTechnology,t.IonTechnology,e.NaniteFactory,t.ComputerTechnology,t.ComputerTechnology,e.ResearchLab,e.ResearchLab,e.ResearchLab,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,t.CombustionDrive,t.CombustionDrive,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.ImpulseDrive,t.ImpulseDrive,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.HyperspaceDrive,t.HyperspaceDrive,e.ResearchLab,t.HyperspaceTechnology,e.ResearchLab,t.HyperspaceTechnology,e.Shipyard,e.ResearchLab,t.HyperspaceTechnology,e.NaniteFactory,t.DarkMatterTechnology,t.DarkMatterTechnology,e.ResearchLab,t.HyperspaceTechnology,e.ResearchLab,t.HyperspaceTechnology,e.RoboticsFactory,t.EnergyTechnology,e.ResearchLab,t.HyperspaceTechnology,e.NaniteFactory,t.EnergyTechnology,t.TerraformingTechnology,t.TerraformingTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.RoboticsFactory,e.ResearchLab,t.EnergyTechnology,e.NaniteFactory,t.PlanetDestructionTech,t.PlanetDestructionTech,e.ResearchLab,t.HyperspaceTechnology,t.HyperspaceDrive,t.PlasmaTechnology,e.ResearchLab,t.HyperspaceTechnology,t.HyperspaceDrive,t.PlasmaTechnology,e.NaniteFactory;let a={[r.LightFighter]:{id:r.LightFighter,name:`轻型战斗机`,description:`基础战斗单位`,cost:{metal:3e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,cargoCapacity:50,attack:50,shield:10,armor:400,speed:12500,fuelConsumption:20,storageUsage:5,requirements:{[e.Shipyard]:1,[t.CombustionDrive]:1}},[r.HeavyFighter]:{id:r.HeavyFighter,name:`重型战斗机`,description:`强力战斗单位`,cost:{metal:6e3,crystal:4e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:100,attack:150,shield:25,armor:1e3,speed:1e4,fuelConsumption:75,storageUsage:10,requirements:{[e.Shipyard]:3,[t.ImpulseDrive]:2}},[r.Cruiser]:{id:r.Cruiser,name:`巡洋舰`,description:`中型战舰`,cost:{metal:2e4,crystal:7e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:800,attack:400,shield:50,armor:2700,speed:15e3,fuelConsumption:300,storageUsage:15,requirements:{[e.Shipyard]:5,[t.ImpulseDrive]:4,[t.IonTechnology]:2}},[r.Battleship]:{id:r.Battleship,name:`战列舰`,description:`重型战舰`,cost:{metal:45e3,crystal:15e3,deuterium:0,darkMatter:0,energy:0},buildTime:90,cargoCapacity:1500,attack:1e3,shield:200,armor:6e3,speed:1e4,fuelConsumption:500,storageUsage:25,requirements:{[e.Shipyard]:7,[t.HyperspaceDrive]:4}},[r.SmallCargo]:{id:r.SmallCargo,name:`小型运输船`,description:`运输资源`,cost:{metal:2e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:15,cargoCapacity:5e3,attack:5,shield:10,armor:400,speed:5e3,fuelConsumption:10,storageUsage:10,requirements:{[e.Shipyard]:2,[t.CombustionDrive]:2}},[r.LargeCargo]:{id:r.LargeCargo,name:`大型运输船`,description:`大量运输资源`,cost:{metal:6e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:25e3,attack:5,shield:25,armor:1200,speed:7500,fuelConsumption:50,storageUsage:20,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.ColonyShip]:{id:r.ColonyShip,name:`殖民船`,description:`建立新殖民地`,cost:{metal:1e4,crystal:2e4,deuterium:1e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:7500,attack:50,shield:100,armor:3e3,speed:2500,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:4,[t.ImpulseDrive]:3}},[r.Recycler]:{id:r.Recycler,name:`回收船`,description:`回收废墟资源`,cost:{metal:1e4,crystal:6e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:2e4,attack:1,shield:10,armor:1600,speed:2e3,fuelConsumption:300,storageUsage:30,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.EspionageProbe]:{id:r.EspionageProbe,name:`间谍探测器`,description:`侦察敌方星球`,cost:{metal:0,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:5,cargoCapacity:5,attack:0,shield:0,armor:100,speed:1e8,fuelConsumption:1,storageUsage:2,requirements:{[e.Shipyard]:3,[t.CombustionDrive]:3}},[r.DarkMatterHarvester]:{id:r.DarkMatterHarvester,name:`暗物质采集船`,description:`专门用于采集暗物质的特殊飞船`,cost:{metal:1e5,crystal:15e4,deuterium:5e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:1e3,attack:10,shield:50,armor:2e3,speed:5e3,fuelConsumption:500,storageUsage:50,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.DarkMatterTechnology]:1}},[r.Deathstar]:{id:r.Deathstar,name:`死星`,description:`终极武器,能够摧毁整个行星`,cost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:0,energy:0},buildTime:600,cargoCapacity:1e6,attack:2e5,shield:5e4,armor:9e5,speed:100,fuelConsumption:1,storageUsage:100,requirements:{[e.PlanetDestroyerFactory]:10,[t.PlanetDestructionTech]:7,[t.HyperspaceDrive]:7}}},o={[n.RocketLauncher]:{id:n.RocketLauncher,name:`火箭发射器`,description:`基础防御设施`,cost:{metal:2e3,crystal:0,deuterium:0,darkMatter:0,energy:0},buildTime:10,attack:80,shield:20,armor:200,requirements:{[e.Shipyard]:1}},[n.LightLaser]:{id:n.LightLaser,name:`轻型激光炮`,description:`激光防御武器`,cost:{metal:1500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildTime:12,attack:100,shield:25,armor:200,requirements:{[e.Shipyard]:2,[t.LaserTechnology]:3}},[n.HeavyLaser]:{id:n.HeavyLaser,name:`重型激光炮`,description:`强力激光武器`,cost:{metal:6e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,attack:250,shield:100,armor:800,requirements:{[e.Shipyard]:4,[t.LaserTechnology]:6}},[n.GaussCannon]:{id:n.GaussCannon,name:`高斯炮`,description:`电磁加速武器`,cost:{metal:2e4,crystal:15e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:35,attack:1100,shield:200,armor:3500,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.IonCannon]:{id:n.IonCannon,name:`离子炮`,description:`离子武器系统`,cost:{metal:2e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:150,shield:500,armor:800,requirements:{[e.Shipyard]:4,[t.IonTechnology]:4}},[n.PlasmaTurret]:{id:n.PlasmaTurret,name:`等离子炮台`,description:`最强防御武器`,cost:{metal:5e4,crystal:5e4,deuterium:3e4,darkMatter:0,energy:0},buildTime:60,attack:3e3,shield:300,armor:1e4,requirements:{[e.Shipyard]:8,[t.PlasmaTechnology]:7}},[n.SmallShieldDome]:{id:n.SmallShieldDome,name:`小型护盾罩`,description:`保护星球的能量护盾`,cost:{metal:1e4,crystal:1e4,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:1,shield:2e3,armor:2e3,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:3}},[n.LargeShieldDome]:{id:n.LargeShieldDome,name:`大型护盾罩`,description:`强大的星球护盾`,cost:{metal:5e4,crystal:5e4,deuterium:0,darkMatter:0,energy:0},buildTime:60,attack:1,shield:1e4,armor:1e4,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.PlanetaryShield]:{id:n.PlanetaryShield,name:`行星护盾`,description:`保护行星免受毁灭攻击的超级护盾`,cost:{metal:2e6,crystal:2e6,deuterium:1e6,darkMatter:0,energy:0},buildTime:180,attack:1,shield:1e5,armor:1e5,requirements:{[e.Shipyard]:10,[t.EnergyTechnology]:10,[t.HyperspaceTechnology]:8}}};i.Commander,i.Commander,i.Admiral,i.Admiral,i.Engineer,i.Engineer,i.Geologist,i.Geologist,i.Technocrat,i.Technocrat,i.DarkMatterSpecialist,i.DarkMatterSpecialist;let s={SIMULATE_BATTLE:`SIMULATE_BATTLE`,CALCULATE_PLUNDER:`CALCULATE_PLUNDER`,CALCULATE_DEBRIS:`CALCULATE_DEBRIS`,SUCCESS:`SUCCESS`,ERROR:`ERROR`},c=(e,t=0,n=.1)=>Math.floor(e*(1+t*n)),l=(e,t=!1)=>{let n=[];if(e.ships){for(let[t,r]of Object.entries(e.ships))if(r>0){let i=a[t];n.push({type:t,count:r,attack:c(i.attack,e.weaponTech),shield:c(i.shield,e.shieldTech),armor:c(i.armor,e.armorTech)})}}if(t&&e.defense){for(let[t,r]of Object.entries(e.defense))if(r>0){let i=o[t];n.push({type:t,count:r,attack:c(i.attack,e.weaponTech),shield:c(i.shield,e.shieldTech),armor:c(i.armor,e.armorTech)})}}return n},u=(e,t)=>{let n=e.attack,r=t.shield,i=t.armor,a=0,o=0;if(n.01)return{destroyed:0,damagedShield:0};let s=n;if(s>r)s-=r,o=r;else return o=s,{destroyed:0,damagedShield:o};if(s>i)a=1;else{let e=s/i;Math.random(){let n={},i={},a={};for(let n of e)for(let e=0;e0){if(o.count-=s,Object.values(r).includes(o.type)){let e=o.type;i[e]=(i[e]||0)+s}else{let e=o.type;a[e]=(a[e]||0)+s}o.count<=0&&t.splice(e,1)}}for(let r of t)for(let t=0;t0){i.count-=a;let r=i.type;n[r]=(n[r]||0)+a,i.count<=0&&e.splice(t,1)}}let o=e.reduce((e,t)=>e+t.count*t.attack,0),s=t.reduce((e,t)=>e+t.count*t.attack,0);return{attackerLosses:n,defenderLosses:{fleet:i,defense:a},attackerRemainingPower:o,defenderRemainingPower:s}},f=(e,t,n=6)=>{let i=l(e,!1),a=l(t,!0),o={},s={},c={},u=[],f=0;for(let e=0;e0&&(p[e]=n,c[e]=t-n)}let m={};for(let e of i)e.count>0&&(m[e.type]=e.count);let h={},g={};for(let e of a)e.count>0&&(Object.values(r).includes(e.type)?h[e.type]=e.count:g[e.type]=e.count);for(let[e,t]of Object.entries(p))g[e]=(g[e]||0)+t;let _;return _=i.length===0&&a.length===0?`draw`:i.length===0?`defender`:a.length===0?`attacker`:`draw`,{winner:_,rounds:f,attackerLosses:o,defenderLosses:{fleet:s,defense:c},attackerRemaining:m,defenderRemaining:{fleet:h,defense:g},roundDetails:u}},p=(e,t)=>{let n=0;for(let[e,r]of Object.entries(t)){let t=a[e];n+=t.cargoCapacity*r}let r={metal:Math.floor(e.metal*.5),crystal:Math.floor(e.crystal*.5),deuterium:Math.floor(e.deuterium*.5),darkMatter:Math.floor(e.darkMatter*.5),energy:0},i=r.metal+r.crystal+r.deuterium+r.darkMatter;if(n>=i)return r;let o=n/i;return{metal:Math.floor(r.metal*o),crystal:Math.floor(r.crystal*o),deuterium:Math.floor(r.deuterium*o),darkMatter:Math.floor(r.darkMatter*o),energy:0}},m=(e,t)=>{let n=0,r=0;for(let[t,i]of Object.entries(e)){let e=a[t];n+=e.cost.metal*i*.3,r+=e.cost.crystal*i*.3}for(let[e,i]of Object.entries(t.fleet)){let t=a[e];n+=t.cost.metal*i*.3,r+=t.cost.crystal*i*.3}for(let[e,i]of Object.entries(t.defense)){let t=o[e];n+=t.cost.metal*i*.3,r+=t.cost.crystal*i*.3}return{metal:Math.floor(n),crystal:Math.floor(r),deuterium:0,darkMatter:0,energy:0}};self.onmessage=e=>{let{id:t,type:n,payload:r}=e.data;try{let e;switch(n){case s.SIMULATE_BATTLE:{let{attacker:t,defender:n,maxRounds:i=6}=r;e=f(t,n,i);break}case s.CALCULATE_PLUNDER:{let{defenderResources:t,attackerFleet:n}=r;e=p(t,n);break}case s.CALCULATE_DEBRIS:{let{attackerLosses:t,defenderLosses:n}=r;e=m(t,n);break}default:throw Error(`Unknown message type: ${n}`)}let i={id:t,type:s.SUCCESS,success:!0,data:e};self.postMessage(i)}catch(e){let n={id:t,type:s.ERROR,success:!1,error:e instanceof Error?e.message:String(e)};self.postMessage(n)}}})(); \ No newline at end of file diff --git a/docs/assets/game-config-D-D7cMgJ.js b/docs/assets/game-config-D-D7cMgJ.js new file mode 100644 index 0000000..7b2f1a3 --- /dev/null +++ b/docs/assets/game-config-D-D7cMgJ.js @@ -0,0 +1 @@ +const e={MetalMine:`metalMine`,CrystalMine:`crystalMine`,DeuteriumSynthesizer:`deuteriumSynthesizer`,SolarPlant:`solarPlant`,RoboticsFactory:`roboticsFactory`,NaniteFactory:`naniteFactory`,Shipyard:`shipyard`,ResearchLab:`researchLab`,MetalStorage:`metalStorage`,CrystalStorage:`crystalStorage`,DeuteriumTank:`deuteriumTank`,DarkMatterCollector:`darkMatterCollector`,Terraformer:`terraformer`,LunarBase:`lunarBase`,SensorPhalanx:`sensorPhalanx`,JumpGate:`jumpGate`,PlanetDestroyerFactory:`planetDestroyerFactory`},t={EnergyTechnology:`energyTechnology`,LaserTechnology:`laserTechnology`,IonTechnology:`ionTechnology`,HyperspaceTechnology:`hyperspaceTechnology`,PlasmaTechnology:`plasmaTechnology`,ComputerTechnology:`computerTechnology`,CombustionDrive:`combustionDrive`,ImpulseDrive:`impulseDrive`,HyperspaceDrive:`hyperspaceDrive`,DarkMatterTechnology:`darkMatterTechnology`,TerraformingTechnology:`terraformingTechnology`,PlanetDestructionTech:`planetDestructionTech`},n={RocketLauncher:`rocketLauncher`,LightLaser:`lightLaser`,HeavyLaser:`heavyLaser`,GaussCannon:`gaussCannon`,IonCannon:`ionCannon`,PlasmaTurret:`plasmaTurret`,SmallShieldDome:`smallShieldDome`,LargeShieldDome:`largeShieldDome`,PlanetaryShield:`planetaryShield`},r={LightFighter:`lightFighter`,HeavyFighter:`heavyFighter`,Cruiser:`cruiser`,Battleship:`battleship`,SmallCargo:`smallCargo`,LargeCargo:`largeCargo`,ColonyShip:`colonyShip`,Recycler:`recycler`,EspionageProbe:`espionageProbe`,DarkMatterHarvester:`darkMatterHarvester`,Deathstar:`deathstar`},i={Attack:`attack`,Transport:`transport`,Colonize:`colonize`,Spy:`spy`,Deploy:`deploy`,Expedition:`expedition`,HarvestDarkMatter:`harvestDarkMatter`,Recycle:`recycle`,Destroy:`destroy`},a={Commander:`commander`,Admiral:`admiral`,Engineer:`engineer`,Geologist:`geologist`,Technocrat:`technocrat`,DarkMatterSpecialist:`darkMatterSpecialist`},o={[e.MetalMine]:{id:e.MetalMine,name:`金属矿`,description:`开采金属资源`,baseCost:{metal:60,crystal:15,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.5,spaceUsage:1,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.CrystalMine]:{id:e.CrystalMine,name:`晶体矿`,description:`开采晶体资源`,baseCost:{metal:48,crystal:24,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.6,spaceUsage:1,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.DeuteriumSynthesizer]:{id:e.DeuteriumSynthesizer,name:`重氢合成器`,description:`合成重氢资源`,baseCost:{metal:225,crystal:75,deuterium:0,darkMatter:0,energy:0},baseTime:20,costMultiplier:1.5,spaceUsage:2,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.SolarPlant]:{id:e.SolarPlant,name:`太阳能电站`,description:`提供能源`,baseCost:{metal:75,crystal:30,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.5,spaceUsage:2,levelRequirements:{15:{[e.RoboticsFactory]:3},25:{[e.RoboticsFactory]:6,[e.ResearchLab]:5},35:{[e.NaniteFactory]:1,[e.ResearchLab]:10}}},[e.RoboticsFactory]:{id:e.RoboticsFactory,name:`机器人工厂`,description:`加快建造速度`,baseCost:{metal:400,crystal:120,deuterium:200,darkMatter:0,energy:0},baseTime:40,costMultiplier:2,spaceUsage:4,requirements:{[e.MetalMine]:2,[e.CrystalMine]:2,[e.DeuteriumSynthesizer]:2},levelRequirements:{5:{[e.ResearchLab]:3,[e.SolarPlant]:8},8:{[e.ResearchLab]:6,[e.SolarPlant]:12,[e.MetalMine]:12,[e.CrystalMine]:12},10:{[e.ResearchLab]:8,[e.NaniteFactory]:1}}},[e.NaniteFactory]:{id:e.NaniteFactory,name:`纳米工厂`,description:`增加建造队列数量,每级+1队列`,baseCost:{metal:1e6,crystal:5e5,deuterium:1e5,darkMatter:0,energy:0},baseTime:240,costMultiplier:2,spaceUsage:8,maxLevel:10,requirements:{[e.RoboticsFactory]:10},levelRequirements:{3:{[e.ResearchLab]:10,[e.Shipyard]:8,[t.ComputerTechnology]:8},5:{[e.ResearchLab]:12,[e.Shipyard]:10,[t.ComputerTechnology]:10}}},[e.Shipyard]:{id:e.Shipyard,name:`船坞`,description:`建造舰船`,baseCost:{metal:400,crystal:200,deuterium:100,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,spaceUsage:5,fleetStorageBonus:1e3,requirements:{[e.RoboticsFactory]:2},levelRequirements:{8:{[e.RoboticsFactory]:5,[e.ResearchLab]:5},12:{[e.RoboticsFactory]:8,[e.ResearchLab]:8,[e.NaniteFactory]:2}}},[e.ResearchLab]:{id:e.ResearchLab,name:`研究实验室`,description:`研究科技`,baseCost:{metal:200,crystal:400,deuterium:200,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,spaceUsage:3,requirements:{[e.MetalMine]:3,[e.CrystalMine]:3,[e.DeuteriumSynthesizer]:3},levelRequirements:{8:{[e.RoboticsFactory]:5,[e.MetalMine]:10,[e.CrystalMine]:10,[e.DeuteriumSynthesizer]:10},12:{[e.RoboticsFactory]:8,[e.NaniteFactory]:1,[t.EnergyTechnology]:5}}},[e.MetalStorage]:{id:e.MetalStorage,name:`金属仓库`,description:`增加金属存储上限`,baseCost:{metal:1e3,crystal:0,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.MetalMine]:2},levelRequirements:{8:{[e.MetalMine]:15,[e.RoboticsFactory]:3},12:{[e.MetalMine]:25,[e.RoboticsFactory]:6}}},[e.CrystalStorage]:{id:e.CrystalStorage,name:`晶体仓库`,description:`增加晶体存储上限`,baseCost:{metal:1e3,crystal:500,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.CrystalMine]:2},levelRequirements:{8:{[e.CrystalMine]:15,[e.RoboticsFactory]:3},12:{[e.CrystalMine]:25,[e.RoboticsFactory]:6}}},[e.DeuteriumTank]:{id:e.DeuteriumTank,name:`重氢罐`,description:`增加重氢存储上限`,baseCost:{metal:1e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.DeuteriumSynthesizer]:2},levelRequirements:{8:{[e.DeuteriumSynthesizer]:15,[e.RoboticsFactory]:3},12:{[e.DeuteriumSynthesizer]:25,[e.RoboticsFactory]:6}}},[e.DarkMatterCollector]:{id:e.DarkMatterCollector,name:`暗物质收集器`,description:`收集稀有的暗物质资源`,baseCost:{metal:5e4,crystal:1e5,deuterium:5e4,darkMatter:0,energy:0},baseTime:90,costMultiplier:2,spaceUsage:6,planetOnly:!0,requirements:{[e.ResearchLab]:5,[t.DarkMatterTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:8,[t.DarkMatterTechnology]:3,[e.RoboticsFactory]:8},8:{[e.ResearchLab]:10,[t.DarkMatterTechnology]:5,[e.NaniteFactory]:2}}},[e.Terraformer]:{id:e.Terraformer,name:`地形改造器`,description:`改造行星地形,每级增加5个可用空间`,baseCost:{metal:0,crystal:5e4,deuterium:1e5,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,spaceUsage:5,planetOnly:!0,requirements:{[e.ResearchLab]:10,[e.RoboticsFactory]:8,[t.TerraformingTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:12,[t.TerraformingTechnology]:3,[e.NaniteFactory]:1},8:{[e.ResearchLab]:14,[t.TerraformingTechnology]:5,[e.NaniteFactory]:3}}},[e.LunarBase]:{id:e.LunarBase,name:`月球基地`,description:`增加月球可用空间`,baseCost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:0,energy:0},baseTime:45,costMultiplier:2,spaceUsage:0,moonOnly:!0,levelRequirements:{5:{[e.RoboticsFactory]:5},8:{[e.RoboticsFactory]:8,[e.NaniteFactory]:1}}},[e.SensorPhalanx]:{id:e.SensorPhalanx,name:`传感器阵列`,description:`侦测周围星系的舰队活动`,baseCost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,spaceUsage:6,moonOnly:!0,requirements:{[e.LunarBase]:1},levelRequirements:{5:{[e.LunarBase]:5,[t.ComputerTechnology]:5},8:{[e.LunarBase]:8,[t.ComputerTechnology]:8,[e.NaniteFactory]:2}}},[e.JumpGate]:{id:e.JumpGate,name:`跳跃门`,description:`瞬间传送舰队到其他月球`,baseCost:{metal:2e6,crystal:4e6,deuterium:2e6,darkMatter:0,energy:0},baseTime:240,costMultiplier:2,spaceUsage:10,moonOnly:!0,maxLevel:5,requirements:{[e.LunarBase]:1,[t.HyperspaceTechnology]:7},levelRequirements:{3:{[e.LunarBase]:5,[t.HyperspaceTechnology]:10,[e.NaniteFactory]:3}}},[e.PlanetDestroyerFactory]:{id:e.PlanetDestroyerFactory,name:`行星毁灭者工厂`,description:`建造能够摧毁行星的终极武器`,baseCost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:0,energy:0},baseTime:300,costMultiplier:2,spaceUsage:15,planetOnly:!0,maxLevel:3,requirements:{[e.Shipyard]:12,[e.RoboticsFactory]:10,[e.NaniteFactory]:5,[t.PlanetDestructionTech]:1},levelRequirements:{3:{[e.Shipyard]:14,[e.NaniteFactory]:8,[t.PlanetDestructionTech]:3,[t.HyperspaceTechnology]:10}}}},s={[t.EnergyTechnology]:{id:t.EnergyTechnology,name:`能源技术`,description:`提高能源利用效率`,baseCost:{metal:0,crystal:800,deuterium:400,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,requirements:{[e.ResearchLab]:1},levelRequirements:{5:{[e.ResearchLab]:3,[e.SolarPlant]:10},8:{[e.ResearchLab]:5,[e.SolarPlant]:15,[e.RoboticsFactory]:3},12:{[e.ResearchLab]:8,[e.RoboticsFactory]:6,[e.NaniteFactory]:1}}},[t.LaserTechnology]:{id:t.LaserTechnology,name:`激光技术`,description:`开发激光武器`,baseCost:{metal:200,crystal:100,deuterium:0,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:1,[t.EnergyTechnology]:2},levelRequirements:{6:{[e.ResearchLab]:5,[t.EnergyTechnology]:5,[e.Shipyard]:3},10:{[e.ResearchLab]:8,[t.EnergyTechnology]:8,[e.Shipyard]:6}}},[t.IonTechnology]:{id:t.IonTechnology,name:`离子技术`,description:`开发离子武器`,baseCost:{metal:1e3,crystal:300,deuterium:100,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:4,[t.LaserTechnology]:5,[t.EnergyTechnology]:4},levelRequirements:{5:{[e.ResearchLab]:8,[t.LaserTechnology]:10,[t.EnergyTechnology]:8},8:{[e.ResearchLab]:10,[t.LaserTechnology]:12,[e.NaniteFactory]:2}}},[t.HyperspaceTechnology]:{id:t.HyperspaceTechnology,name:`超空间技术`,description:`研究超空间跳跃`,baseCost:{metal:0,crystal:4e3,deuterium:2e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:7,[t.EnergyTechnology]:5},levelRequirements:{5:{[e.ResearchLab]:10,[t.EnergyTechnology]:8,[e.Shipyard]:5},8:{[e.ResearchLab]:12,[t.EnergyTechnology]:10,[e.NaniteFactory]:2}}},[t.PlasmaTechnology]:{id:t.PlasmaTechnology,name:`等离子技术`,description:`开发等离子武器`,baseCost:{metal:2e3,crystal:4e3,deuterium:1e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:4,[t.EnergyTechnology]:8,[t.LaserTechnology]:10,[t.IonTechnology]:5},levelRequirements:{5:{[e.ResearchLab]:10,[t.EnergyTechnology]:12,[t.IonTechnology]:8,[e.NaniteFactory]:1},8:{[e.ResearchLab]:12,[t.EnergyTechnology]:15,[t.IonTechnology]:10,[e.NaniteFactory]:3}}},[t.ComputerTechnology]:{id:t.ComputerTechnology,name:`计算机技术`,description:`增加研究队列数量,每级+1队列`,baseCost:{metal:0,crystal:400,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,fleetStorageBonus:500,maxLevel:10,requirements:{[e.ResearchLab]:1},levelRequirements:{3:{[e.ResearchLab]:5},5:{[e.ResearchLab]:8,[e.RoboticsFactory]:5},8:{[e.ResearchLab]:10,[e.NaniteFactory]:2}}},[t.CombustionDrive]:{id:t.CombustionDrive,name:`燃烧引擎`,description:`基础推进系统`,baseCost:{metal:400,crystal:0,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:1,[t.EnergyTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:5,[t.EnergyTechnology]:3,[e.Shipyard]:2},8:{[e.ResearchLab]:8,[t.EnergyTechnology]:5,[e.Shipyard]:5}}},[t.ImpulseDrive]:{id:t.ImpulseDrive,name:`脉冲引擎`,description:`高级推进系统`,baseCost:{metal:2e3,crystal:4e3,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:2,[t.EnergyTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:6,[t.EnergyTechnology]:4,[e.Shipyard]:3},8:{[e.ResearchLab]:8,[t.EnergyTechnology]:6,[e.Shipyard]:6}}},[t.HyperspaceDrive]:{id:t.HyperspaceDrive,name:`超空间引擎`,description:`超空间推进系统`,baseCost:{metal:1e4,crystal:2e4,deuterium:6e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:7,[t.HyperspaceTechnology]:3},levelRequirements:{5:{[e.ResearchLab]:10,[t.HyperspaceTechnology]:6,[e.Shipyard]:8},8:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:8,[e.NaniteFactory]:3}}},[t.DarkMatterTechnology]:{id:t.DarkMatterTechnology,name:`暗物质技术`,description:`研究暗物质的性质和应用`,baseCost:{metal:1e5,crystal:2e5,deuterium:1e5,darkMatter:0,energy:0},baseTime:180,costMultiplier:2,requirements:{[e.ResearchLab]:8,[t.HyperspaceTechnology]:5},levelRequirements:{3:{[e.ResearchLab]:10,[t.HyperspaceTechnology]:8,[e.RoboticsFactory]:10,[t.EnergyTechnology]:10},5:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:10,[e.NaniteFactory]:2,[t.EnergyTechnology]:12}}},[t.TerraformingTechnology]:{id:t.TerraformingTechnology,name:`地形改造技术`,description:`研究行星地形改造技术,每级为所有行星增加5个可用空间`,baseCost:{metal:0,crystal:2e4,deuterium:4e4,darkMatter:0,energy:0},baseTime:90,costMultiplier:2,requirements:{[e.ResearchLab]:8,[t.EnergyTechnology]:6},levelRequirements:{5:{[e.ResearchLab]:12,[t.EnergyTechnology]:10,[e.RoboticsFactory]:10},8:{[e.ResearchLab]:14,[t.EnergyTechnology]:12,[e.NaniteFactory]:3}}},[t.PlanetDestructionTech]:{id:t.PlanetDestructionTech,name:`行星毁灭技术`,description:`研究如何摧毁整个行星的恐怖技术`,baseCost:{metal:4e6,crystal:8e6,deuterium:4e6,darkMatter:0,energy:0},baseTime:300,costMultiplier:2,maxLevel:5,requirements:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:8,[t.HyperspaceDrive]:6,[t.PlasmaTechnology]:7},levelRequirements:{3:{[e.ResearchLab]:14,[t.HyperspaceTechnology]:12,[t.HyperspaceDrive]:10,[t.PlasmaTechnology]:10,[e.NaniteFactory]:5}}}},c={[r.LightFighter]:{id:r.LightFighter,name:`轻型战斗机`,description:`基础战斗单位`,cost:{metal:3e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,cargoCapacity:50,attack:50,shield:10,armor:400,speed:12500,fuelConsumption:20,storageUsage:5,requirements:{[e.Shipyard]:1,[t.CombustionDrive]:1}},[r.HeavyFighter]:{id:r.HeavyFighter,name:`重型战斗机`,description:`强力战斗单位`,cost:{metal:6e3,crystal:4e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:100,attack:150,shield:25,armor:1e3,speed:1e4,fuelConsumption:75,storageUsage:10,requirements:{[e.Shipyard]:3,[t.ImpulseDrive]:2}},[r.Cruiser]:{id:r.Cruiser,name:`巡洋舰`,description:`中型战舰`,cost:{metal:2e4,crystal:7e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:800,attack:400,shield:50,armor:2700,speed:15e3,fuelConsumption:300,storageUsage:15,requirements:{[e.Shipyard]:5,[t.ImpulseDrive]:4,[t.IonTechnology]:2}},[r.Battleship]:{id:r.Battleship,name:`战列舰`,description:`重型战舰`,cost:{metal:45e3,crystal:15e3,deuterium:0,darkMatter:0,energy:0},buildTime:90,cargoCapacity:1500,attack:1e3,shield:200,armor:6e3,speed:1e4,fuelConsumption:500,storageUsage:25,requirements:{[e.Shipyard]:7,[t.HyperspaceDrive]:4}},[r.SmallCargo]:{id:r.SmallCargo,name:`小型运输船`,description:`运输资源`,cost:{metal:2e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:15,cargoCapacity:5e3,attack:5,shield:10,armor:400,speed:5e3,fuelConsumption:10,storageUsage:10,requirements:{[e.Shipyard]:2,[t.CombustionDrive]:2}},[r.LargeCargo]:{id:r.LargeCargo,name:`大型运输船`,description:`大量运输资源`,cost:{metal:6e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:25e3,attack:5,shield:25,armor:1200,speed:7500,fuelConsumption:50,storageUsage:20,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.ColonyShip]:{id:r.ColonyShip,name:`殖民船`,description:`建立新殖民地`,cost:{metal:1e4,crystal:2e4,deuterium:1e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:7500,attack:50,shield:100,armor:3e3,speed:2500,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:4,[t.ImpulseDrive]:3}},[r.Recycler]:{id:r.Recycler,name:`回收船`,description:`回收废墟资源`,cost:{metal:1e4,crystal:6e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:2e4,attack:1,shield:10,armor:1600,speed:2e3,fuelConsumption:300,storageUsage:30,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.EspionageProbe]:{id:r.EspionageProbe,name:`间谍探测器`,description:`侦察敌方星球`,cost:{metal:0,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:5,cargoCapacity:5,attack:0,shield:0,armor:100,speed:1e8,fuelConsumption:1,storageUsage:2,requirements:{[e.Shipyard]:3,[t.CombustionDrive]:3}},[r.DarkMatterHarvester]:{id:r.DarkMatterHarvester,name:`暗物质采集船`,description:`专门用于采集暗物质的特殊飞船`,cost:{metal:1e5,crystal:15e4,deuterium:5e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:1e3,attack:10,shield:50,armor:2e3,speed:5e3,fuelConsumption:500,storageUsage:50,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.DarkMatterTechnology]:1}},[r.Deathstar]:{id:r.Deathstar,name:`死星`,description:`终极武器,能够摧毁整个行星`,cost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:0,energy:0},buildTime:600,cargoCapacity:1e6,attack:2e5,shield:5e4,armor:9e5,speed:100,fuelConsumption:1,storageUsage:100,requirements:{[e.PlanetDestroyerFactory]:10,[t.PlanetDestructionTech]:7,[t.HyperspaceDrive]:7}}},l={[n.RocketLauncher]:{id:n.RocketLauncher,name:`火箭发射器`,description:`基础防御设施`,cost:{metal:2e3,crystal:0,deuterium:0,darkMatter:0,energy:0},buildTime:10,attack:80,shield:20,armor:200,requirements:{[e.Shipyard]:1}},[n.LightLaser]:{id:n.LightLaser,name:`轻型激光炮`,description:`激光防御武器`,cost:{metal:1500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildTime:12,attack:100,shield:25,armor:200,requirements:{[e.Shipyard]:2,[t.LaserTechnology]:3}},[n.HeavyLaser]:{id:n.HeavyLaser,name:`重型激光炮`,description:`强力激光武器`,cost:{metal:6e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,attack:250,shield:100,armor:800,requirements:{[e.Shipyard]:4,[t.LaserTechnology]:6}},[n.GaussCannon]:{id:n.GaussCannon,name:`高斯炮`,description:`电磁加速武器`,cost:{metal:2e4,crystal:15e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:35,attack:1100,shield:200,armor:3500,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.IonCannon]:{id:n.IonCannon,name:`离子炮`,description:`离子武器系统`,cost:{metal:2e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:150,shield:500,armor:800,requirements:{[e.Shipyard]:4,[t.IonTechnology]:4}},[n.PlasmaTurret]:{id:n.PlasmaTurret,name:`等离子炮台`,description:`最强防御武器`,cost:{metal:5e4,crystal:5e4,deuterium:3e4,darkMatter:0,energy:0},buildTime:60,attack:3e3,shield:300,armor:1e4,requirements:{[e.Shipyard]:8,[t.PlasmaTechnology]:7}},[n.SmallShieldDome]:{id:n.SmallShieldDome,name:`小型护盾罩`,description:`保护星球的能量护盾`,cost:{metal:1e4,crystal:1e4,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:1,shield:2e3,armor:2e3,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:3}},[n.LargeShieldDome]:{id:n.LargeShieldDome,name:`大型护盾罩`,description:`强大的星球护盾`,cost:{metal:5e4,crystal:5e4,deuterium:0,darkMatter:0,energy:0},buildTime:60,attack:1,shield:1e4,armor:1e4,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.PlanetaryShield]:{id:n.PlanetaryShield,name:`行星护盾`,description:`保护行星免受毁灭攻击的超级护盾`,cost:{metal:2e6,crystal:2e6,deuterium:1e6,darkMatter:0,energy:0},buildTime:180,attack:1,shield:1e5,armor:1e5,requirements:{[e.Shipyard]:10,[t.EnergyTechnology]:10,[t.HyperspaceTechnology]:8}}},u={[a.Commander]:{id:a.Commander,name:`指挥官`,description:`提升建筑速度和管理能力`,cost:{metal:0,crystal:5e4,deuterium:25e3,darkMatter:0,energy:0},weeklyMaintenance:{metal:0,crystal:5e3,deuterium:2500,darkMatter:0,energy:0},benefits:{buildingSpeedBonus:10,additionalBuildQueue:1,storageCapacityBonus:10}},[a.Admiral]:{id:a.Admiral,name:`上将`,description:`提升舰队作战能力`,cost:{metal:5e4,crystal:25e3,deuterium:0,darkMatter:0,energy:0},weeklyMaintenance:{metal:5e3,crystal:2500,deuterium:0,darkMatter:0,energy:0},benefits:{additionalFleetSlots:2,fleetSpeedBonus:10,fuelConsumptionReduction:10}},[a.Engineer]:{id:a.Engineer,name:`工程师`,description:`增强防御和能量系统`,cost:{metal:4e4,crystal:2e4,deuterium:1e4,darkMatter:0,energy:0},weeklyMaintenance:{metal:4e3,crystal:2e3,deuterium:1e3,darkMatter:0,energy:0},benefits:{defenseBonus:15,energyProductionBonus:10,buildingSpeedBonus:5}},[a.Geologist]:{id:a.Geologist,name:`地质学家`,description:`提高资源开采效率`,cost:{metal:3e4,crystal:3e4,deuterium:2e4,darkMatter:0,energy:0},weeklyMaintenance:{metal:3e3,crystal:3e3,deuterium:2e3,darkMatter:0,energy:0},benefits:{resourceProductionBonus:15,storageCapacityBonus:10}},[a.Technocrat]:{id:a.Technocrat,name:`技术专家`,description:`加快科技研究速度`,cost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:0,energy:0},weeklyMaintenance:{metal:2e3,crystal:4e3,deuterium:2e3,darkMatter:0,energy:0},benefits:{researchSpeedBonus:15}},[a.DarkMatterSpecialist]:{id:a.DarkMatterSpecialist,name:`暗物质专家`,description:`提升暗物质采集效率`,cost:{metal:5e4,crystal:1e5,deuterium:5e4,darkMatter:100,energy:0},weeklyMaintenance:{metal:5e3,crystal:1e4,deuterium:5e3,darkMatter:10,energy:0},benefits:{darkMatterProductionBonus:25}}},d={minDebrisField:1e5,baseChance:1,maxChance:20,chancePerDebris:1e5,baseSize:60,lunarBaseSpaceBonus:5},f={baseSize:200,terraformerSpaceBonus:5,terraformingTechSpaceBonus:3},p={baseStorage:1e3,shipyardBonus:1e3,computerTechBonus:500},m={SIMULATE_BATTLE:`SIMULATE_BATTLE`,CALCULATE_PLUNDER:`CALCULATE_PLUNDER`,CALCULATE_DEBRIS:`CALCULATE_DEBRIS`,SUCCESS:`SUCCESS`,ERROR:`ERROR`};export{d as a,c,n as d,i as f,t as h,p as i,s as l,r as m,o as n,u as o,a as p,l as r,f as s,m as t,e as u}; \ No newline at end of file diff --git a/docs/assets/game-i18n-DEf7ySVe.js b/docs/assets/game-i18n-DEf7ySVe.js new file mode 100644 index 0000000..071f1f2 --- /dev/null +++ b/docs/assets/game-i18n-DEf7ySVe.js @@ -0,0 +1,57 @@ +var e={common:{confirm:`确认`,cancel:`取消`,delete:`删除`,edit:`编辑`,save:`保存`,close:`关闭`,back:`返回`,next:`下一步`,previous:`上一步`,submit:`提交`,reset:`重置`,search:`搜索`,filter:`筛选`,loading:`加载中...`,noData:`暂无数据`,error:`错误`,success:`成功`,warning:`警告`,info:`信息`,resourceType:`资源类型`,playerName:`指挥官`,timeHour:`时`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`功能已锁定`,unlockRequired:`需要解锁前置建筑`,requiredBuilding:`所需建筑`,currentLevel:`当前等级`,goToBuildings:`前往建筑页面`,locked:`已锁定`,viewRequirements:`查看前置条件`,requirementsNotMet:`前置条件未满足`,current:`当前`,level:`等级`},errors:{requirementsNotMet:`不满足前置条件`,insufficientResources:`资源不足`,insufficientFleetStorage:`舰队仓储空间不足`,shieldDomeLimit:`护盾罩数量限制`,fleetMissionsFull:`舰队任务槽位已满`,insufficientFleet:`舰队数量不足`,insufficientFuel:`燃料不足`,planetOnly:`该建筑只能在行星上建造`,moonOnly:`该建筑只能在月球上建造`,buildQueueFull:`建造队列已满`,insufficientSpace:`空间不足`,buildingLevelZero:`建筑等级为0,无法拆除`,researchQueueFull:`研究队列已满`,moonExists:`已存在月球`,insufficientDebris:`残骸场不足`},nav:{overview:`总览`,buildings:`建筑`,research:`研究`,shipyard:`船坞`,defense:`防御`,fleet:`舰队`,officers:`军官`,simulator:`模拟`,galaxy:`星系`,messages:`消息`,settings:`设置`,gm:`GM`},sidebar:{language:`语言`,lightMode:`日间模式`,darkMode:`夜间模式`,collapse:`收起菜单`,expand:`展开菜单`},resources:{metal:`金属`,crystal:`晶体`,deuterium:`重氢`,darkMatter:`暗物质`,energy:`能量`,production:`产量`,consumption:`消耗`,capacity:`容量`,current:`当前储量`,max:`最大容量`,perHour:`小时`,perMinute:`分钟`,hour:`小时`,noEnergy:`能量不足`},planet:{planet:`星球`,moon:`月球`,colony:`殖民地`,position:`位置`,coordinates:`坐标`,switchToMoon:`查看月球`,backToPlanet:`返回母星`,fields:`场地`,temperature:`温度`,homePlanet:`母星`,planetPrefix:`星球`,moonSuffix:`的月球`,colonyPrefix:`殖民地`},player:{points:`总积分`},buildings:{metalMine:`金属矿`,crystalMine:`晶体矿`,deuteriumSynthesizer:`重氢合成器`,solarPlant:`太阳能电站`,roboticsFactory:`机器人工厂`,naniteFactory:`纳米工厂`,shipyard:`船坞`,researchLab:`研究实验室`,metalStorage:`金属仓库`,crystalStorage:`晶体仓库`,deuteriumTank:`重氢罐`,darkMatterCollector:`暗物质收集器`,terraformer:`地形改造器`,lunarBase:`月球基地`,sensorPhalanx:`传感器阵列`,jumpGate:`跳跃门`,planetDestroyerFactory:`行星毁灭者工厂`,buildTime:`建造时间`,production:`产量`,consumption:`消耗`,totalCost:`累积成本`,totalPoints:`累积积分`,levelRange:`等级范围`},buildingDescriptions:{metalMine:`开采金属资源`,crystalMine:`开采晶体资源`,deuteriumSynthesizer:`合成重氢资源`,solarPlant:`提供能源`,roboticsFactory:`加快建造速度`,naniteFactory:`增加建造队列数量,每级+1队列(最多10级)`,shipyard:`建造舰船`,researchLab:`研究科技`,metalStorage:`增加金属存储上限`,crystalStorage:`增加晶体存储上限`,deuteriumTank:`增加重氢存储上限`,darkMatterCollector:`收集稀有的暗物质资源`,terraformer:`改造行星地形,每级增加5个可用空间`,lunarBase:`增加月球可用空间,每级+5空间`,sensorPhalanx:`侦测周围星系的舰队活动`,jumpGate:`瞬间传送舰队到其他月球`,planetDestroyerFactory:`建造能够摧毁行星的终极武器`},ships:{lightFighter:`轻型战斗机`,heavyFighter:`重型战斗机`,cruiser:`巡洋舰`,battleship:`战列舰`,smallCargo:`小型运输船`,largeCargo:`大型运输船`,colonyShip:`殖民船`,recycler:`回收船`,espionageProbe:`间谍探测器`,darkMatterHarvester:`暗物质采集船`,deathstar:`死星`},shipDescriptions:{lightFighter:`基础战斗单位`,heavyFighter:`重装战斗机`,cruiser:`中型战舰,攻守平衡`,battleship:`强力战舰`,smallCargo:`运输少量资源`,largeCargo:`运输大量资源`,colonyShip:`用于殖民新星球`,recycler:`收集残骸场资源`,espionageProbe:`侦察敌方星球`,darkMatterHarvester:`专门用于采集暗物质的特殊飞船`,deathstar:`终极武器,能够摧毁整个行星`},defenses:{rocketLauncher:`火箭发射器`,lightLaser:`轻型激光炮`,heavyLaser:`重型激光炮`,gaussCannon:`高斯炮`,ionCannon:`离子炮`,plasmaTurret:`等离子炮塔`,smallShieldDome:`小型护盾罩`,largeShieldDome:`大型护盾罩`,planetaryShield:`行星护盾`},defenseDescriptions:{rocketLauncher:`基础防御设施`,lightLaser:`轻型能量武器`,heavyLaser:`重型能量武器`,gaussCannon:`高速动能武器`,ionCannon:`破坏护盾的利器`,plasmaTurret:`强力防御设施`,smallShieldDome:`保护整个星球的小型护盾`,largeShieldDome:`保护整个星球的大型护盾`,planetaryShield:`保护行星免受毁灭攻击的超级护盾`},research:{researchTime:`研究时间`,totalCost:`累积成本`,totalPoints:`累积积分`,levelRange:`等级范围`},technologies:{energyTechnology:`能源技术`,laserTechnology:`激光技术`,ionTechnology:`离子技术`,hyperspaceTechnology:`超空间技术`,plasmaTechnology:`等离子技术`,computerTechnology:`计算机技术`,combustionDrive:`燃烧引擎`,impulseDrive:`脉冲引擎`,hyperspaceDrive:`超空间引擎`,darkMatterTechnology:`暗物质技术`,terraformingTechnology:`地形改造技术`,planetDestructionTech:`行星毁灭技术`},technologyDescriptions:{energyTechnology:`提高能源利用效率`,laserTechnology:`激光武器和防御的基础`,ionTechnology:`离子武器技术`,hyperspaceTechnology:`超空间跳跃技术`,plasmaTechnology:`等离子武器技术`,computerTechnology:`增加研究队列数量,每级+1队列(最多10级)`,combustionDrive:`基础推进技术`,impulseDrive:`中级推进技术`,hyperspaceDrive:`高级推进技术`,darkMatterTechnology:`研究暗物质的性质和应用`,terraformingTechnology:`研究行星地形改造技术,每级为所有行星增加3个可用空间`,planetDestructionTech:`研究如何摧毁整个行星的恐怖技术`},officers:{commander:`指挥官`,admiral:`上将`,engineer:`工程师`,geologist:`地质学家`,technocrat:`技术专家`,darkMatterSpecialist:`暗物质专家`,resourceBonus:`资源产量加成`,darkMatterBonus:`暗物质产量加成`,energyBonus:`能量产量加成`},officerDescriptions:{commander:`提升建筑速度和管理能力`,admiral:`提升舰队战斗力和速度`,engineer:`提升能源和防御能力`,geologist:`提升资源产量`,technocrat:`提升研究速度和间谍能力`,darkMatterSpecialist:`提升暗物质采集效率`},queue:{buildQueue:`建造队列`,researchQueue:`研究队列`,building:`建造中`,researching:`研究中`,remaining:`剩余时间`,cancel:`取消`,cancelBuild:`取消建造`,cancelResearch:`取消研究`,confirmCancel:`确定要取消吗?将返还50%的资源。`,level:`等级`,quantity:`数量`,upgradeToLevel:`升级到等级`},overview:{title:`星球总览`,resourceOverview:`资源概览`,fleetInfo:`舰队`,currentShips:`当前星球的舰船数量`,productionSources:`资源获取来源`,productionSourcesDesc:`详细的资源产量及加成信息`,consumptionSources:`能量消耗来源`,consumptionSourcesDesc:`各建筑的能量消耗详情`,totalProduction:`总产量`,totalConsumption:`总消耗`,noConsumption:`当前无能量消耗`},buildingsView:{title:`建筑`,usedSpace:`已用空间`,spaceUsage:`占用空间`,level:`等级`,upgradeCost:`升级消耗`,buildTime:`建造时间`,upgrade:`升级`,maxLevelReached:`等级已满`,requirementsNotMet:`条件不足`,upgradeFailed:`升级失败`,upgradeFailedMessage:`请检查资源是否足够、空间是否充足或是否有其他建造任务。`,demolish:`拆除`,demolishRefund:`拆除返还`,demolishFailed:`拆除失败`,demolishFailedMessage:`无法拆除该建筑,请检查建造队列是否已满或建筑等级是否为0。`},researchView:{title:`研究`,researchCost:`研究消耗`,research:`研究`,maxLevelReached:`等级已满`,researchFailed:`研究失败`,researchFailedMessage:`请检查资源是否足够、前置条件是否满足,或是否有其他研究任务。`},shipyard:{attack:`攻击力`,shield:`护盾`,armor:`装甲`,speed:`速度`,cargoCapacity:`载货量`,fuelConsumption:`燃料消耗`,buildCost:`建造成本`,buildTime:`建造时间`,perUnit:`每个单位`,batchCalculator:`批量建造计算器`,quantity:`数量`,totalCost:`总成本`,totalTime:`总时间`},shipyardView:{title:`船坞`,fleetStorage:`舰队仓储`,attack:`攻击力`,shield:`护盾`,speed:`速度`,cargoCapacity:`载货量`,unitCost:`单位成本`,buildQuantity:`建造数量`,totalCost:`总成本`,build:`建造`,inputError:`输入错误`,inputErrorMessage:`请输入建造数量!`,buildFailed:`建造失败`,buildFailedMessage:`请检查资源是否足够或前置条件是否满足。`},defense:{attack:`攻击力`,shield:`护盾`,armor:`装甲`,buildCost:`建造成本`,buildTime:`建造时间`,perUnit:`每个单位`,batchCalculator:`批量建造计算器`,quantity:`数量`,totalCost:`总成本`,totalTime:`总时间`},defenseView:{title:`防御设施`,attack:`攻击力`,shield:`护盾`,armor:`装甲`,buildTime:`建造时间`,seconds:`秒`,unitCost:`单位成本`,buildQuantity:`建造数量`,totalCost:`总成本`,build:`建造`,shieldDomeBuilt:`护盾罩已建造`,inputError:`输入错误`,inputErrorMessage:`请输入建造数量!`,buildFailed:`建造失败`,buildFailedMessage:`请检查资源是否足够或前置条件是否满足。护盾罩只能建造一个。`},fleetView:{title:`舰队管理`,fleetOverview:`舰队总览`,sendFleet:`派遣舰队`,flightMissions:`飞行任务`,currentPlanetFleet:`当前星球舰队`,attack:`攻击`,shield:`护盾`,armor:`装甲`,speed:`速度`,cargo:`载货`,selectFleet:`选择舰队`,selectFleetDescription:`选择要派遣的舰船数量`,available:`可用`,all:`全部`,targetCoordinates:`目标坐标`,galaxy:`银河系`,system:`星系`,position:`位置`,missionType:`任务类型`,missionInfo:`任务信息`,fuelConsumption:`燃料消耗`,flightTime:`飞行时间`,attackMission:`攻击`,transport:`运输`,colonize:`殖民`,spy:`侦察`,deploy:`部署`,recycle:`回收`,destroy:`行星毁灭`,transportResources:`运输资源`,totalCargoCapacity:`总载货量`,used:`已用`,noFlightMissions:`暂无飞行任务`,outbound:`前往`,returning:`返回`,fleetComposition:`舰队组成`,carryingResources:`携带资源`,arrivalTime:`到达时间`,returnTime:`返回时间`,recallFleet:`召回舰队`,sendFailed:`派遣失败`,sendFailedMessage:`请检查舰队数量、燃料是否充足,或载货量是否超出限制。`,recallFailed:`召回失败`,recallFailedMessage:`该任务无法召回。`,unknownPlanet:`未知星球`,fleetMissionSlots:`舰队任务槽位`,noShipsSelected:`未选择舰船`,cannotSendToOwnPlanet:`无法派遣舰队到自己的星球`,cargoExceedsCapacity:`载货量超出限制`,noColonyShip:`需要殖民船才能执行殖民任务`,noDebrisAtTarget:`目标坐标没有残骸场或残骸场已空`,noDeathstar:`需要死星才能执行毁灭任务`},officersView:{title:`军官`,activated:`已激活`,inactive:`未激活`,activeStatus:`激活状态`,expirationTime:`到期时间`,remainingTime:`剩余时间`,recruitCost:`招募成本`,days:`天`,benefitsBonus:`效果加成`,resourceProduction:`资源产量`,darkMatterProduction:`暗物质产量`,energyProduction:`电量产出`,buildingSpeed:`建筑速度`,researchSpeed:`研究速度`,fleetSpeed:`舰队速度`,fuelConsumption:`燃料消耗`,defense:`防御力`,storageCapacity:`仓储容量`,buildQueue:`建筑队列`,fleetSlots:`舰队槽位`,hire:`招募`,renew:`续约`,dismiss:`解雇`,hireTitle:`招募军官`,hireMessage:`确定要招募 {name} 吗?有效期为7天。`,renewTitle:`续约军官`,renewMessage:`确定要为 {name} 续约7天吗?`,dismissTitle:`解雇军官`,dismissMessage:`确定要解雇 {name} 吗?不会返还任何费用。`,hireFailed:`招募失败`,renewFailed:`续约失败`,insufficientResources:`资源不足!`},galaxyView:{title:`星系`,selectCoordinates:`选择坐标`,galaxy:`银河系`,selectGalaxy:`选择银河系`,system:`星系`,selectSystem:`选择星系`,view:`查看`,myPlanet:`我的星球`,totalPositions:`共10个星球位置`,mine:`我的`,hostile:`敌对`,emptySlot:`空位 - 可殖民`,scout:`侦察`,attack:`攻击`,colonize:`殖民`,switch:`切换`,recycle:`回收`,debrisField:`残骸场`,scoutPlanetTitle:`侦察星球`,attackPlanetTitle:`攻击星球`,colonizePlanetTitle:`殖民星球`,recyclePlanetTitle:`回收残骸`,scoutPlanetMessage:`确定要派遣间谍探测器侦察星球 [{coordinates}] 吗? + +请前往舰队页面选择舰船并派遣。`,attackPlanetMessage:`确定要攻击星球 [{coordinates}] 吗? + +请前往舰队页面选择舰船并派遣。`,colonizePlanetMessage:`确定要殖民位置 [{coordinates}] 吗? + +请前往舰队页面派遣殖民船。`,recyclePlanetMessage:`确定要回收位置 [{coordinates}] 的残骸吗? + +请前往舰队页面派遣回收船。`},messagesView:{title:`消息中心`,battles:`战斗`,spy:`侦查`,battleReports:`战斗报告`,spyReports:`间谍报告`,noBattleReports:`暂无战斗报告`,noSpyReports:`暂无间谍报告`,battleReport:`战斗报告`,spyReport:`间谍报告`,victory:`胜利`,defeat:`失败`,draw:`平局`,attackerFleet:`攻击方舰队`,defenderFleet:`防守方舰队`,defenderDefense:`防守方防御`,attackerLosses:`攻击方损失`,defenderLosses:`防守方损失`,noLosses:`无损失`,plunder:`掠夺资源`,debrisField:`残骸场`,resources:`资源`,fleet:`舰队`,defense:`防御`,buildings:`建筑`,unread:`未读`,targetPlanet:`目标星球`,attackerRemaining:`攻击方剩余`,defenderRemaining:`防守方剩余`,moonChance:`月球生成概率`,showRoundDetails:`显示回合详情`,hideRoundDetails:`隐藏回合详情`,round:`第{round}回合`,attackerRemainingPower:`攻击方剩余火力`,defenderRemainingPower:`防守方剩余火力`},simulatorView:{title:`战斗模拟器`,attacker:`攻击方`,defender:`防守方`,attackerConfig:`攻击方配置`,attackerConfigDesc:`设置攻击方的舰队和科技等级`,defenderConfig:`防守方配置`,defenderConfigDesc:`设置防守方的舰队、防御和科技等级`,fleet:`舰队`,defenseStructures:`防御设施`,techLevels:`科技等级`,weapon:`武器`,shield:`护盾`,armor:`装甲`,defenderResources:`防守方资源(用于掠夺计算)`,startSimulation:`开始模拟`,reset:`重置`,battleResult:`战斗结果`,attackerVictory:`攻击方胜利`,defenderVictory:`防守方胜利`,draw:`平局`,afterRounds:`经过 {rounds} 回合战斗`,attackerLosses:`攻击方损失`,defenderLosses:`防守方损失`,noLosses:`无损失`,attackerRemaining:`攻击方剩余`,defenderRemaining:`防守方剩余`,allDestroyed:`全部摧毁`,plunderableResources:`可掠夺资源`,debrisField:`残骸场`,moonChance:`月球生成概率`,showRoundDetails:`显示回合详情`,hideRoundDetails:`隐藏回合详情`,round:`第 {round} 回合`,attackerRemainingPower:`攻击方剩余火力`,defenderRemainingPower:`防守方剩余火力`},settings:{dataManagement:`数据管理`,dataManagementDesc:`导出、导入或清除游戏数据`,exportData:`导出数据`,exportDataDesc:`将游戏进度导出为JSON文件`,export:`导出`,exporting:`导出中...`,exportSuccess:`导出成功`,exportFailed:`导出失败,请重试`,importData:`导入数据`,importDataDesc:`从JSON文件恢复游戏进度`,selectFile:`导入`,importSuccess:`导入成功`,importConfirmTitle:`确认导入数据`,importConfirmMessage:`导入数据将覆盖当前游戏进度,此操作不可撤销。确定要继续吗?`,importFailed:`导入失败,请检查文件格式`,clearData:`清除数据`,clearDataDesc:`删除所有游戏数据并重置游戏`,clear:`清除`,clearConfirmTitle:`确认清除数据`,clearConfirmMessage:`这将删除所有游戏数据并重新开始,此操作不可撤销。确定要继续吗?`,gameSettings:`游戏设置`,gameSettingsDesc:`调整游戏参数和偏好设置`,gamePause:`游戏暂停`,gamePauseDesc:`暂停或恢复游戏时间和资源生产`,pause:`暂停`,resume:`恢复`,gamePaused:`游戏已暂停`,gameResumed:`游戏已恢复`,playerName:`玩家名称`,gameSpeed:`游戏速度`,gameSpeedDesc:`当前游戏速度倍率`,about:`关于`,version:`版本`,buildDate:`构建日期`,community:`社区`,github:`GitHub 仓库`,qqGroup:`QQ 交流群`},gmView:{title:`GM 管理面板`,adminOnly:`仅管理员`,selectPlanet:`选择星球`,choosePlanet:`选择一个星球`,resources:`资源`,buildings:`建筑`,research:`科技`,ships:`舰船`,defense:`防御`,officers:`军官`,modifyResources:`修改资源`,resourcesDesc:`快速修改星球资源数量`,modifyBuildings:`修改建筑`,buildingsDesc:`快速设置建筑等级`,modifyResearch:`修改科技`,researchDesc:`快速设置科技等级`,modifyShips:`修改舰船`,shipsDesc:`快速设置舰船数量`,modifyDefense:`修改防御`,defenseDesc:`快速设置防御数量`,modifyOfficers:`修改军官`,officersDesc:`快速设置军官到期时间`,days:`天`,dangerZone:`危险区域`,dangerZoneDesc:`以下操作不可撤销,请谨慎操作`,resetGame:`重置游戏`,resetGameConfirm:`确定要重置游戏吗?这将删除所有数据!`}},t={common:{confirm:`確認`,cancel:`取消`,delete:`刪除`,edit:`編輯`,save:`儲存`,close:`關閉`,back:`返回`,next:`下一步`,previous:`上一步`,submit:`提交`,reset:`重置`,search:`搜尋`,filter:`篩選`,loading:`載入中...`,noData:`暫無資料`,error:`錯誤`,success:`成功`,warning:`警告`,info:`資訊`,resourceType:`資源類型`,playerName:`指揮官`,timeHour:`時`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`功能已鎖定`,unlockRequired:`需要解鎖前置建築`,requiredBuilding:`所需建築`,currentLevel:`當前等級`,goToBuildings:`前往建築頁面`,locked:`已鎖定`,viewRequirements:`查看前置條件`,requirementsNotMet:`前置條件未滿足`,current:`當前`,level:`等級`},errors:{requirementsNotMet:`不滿足前置條件`,insufficientResources:`資源不足`,insufficientFleetStorage:`艦隊倉儲空間不足`,shieldDomeLimit:`護盾罩數量限制`,fleetMissionsFull:`艦隊任務槽位已滿`,insufficientFleet:`艦隊數量不足`,insufficientFuel:`燃料不足`,planetOnly:`該建築只能在行星上建造`,moonOnly:`該建築只能在月球上建造`,buildQueueFull:`建造隊列已滿`,insufficientSpace:`空間不足`,buildingLevelZero:`建築等級為0,無法拆除`,researchQueueFull:`研究隊列已滿`,moonExists:`已存在月球`,insufficientDebris:`殘骸場不足`},nav:{overview:`總覽`,buildings:`建築`,research:`研究`,shipyard:`船塢`,defense:`防禦`,fleet:`艦隊`,officers:`軍官`,simulator:`模擬`,galaxy:`星系`,messages:`訊息`,settings:`設定`,gm:`GM`},sidebar:{language:`語言`,lightMode:`日間模式`,darkMode:`夜間模式`,collapse:`收起選單`,expand:`展開選單`},resources:{metal:`金屬`,crystal:`晶體`,deuterium:`重氫`,darkMatter:`暗物質`,energy:`能量`,production:`產量`,consumption:`消耗`,capacity:`容量`,current:`當前儲量`,max:`最大容量`,perHour:`小時`,perMinute:`分鐘`,hour:`小時`,noEnergy:`能量不足`},planet:{planet:`星球`,moon:`月球`,colony:`殖民地`,position:`位置`,coordinates:`座標`,switchToMoon:`查看月球`,backToPlanet:`返回母星`,fields:`場地`,temperature:`溫度`,homePlanet:`母星`,planetPrefix:`星球`,moonSuffix:`的月球`,colonyPrefix:`殖民地`},player:{points:`總積分`},buildings:{metalMine:`金屬礦`,crystalMine:`晶體礦`,deuteriumSynthesizer:`重氫合成器`,solarPlant:`太陽能電站`,roboticsFactory:`機器人工廠`,naniteFactory:`納米工廠`,shipyard:`船塢`,researchLab:`研究實驗室`,metalStorage:`金屬倉庫`,crystalStorage:`晶體倉庫`,deuteriumTank:`重氫罐`,darkMatterCollector:`暗物質收集器`,terraformer:`地形改造器`,lunarBase:`月球基地`,sensorPhalanx:`傳感器陣列`,jumpGate:`跳躍門`,planetDestroyerFactory:`行星毀滅者工廠`,buildTime:`建造時間`,production:`產量`,consumption:`消耗`,totalCost:`累積成本`,totalPoints:`累積積分`,levelRange:`等級範圍`},buildingDescriptions:{metalMine:`開採金屬資源`,crystalMine:`開採晶體資源`,deuteriumSynthesizer:`合成重氫資源`,solarPlant:`提供能源`,roboticsFactory:`加快建造速度`,naniteFactory:`增加建造佇列數量,每級+1佇列(最多10級)`,shipyard:`建造艦船`,researchLab:`研究科技`,metalStorage:`增加金屬儲存上限`,crystalStorage:`增加晶體儲存上限`,deuteriumTank:`增加重氫儲存上限`,darkMatterCollector:`收集稀有的暗物質資源`,terraformer:`改造行星地形,每級增加5個可用空間`,lunarBase:`增加月球可用空間,每級+5空間`,sensorPhalanx:`偵測周圍星系的艦隊活動`,jumpGate:`瞬間傳送艦隊到其他月球`,planetDestroyerFactory:`建造能夠摧毀行星的終極武器`},ships:{lightFighter:`輕型戰鬥機`,heavyFighter:`重型戰鬥機`,cruiser:`巡洋艦`,battleship:`戰列艦`,smallCargo:`小型運輸船`,largeCargo:`大型運輸船`,colonyShip:`殖民船`,recycler:`回收船`,espionageProbe:`間諜探測器`,darkMatterHarvester:`暗物質採集船`,deathstar:`死星`},shipDescriptions:{lightFighter:`基礎戰鬥單位`,heavyFighter:`重裝戰鬥機`,cruiser:`中型戰艦,攻守平衡`,battleship:`強力戰艦`,smallCargo:`運輸少量資源`,largeCargo:`運輸大量資源`,colonyShip:`用於殖民新星球`,recycler:`收集殘骸場資源`,espionageProbe:`偵察敵方星球`,darkMatterHarvester:`專門用於採集暗物質的特殊飛船`,deathstar:`終極武器,能夠摧毀整個行星`},defenses:{rocketLauncher:`火箭發射器`,lightLaser:`輕型激光炮`,heavyLaser:`重型激光炮`,gaussCannon:`高斯炮`,ionCannon:`離子炮`,plasmaTurret:`等離子炮塔`,smallShieldDome:`小型護盾罩`,largeShieldDome:`大型護盾罩`,planetaryShield:`行星護盾`},defenseDescriptions:{rocketLauncher:`基礎防禦設施`,lightLaser:`輕型能量武器`,heavyLaser:`重型能量武器`,gaussCannon:`高速動能武器`,ionCannon:`破壞護盾的利器`,plasmaTurret:`強力防禦設施`,smallShieldDome:`保護整個星球的小型護盾`,largeShieldDome:`保護整個星球的大型護盾`,planetaryShield:`保護行星免受毀滅攻擊的超級護盾`},research:{researchTime:`研究時間`,totalCost:`累積成本`,totalPoints:`累積積分`,levelRange:`等級範圍`},technologies:{energyTechnology:`能源技術`,laserTechnology:`激光技術`,ionTechnology:`離子技術`,hyperspaceTechnology:`超空間技術`,plasmaTechnology:`等離子技術`,computerTechnology:`計算機技術`,combustionDrive:`燃燒引擎`,impulseDrive:`脈衝引擎`,hyperspaceDrive:`超空間引擎`,darkMatterTechnology:`暗物質技術`,terraformingTechnology:`地形改造技術`,planetDestructionTech:`行星毀滅技術`},technologyDescriptions:{energyTechnology:`提高能源利用效率`,laserTechnology:`激光武器和防禦的基礎`,ionTechnology:`離子武器技術`,hyperspaceTechnology:`超空間跳躍技術`,plasmaTechnology:`等離子武器技術`,computerTechnology:`增加研究佇列數量,每級+1佇列(最多10級)`,combustionDrive:`基礎推進技術`,impulseDrive:`中級推進技術`,hyperspaceDrive:`高級推進技術`,darkMatterTechnology:`研究暗物質的性質和應用`,terraformingTechnology:`研究行星地形改造技術,每級為所有行星增加3個可用空間`,planetDestructionTech:`研究如何摧毀整個行星的恐怖技術`},officers:{commander:`指揮官`,admiral:`上將`,engineer:`工程師`,geologist:`地質學家`,technocrat:`技術專家`,darkMatterSpecialist:`暗物質專家`,resourceBonus:`資源生產加成`,darkMatterBonus:`暗物質生產加成`,energyBonus:`能量生產加成`},officerDescriptions:{commander:`提升建築速度和管理能力`,admiral:`提升艦隊戰鬥力和速度`,engineer:`提升能源和防禦能力`,geologist:`提升資源產量`,technocrat:`提升研究速度和間諜能力`,darkMatterSpecialist:`提升暗物質採集效率`},queue:{buildQueue:`建造佇列`,researchQueue:`研究佇列`,building:`建造中`,researching:`研究中`,remaining:`剩餘時間`,cancel:`取消`,cancelBuild:`取消建造`,cancelResearch:`取消研究`,confirmCancel:`確定要取消嗎?將返還50%的資源。`,level:`等級`,upgradeToLevel:`升級到等級`},overview:{title:`星球總覽`,resourceOverview:`資源概覽`,fleetInfo:`艦隊資訊`,currentShips:`當前星球的艦船數量`,productionSources:`生產來源`,productionSourcesDesc:`詳細資源生產和加成資訊`,consumptionSources:`消耗來源`,consumptionSourcesDesc:`建築能量消耗詳情`,totalProduction:`總產量`,totalConsumption:`總消耗`,noConsumption:`無能量消耗`},buildingsView:{title:`建築`,usedSpace:`已用空間`,spaceUsage:`佔用空間`,level:`等級`,upgradeCost:`升級消耗`,buildTime:`建造時間`,upgrade:`升級`,maxLevelReached:`等級已滿`,requirementsNotMet:`條件不足`,upgradeFailed:`升級失敗`,upgradeFailedMessage:`請檢查資源是否足夠、空間是否充足或是否有其他建造任務。`,demolish:`拆除`,demolishRefund:`拆除返還`,demolishFailed:`拆除失敗`,demolishFailedMessage:`無法拆除該建築,請檢查建造隊列是否已滿或建築等級是否為0。`},researchView:{title:`研究`,researchCost:`研究消耗`,research:`研究`,maxLevelReached:`等級已滿`,researchFailed:`研究失敗`,researchFailedMessage:`請檢查資源是否足夠、前置條件是否滿足,或是否有其他研究任務。`},shipyard:{attack:`攻擊力`,shield:`護盾`,armor:`裝甲`,speed:`速度`,cargoCapacity:`載貨量`,fuelConsumption:`燃料消耗`,buildCost:`建造成本`,buildTime:`建造時間`,perUnit:`每個單位`,batchCalculator:`批量建造計算器`,quantity:`數量`,totalCost:`總成本`,totalTime:`總時間`},shipyardView:{title:`船塢`,fleetStorage:`艦隊倉儲`,attack:`攻擊力`,shield:`護盾`,speed:`速度`,cargoCapacity:`載貨量`,unitCost:`單位成本`,buildQuantity:`建造數量`,totalCost:`總成本`,build:`建造`,inputError:`輸入錯誤`,inputErrorMessage:`請輸入建造數量!`,buildFailed:`建造失敗`,buildFailedMessage:`請檢查資源是否足夠或前置條件是否滿足。`},defense:{attack:`攻擊力`,shield:`護盾`,armor:`裝甲`,buildCost:`建造成本`,buildTime:`建造時間`,perUnit:`每個單位`,batchCalculator:`批量建造計算器`,quantity:`數量`,totalCost:`總成本`,totalTime:`總時間`},defenseView:{title:`防禦設施`,attack:`攻擊力`,shield:`護盾`,armor:`裝甲`,buildTime:`建造時間`,seconds:`秒`,unitCost:`單位成本`,buildQuantity:`建造數量`,totalCost:`總成本`,build:`建造`,shieldDomeBuilt:`護盾罩已建造`,inputError:`輸入錯誤`,inputErrorMessage:`請輸入建造數量!`,buildFailed:`建造失敗`,buildFailedMessage:`請檢查資源是否足夠或前置條件是否滿足。護盾罩只能建造一個。`},fleetView:{title:`艦隊管理`,fleetOverview:`艦隊總覽`,sendFleet:`派遣艦隊`,flightMissions:`飛行任務`,currentPlanetFleet:`當前星球艦隊`,attack:`攻擊`,shield:`護盾`,armor:`裝甲`,speed:`速度`,cargo:`載貨`,selectFleet:`選擇艦隊`,selectFleetDescription:`選擇要派遣的艦船數量`,available:`可用`,all:`全部`,targetCoordinates:`目標座標`,galaxy:`銀河系`,system:`星系`,position:`位置`,missionType:`任務類型`,missionInfo:`任務資訊`,fuelConsumption:`燃料消耗`,flightTime:`飛行時間`,attackMission:`攻擊`,transport:`運輸`,colonize:`殖民`,spy:`偵察`,deploy:`部署`,recycle:`回收`,transportResources:`運輸資源`,totalCargoCapacity:`總載貨量`,used:`已用`,noFlightMissions:`暫無飛行任務`,outbound:`前往`,returning:`返回`,fleetComposition:`艦隊組成`,carryingResources:`攜帶資源`,arrivalTime:`到達時間`,returnTime:`返回時間`,recallFleet:`召回艦隊`,sendFailed:`派遣失敗`,sendFailedMessage:`請檢查艦隊數量、燃料是否充足,或載貨量是否超出限制。`,recallFailed:`召回失敗`,recallFailedMessage:`該任務無法召回。`,unknownPlanet:`未知星球`,fleetMissionSlots:`艦隊任務槽位`,noShipsSelected:`未選擇艦船`,cannotSendToOwnPlanet:`無法派遣艦隊到自己的星球`,cargoExceedsCapacity:`載貨量超出限制`,noColonyShip:`需要殖民船才能執行殖民任務`,noDebrisAtTarget:`目標坐標沒有殘骸場或殘骸場已空`},officersView:{title:`軍官`,activated:`已啟用`,inactive:`未啟用`,activeStatus:`啟用狀態`,expirationTime:`到期時間`,remainingTime:`剩餘時間`,recruitCost:`招募成本`,days:`天`,benefitsBonus:`效果加成`,resourceProduction:`資源產量`,darkMatterProduction:`暗物質產量`,energyProduction:`電量產出`,buildingSpeed:`建築速度`,researchSpeed:`研究速度`,fleetSpeed:`艦隊速度`,fuelConsumption:`燃料消耗`,defense:`防禦力`,storageCapacity:`倉儲容量`,buildQueue:`建築佇列`,fleetSlots:`艦隊槽位`,hire:`招募`,renew:`續約`,dismiss:`解雇`,hireTitle:`招募軍官`,hireMessage:`確定要招募 {name} 嗎?有效期為7天。`,renewTitle:`續約軍官`,renewMessage:`確定要為 {name} 續約7天嗎?`,dismissTitle:`解雇軍官`,dismissMessage:`確定要解雇 {name} 嗎?不會返還任何費用。`,hireFailed:`招募失敗`,renewFailed:`續約失敗`,insufficientResources:`資源不足!`},galaxyView:{title:`星系`,selectCoordinates:`選擇座標`,galaxy:`銀河系`,selectGalaxy:`選擇銀河系`,system:`星系`,selectSystem:`選擇星系`,view:`查看`,myPlanet:`我的星球`,totalPositions:`共10個星球位置`,mine:`我的`,hostile:`敵對`,emptySlot:`空位 - 可殖民`,scout:`偵察`,attack:`攻擊`,colonize:`殖民`,switch:`切換`,recycle:`回收`,debrisField:`殘骸場`,scoutPlanetTitle:`偵察星球`,attackPlanetTitle:`攻擊星球`,colonizePlanetTitle:`殖民星球`,recyclePlanetTitle:`回收殘骸`,scoutPlanetMessage:`確定要派遣間諜探測器偵察星球 [{coordinates}] 嗎? + +請前往艦隊頁面選擇艦船並派遣。`,attackPlanetMessage:`確定要攻擊星球 [{coordinates}] 嗎? + +請前往艦隊頁面選擇艦船並派遣。`,colonizePlanetMessage:`確定要殖民位置 [{coordinates}] 嗎? + +請前往艦隊頁面派遣殖民船。`,recyclePlanetMessage:`確定要回收位置 [{coordinates}] 的殘骸嗎? + +請前往艦隊頁面派遣回收船。`},messagesView:{title:`訊息中心`,battles:`戰鬥`,spy:`偵查`,battleReports:`戰鬥報告`,spyReports:`間諜報告`,noBattleReports:`暫無戰鬥報告`,noSpyReports:`暫無間諜報告`,battleReport:`戰鬥報告`,spyReport:`間諜報告`,victory:`勝利`,defeat:`失敗`,draw:`平局`,attackerFleet:`攻擊方艦隊`,defenderFleet:`防守方艦隊`,defenderDefense:`防守方防禦`,attackerLosses:`攻擊方損失`,defenderLosses:`防守方損失`,noLosses:`無損失`,plunder:`掠奪資源`,debrisField:`殘骸場`,resources:`資源`,fleet:`艦隊`,defense:`防禦`,buildings:`建築`,unread:`未讀`,targetPlanet:`目標星球`,attackerRemaining:`攻擊方剩餘`,defenderRemaining:`防守方剩餘`,moonChance:`月球生成機率`,showRoundDetails:`顯示回合詳情`,hideRoundDetails:`隱藏回合詳情`,round:`第{round}回合`,attackerRemainingPower:`攻擊方剩餘火力`,defenderRemainingPower:`防守方剩餘火力`},simulatorView:{title:`戰鬥模擬器`,attacker:`攻擊方`,defender:`防守方`,attackerConfig:`攻擊方配置`,attackerConfigDesc:`設置攻擊方的艦隊和科技等級`,defenderConfig:`防守方配置`,defenderConfigDesc:`設置防守方的艦隊、防禦和科技等級`,fleet:`艦隊`,defenseStructures:`防禦設施`,techLevels:`科技等級`,weapon:`武器`,shield:`護盾`,armor:`裝甲`,defenderResources:`防守方資源(用於掠奪計算)`,startSimulation:`開始模擬`,reset:`重置`,battleResult:`戰鬥結果`,attackerVictory:`攻擊方勝利`,defenderVictory:`防守方勝利`,draw:`平局`,afterRounds:`經過 {rounds} 回合戰鬥`,attackerLosses:`攻擊方損失`,defenderLosses:`防守方損失`,noLosses:`無損失`,attackerRemaining:`攻擊方剩餘`,defenderRemaining:`防守方剩餘`,allDestroyed:`全部摧毀`,plunderableResources:`可掠奪資源`,debrisField:`殘骸場`,moonChance:`月球生成機率`,showRoundDetails:`顯示回合詳情`,hideRoundDetails:`隱藏回合詳情`,round:`第 {round} 回合`,attackerRemainingPower:`攻擊方剩餘火力`,defenderRemainingPower:`防守方剩餘火力`},settings:{dataManagement:`資料管理`,dataManagementDesc:`匯出、匯入或清除遊戲資料`,exportData:`匯出資料`,exportDataDesc:`將遊戲進度匯出為JSON檔案`,export:`匯出`,exporting:`匯出中...`,exportSuccess:`匯出成功`,exportFailed:`匯出失敗,請重試`,importData:`匯入資料`,importDataDesc:`從JSON檔案恢復遊戲進度`,selectFile:`匯入`,importSuccess:`匯入成功`,importConfirmTitle:`確認匯入資料`,importConfirmMessage:`匯入資料將覆蓋目前遊戲進度,此操作不可撤銷。確定要繼續嗎?`,importFailed:`匯入失敗,請檢查檔案格式`,clearData:`清除資料`,clearDataDesc:`刪除所有遊戲資料並重置遊戲`,clear:`清除`,clearConfirmTitle:`確認清除資料`,clearConfirmMessage:`這將刪除所有遊戲資料並重新開始,此操作不可撤銷。確定要繼續嗎?`,gameSettings:`遊戲設定`,gameSettingsDesc:`調整遊戲參數和偏好設定`,gamePause:`遊戲暫停`,gamePauseDesc:`暫停或恢復遊戲時間和資源生產`,pause:`暫停`,resume:`恢復`,gamePaused:`遊戲已暫停`,gameResumed:`遊戲已恢復`,playerName:`玩家名稱`,gameSpeed:`遊戲速度`,gameSpeedDesc:`目前遊戲速度倍率`,about:`關於`,version:`版本`,buildDate:`建置日期`,community:`社群`,github:`GitHub 儲存庫`,qqGroup:`QQ 交流群`},gmView:{title:`GM 管理面板`,adminOnly:`僅管理員`,selectPlanet:`選擇星球`,choosePlanet:`選擇一個星球`,resources:`資源`,buildings:`建築`,research:`科技`,ships:`艦船`,defense:`防禦`,officers:`軍官`,modifyResources:`修改資源`,resourcesDesc:`快速修改星球資源數量`,modifyBuildings:`修改建築`,buildingsDesc:`快速設定建築等級`,modifyResearch:`修改科技`,researchDesc:`快速設定科技等級`,modifyShips:`修改艦船`,shipsDesc:`快速設定艦船數量`,modifyDefense:`修改防禦`,defenseDesc:`快速設定防禦數量`,modifyOfficers:`修改軍官`,officersDesc:`快速設定軍官到期時間`,days:`天`,dangerZone:`危險區域`,dangerZoneDesc:`以下操作不可撤銷,請謹慎操作`,resetGame:`重置遊戲`,resetGameConfirm:`確定要重置遊戲嗎?這將刪除所有資料!`}},n={common:{confirm:`Confirm`,cancel:`Cancel`,delete:`Delete`,edit:`Edit`,save:`Save`,close:`Close`,back:`Back`,next:`Next`,previous:`Previous`,submit:`Submit`,reset:`Reset`,search:`Search`,filter:`Filter`,loading:`Loading...`,noData:`No Data`,error:`Error`,success:`Success`,warning:`Warning`,info:`Info`,resourceType:`Resource Type`,playerName:`Commander`,timeHour:`h`,timeMinute:`m`,timeSecond:`s`,featureLocked:`Feature Locked`,unlockRequired:`Building Required`,requiredBuilding:`Required Building`,currentLevel:`Current Level`,goToBuildings:`Go to Buildings`,locked:`Locked`,viewRequirements:`View Requirements`,requirementsNotMet:`Requirements Not Met`,current:`Current`,level:`Level`},errors:{requirementsNotMet:`Requirements not met`,insufficientResources:`Insufficient resources`,insufficientFleetStorage:`Insufficient fleet storage`,shieldDomeLimit:`Shield dome limit reached`,fleetMissionsFull:`Fleet mission slots full`,insufficientFleet:`Insufficient fleet`,insufficientFuel:`Insufficient fuel`,planetOnly:`This building can only be built on planets`,moonOnly:`This building can only be built on moons`,buildQueueFull:`Build queue full`,insufficientSpace:`Insufficient space`,buildingLevelZero:`Building level is 0, cannot demolish`,researchQueueFull:`Research queue full`,moonExists:`Moon already exists`,insufficientDebris:`Insufficient debris field`},nav:{overview:`Overview`,buildings:`Buildings`,research:`Research`,shipyard:`Shipyard`,defense:`Defense`,fleet:`Fleet`,officers:`Officers`,simulator:`Simulator`,galaxy:`Galaxy`,messages:`Messages`,settings:`Settings`,gm:`GM`},sidebar:{language:`Language`,lightMode:`Light Mode`,darkMode:`Dark Mode`,collapse:`Collapse`,expand:`Expand`},resources:{metal:`Metal`,crystal:`Crystal`,deuterium:`Deuterium`,darkMatter:`Dark Matter`,energy:`Energy`,production:`Production`,consumption:`Consumption`,capacity:`Capacity`,current:`Current`,max:`Max Capacity`,perHour:`hour`,perMinute:`min`,hour:`hour`,noEnergy:`No Energy`},planet:{planet:`Planet`,moon:`Moon`,colony:`Colony`,position:`Position`,coordinates:`Coordinates`,switchToMoon:`View Moon`,backToPlanet:`Back to Planet`,fields:`Fields`,temperature:`Temperature`,homePlanet:`Home Planet`,planetPrefix:`Planet`,moonSuffix:`'s Moon`,colonyPrefix:`Colony`},player:{points:`Total Points`},buildings:{metalMine:`Metal Mine`,crystalMine:`Crystal Mine`,deuteriumSynthesizer:`Deuterium Synthesizer`,solarPlant:`Solar Plant`,roboticsFactory:`Robotics Factory`,naniteFactory:`Nanite Factory`,shipyard:`Shipyard`,researchLab:`Research Lab`,metalStorage:`Metal Storage`,crystalStorage:`Crystal Storage`,deuteriumTank:`Deuterium Tank`,darkMatterCollector:`Dark Matter Collector`,terraformer:`Terraformer`,lunarBase:`Lunar Base`,sensorPhalanx:`Sensor Phalanx`,jumpGate:`Jump Gate`,planetDestroyerFactory:`Planet Destroyer Factory`,buildTime:`Build Time`,production:`Production`,consumption:`Consumption`,totalCost:`Total Cost`,totalPoints:`Total Points`,levelRange:`Level Range`},buildingDescriptions:{metalMine:`Extracts metal resources`,crystalMine:`Extracts crystal resources`,deuteriumSynthesizer:`Synthesizes deuterium resources`,solarPlant:`Provides energy`,roboticsFactory:`Accelerates construction speed`,naniteFactory:`Increases build queue capacity, +1 per level (max 10 levels)`,shipyard:`Constructs ships`,researchLab:`Researches technologies`,metalStorage:`Increases metal storage capacity`,crystalStorage:`Increases crystal storage capacity`,deuteriumTank:`Increases deuterium storage capacity`,darkMatterCollector:`Collects rare dark matter resources`,terraformer:`Terraforms planet surface, adds 5 available space per level`,lunarBase:`Increases available space on the moon, +5 space per level`,sensorPhalanx:`Detects fleet activities in surrounding systems`,jumpGate:`Instantly transfers fleets to other moons`,planetDestroyerFactory:`Constructs ultimate weapons capable of destroying planets`},ships:{lightFighter:`Light Fighter`,heavyFighter:`Heavy Fighter`,cruiser:`Cruiser`,battleship:`Battleship`,smallCargo:`Small Cargo`,largeCargo:`Large Cargo`,colonyShip:`Colony Ship`,recycler:`Recycler`,espionageProbe:`Espionage Probe`,darkMatterHarvester:`Dark Matter Harvester`,deathstar:`Deathstar`},shipDescriptions:{lightFighter:`Basic combat unit`,heavyFighter:`Heavily armored fighter`,cruiser:`Medium warship, balanced offense and defense`,battleship:`Powerful warship`,smallCargo:`Transports small amounts of resources`,largeCargo:`Transports large amounts of resources`,colonyShip:`Used to colonize new planets`,recycler:`Collects debris field resources`,espionageProbe:`Scouts enemy planets`,darkMatterHarvester:`Special ship for harvesting dark matter`,deathstar:`Ultimate weapon capable of destroying entire planets`},defenses:{rocketLauncher:`Rocket Launcher`,lightLaser:`Light Laser`,heavyLaser:`Heavy Laser`,gaussCannon:`Gauss Cannon`,ionCannon:`Ion Cannon`,plasmaTurret:`Plasma Turret`,smallShieldDome:`Small Shield Dome`,largeShieldDome:`Large Shield Dome`,planetaryShield:`Planetary Shield`},defenseDescriptions:{rocketLauncher:`Basic defense facility`,lightLaser:`Light energy weapon`,heavyLaser:`Heavy energy weapon`,gaussCannon:`High-speed kinetic weapon`,ionCannon:`Effective against shields`,plasmaTurret:`Powerful defense facility`,smallShieldDome:`Small shield protecting the entire planet`,largeShieldDome:`Large shield protecting the entire planet`,planetaryShield:`Super shield protecting planet from destruction attacks`},research:{researchTime:`Research Time`,totalCost:`Total Cost`,totalPoints:`Total Points`,levelRange:`Level Range`},technologies:{energyTechnology:`Energy Technology`,laserTechnology:`Laser Technology`,ionTechnology:`Ion Technology`,hyperspaceTechnology:`Hyperspace Technology`,plasmaTechnology:`Plasma Technology`,computerTechnology:`Computer Technology`,combustionDrive:`Combustion Drive`,impulseDrive:`Impulse Drive`,hyperspaceDrive:`Hyperspace Drive`,darkMatterTechnology:`Dark Matter Technology`,terraformingTechnology:`Terraforming Technology`,planetDestructionTech:`Planet Destruction Technology`},technologyDescriptions:{energyTechnology:`Improves energy efficiency`,laserTechnology:`Foundation of laser weapons and defense`,ionTechnology:`Ion weapon technology`,hyperspaceTechnology:`Hyperspace jump technology`,plasmaTechnology:`Plasma weapon technology`,computerTechnology:`Increases research queue capacity, +1 per level (max 10 levels)`,combustionDrive:`Basic propulsion technology`,impulseDrive:`Intermediate propulsion technology`,hyperspaceDrive:`Advanced propulsion technology`,darkMatterTechnology:`Research into dark matter properties and applications`,terraformingTechnology:`Research planet terraforming technology, adds 3 available space to all planets per level`,planetDestructionTech:`Terrifying technology for destroying entire planets`},officers:{commander:`Commander`,admiral:`Admiral`,engineer:`Engineer`,geologist:`Geologist`,technocrat:`Technocrat`,darkMatterSpecialist:`Dark Matter Specialist`,resourceBonus:`Resource Production Bonus`,darkMatterBonus:`Dark Matter Production Bonus`,energyBonus:`Energy Production Bonus`},officerDescriptions:{commander:`Improves building speed and management`,admiral:`Improves fleet combat and speed`,engineer:`Improves energy and defense`,geologist:`Improves resource production`,technocrat:`Improves research speed and espionage`,darkMatterSpecialist:`Improves dark matter collection efficiency`},queue:{buildQueue:`Build Queue`,researchQueue:`Research Queue`,building:`Building`,researching:`Researching`,remaining:`Remaining`,cancel:`Cancel`,cancelBuild:`Cancel Build`,cancelResearch:`Cancel Research`,confirmCancel:`Are you sure you want to cancel? 50% of resources will be refunded.`,level:`Level`,quantity:`Quantity`,upgradeToLevel:`Upgrade to Level`},overview:{title:`Planet Overview`,resourceOverview:`Resources`,fleetInfo:`Fleet`,currentShips:`Ships on this planet`,productionSources:`Production Sources`,productionSourcesDesc:`Detailed resource production and bonus information`,consumptionSources:`Consumption Sources`,consumptionSourcesDesc:`Energy consumption details for buildings`,totalProduction:`Total Production`,totalConsumption:`Total Consumption`,noConsumption:`No energy consumption`},buildingsView:{title:`Buildings`,usedSpace:`Used Space`,spaceUsage:`Space Usage`,level:`Level`,upgradeCost:`Upgrade Cost`,buildTime:`Build Time`,upgrade:`Upgrade`,maxLevelReached:`Max Level Reached`,requirementsNotMet:`Requirements Not Met`,upgradeFailed:`Upgrade Failed`,upgradeFailedMessage:`Please check if you have enough resources, space, or if there are other build tasks.`,demolish:`Demolish`,demolishRefund:`Demolish Refund`,demolishFailed:`Demolish Failed`,demolishFailedMessage:`Unable to demolish this building. Please check if the build queue is full or the building level is 0.`},researchView:{title:`Research`,researchCost:`Research Cost`,research:`Research`,maxLevelReached:`Max Level Reached`,researchFailed:`Research Failed`,researchFailedMessage:`Please check if you have enough resources, prerequisites are met, or if there are other research tasks.`},shipyard:{attack:`Attack`,shield:`Shield`,armor:`Armor`,speed:`Speed`,cargoCapacity:`Cargo Capacity`,fuelConsumption:`Fuel Consumption`,buildCost:`Build Cost`,buildTime:`Build Time`,perUnit:`Per Unit`,batchCalculator:`Batch Calculator`,quantity:`Quantity`,totalCost:`Total Cost`,totalTime:`Total Time`},shipyardView:{title:`Shipyard`,fleetStorage:`Fleet Storage`,attack:`Attack`,shield:`Shield`,speed:`Speed`,cargoCapacity:`Cargo Capacity`,unitCost:`Unit Cost`,buildQuantity:`Build Quantity`,totalCost:`Total Cost`,build:`Build`,inputError:`Input Error`,inputErrorMessage:`Please enter build quantity!`,buildFailed:`Build Failed`,buildFailedMessage:`Please check if you have enough resources or if prerequisites are met.`},defense:{attack:`Attack`,shield:`Shield`,armor:`Armor`,buildCost:`Build Cost`,buildTime:`Build Time`,perUnit:`Per Unit`,batchCalculator:`Batch Calculator`,quantity:`Quantity`,totalCost:`Total Cost`,totalTime:`Total Time`},defenseView:{title:`Defense`,attack:`Attack`,shield:`Shield`,armor:`Armor`,buildTime:`Build Time`,seconds:`s`,unitCost:`Unit Cost`,buildQuantity:`Build Quantity`,totalCost:`Total Cost`,build:`Build`,shieldDomeBuilt:`Shield dome already built`,inputError:`Input Error`,inputErrorMessage:`Please enter build quantity!`,buildFailed:`Build Failed`,buildFailedMessage:`Please check if you have enough resources or if prerequisites are met. Shield domes can only be built once.`},fleetView:{title:`Fleet Management`,fleetOverview:`Fleet Overview`,sendFleet:`Send Fleet`,flightMissions:`Flight Missions`,currentPlanetFleet:`Current Planet Fleet`,attack:`Attack`,shield:`Shield`,armor:`Armor`,speed:`Speed`,cargo:`Cargo`,selectFleet:`Select Fleet`,selectFleetDescription:`Select the number of ships to send`,available:`Available`,all:`All`,targetCoordinates:`Target Coordinates`,galaxy:`Galaxy`,system:`System`,position:`Position`,missionType:`Mission Type`,missionInfo:`Mission Info`,fuelConsumption:`Fuel Consumption`,flightTime:`Flight Time`,attackMission:`Attack`,transport:`Transport`,colonize:`Colonize`,spy:`Spy`,deploy:`Deploy`,recycle:`Recycle`,destroy:`Planet Destruction`,transportResources:`Transport Resources`,totalCargoCapacity:`Total Cargo Capacity`,used:`Used`,noFlightMissions:`No flight missions`,outbound:`Outbound`,returning:`Returning`,fleetComposition:`Fleet Composition`,carryingResources:`Carrying Resources`,arrivalTime:`Arrival Time`,returnTime:`Return Time`,recallFleet:`Recall Fleet`,sendFailed:`Send Failed`,sendFailedMessage:`Please check fleet count, fuel availability, or cargo capacity limits.`,recallFailed:`Recall Failed`,recallFailedMessage:`This mission cannot be recalled.`,unknownPlanet:`Unknown Planet`,fleetMissionSlots:`Fleet Mission Slots`,noShipsSelected:`No ships selected`,cannotSendToOwnPlanet:`Cannot send fleet to your own planet`,cargoExceedsCapacity:`Cargo exceeds capacity`,noColonyShip:`Colony ship required for colonization mission`,noDebrisAtTarget:`No debris field at target coordinates or debris field is empty`,noDeathstar:`Deathstar required for destruction mission`},officersView:{title:`Officers`,activated:`Activated`,inactive:`Inactive`,activeStatus:`Active Status`,expirationTime:`Expiration Time`,remainingTime:`Remaining Time`,recruitCost:`Recruitment Cost`,days:`days`,benefitsBonus:`Benefits Bonus`,resourceProduction:`Resource Production`,darkMatterProduction:`Dark Matter Production`,energyProduction:`Energy Production`,buildingSpeed:`Building Speed`,researchSpeed:`Research Speed`,fleetSpeed:`Fleet Speed`,fuelConsumption:`Fuel Consumption`,defense:`Defense`,storageCapacity:`Storage Capacity`,buildQueue:`Build Queue`,fleetSlots:`Fleet Slots`,hire:`Hire`,renew:`Renew`,dismiss:`Dismiss`,hireTitle:`Hire Officer`,hireMessage:`Are you sure you want to hire {name}? Valid for 7 days.`,renewTitle:`Renew Officer`,renewMessage:`Are you sure you want to renew {name} for 7 days?`,dismissTitle:`Dismiss Officer`,dismissMessage:`Are you sure you want to dismiss {name}? No refunds will be given.`,hireFailed:`Hire Failed`,renewFailed:`Renew Failed`,insufficientResources:`Insufficient resources!`},galaxyView:{title:`Galaxy`,selectCoordinates:`Select Coordinates`,galaxy:`Galaxy`,selectGalaxy:`Select Galaxy`,system:`System`,selectSystem:`Select System`,view:`View`,myPlanet:`My Planet`,totalPositions:`10 planet positions total`,mine:`Mine`,hostile:`Hostile`,emptySlot:`Empty - Colonizable`,scout:`Scout`,attack:`Attack`,colonize:`Colonize`,switch:`Switch`,recycle:`Recycle`,debrisField:`Debris Field`,scoutPlanetTitle:`Scout Planet`,attackPlanetTitle:`Attack Planet`,colonizePlanetTitle:`Colonize Planet`,recyclePlanetTitle:`Recycle Debris`,scoutPlanetMessage:`Are you sure you want to send espionage probes to scout planet [{coordinates}]? + +Please go to the fleet page to select ships and send.`,attackPlanetMessage:`Are you sure you want to attack planet [{coordinates}]? + +Please go to the fleet page to select ships and send.`,colonizePlanetMessage:`Are you sure you want to colonize position [{coordinates}]? + +Please go to the fleet page to send a colony ship.`,recyclePlanetMessage:`Are you sure you want to recycle debris at position [{coordinates}]? + +Please go to the fleet page to send recycler ships.`},messagesView:{title:`Messages`,battles:`Battles`,spy:`Spy`,battleReports:`Battle Reports`,spyReports:`Spy Reports`,noBattleReports:`No battle reports`,noSpyReports:`No spy reports`,battleReport:`Battle Report`,spyReport:`Spy Report`,victory:`Victory`,defeat:`Defeat`,draw:`Draw`,attackerFleet:`Attacker Fleet`,defenderFleet:`Defender Fleet`,defenderDefense:`Defender Defense`,attackerLosses:`Attacker Losses`,defenderLosses:`Defender Losses`,noLosses:`No losses`,plunder:`Plunder`,debrisField:`Debris Field`,resources:`Resources`,fleet:`Fleet`,defense:`Defense`,buildings:`Buildings`,unread:`Unread`,targetPlanet:`Target Planet`},simulatorView:{title:`Battle Simulator`,attacker:`Attacker`,defender:`Defender`,attackerConfig:`Attacker Configuration`,attackerConfigDesc:`Configure attacker fleet and technology levels`,defenderConfig:`Defender Configuration`,defenderConfigDesc:`Configure defender fleet, defense, and technology levels`,fleet:`Fleet`,defenseStructures:`Defense Structures`,techLevels:`Technology Levels`,weapon:`Weapon`,shield:`Shield`,armor:`Armor`,defenderResources:`Defender Resources (for plunder calculation)`,startSimulation:`Start Simulation`,reset:`Reset`,battleResult:`Battle Result`,attackerVictory:`Attacker Victory`,defenderVictory:`Defender Victory`,draw:`Draw`,afterRounds:`After {rounds} rounds`,attackerLosses:`Attacker Losses`,defenderLosses:`Defender Losses`,noLosses:`No losses`,attackerRemaining:`Attacker Remaining`,defenderRemaining:`Defender Remaining`,allDestroyed:`All destroyed`,plunderableResources:`Plunderable Resources`,debrisField:`Debris Field`,moonChance:`Moon chance`,showRoundDetails:`Show round details`,hideRoundDetails:`Hide round details`,round:`Round {round}`,attackerRemainingPower:`Attacker remaining power`,defenderRemainingPower:`Defender remaining power`},settings:{dataManagement:`Data Management`,dataManagementDesc:`Export, import, or clear game data`,exportData:`Export Data`,exportDataDesc:`Export game progress as JSON file`,export:`Export`,exporting:`Exporting...`,exportSuccess:`Export successful`,exportFailed:`Export failed, please try again`,importData:`Import Data`,importDataDesc:`Restore game progress from JSON file`,selectFile:`Select File`,importSuccess:`Import successful`,importConfirmTitle:`Confirm Import`,importConfirmMessage:`Importing will overwrite current game progress. This action cannot be undone. Continue?`,importFailed:`Import failed, please check file format`,clearData:`Clear Data`,clearDataDesc:`Delete all game data and reset`,clear:`Clear`,clearConfirmTitle:`Confirm Clear Data`,clearConfirmMessage:`This will delete all game data and start over. This action cannot be undone. Continue?`,gameSettings:`Game Settings`,gameSettingsDesc:`Adjust game parameters and preferences`,gamePause:`Game Pause`,gamePauseDesc:`Pause or resume game time and resource production`,pause:`Pause`,resume:`Resume`,gamePaused:`Game paused`,gameResumed:`Game resumed`,playerName:`Player Name`,gameSpeed:`Game Speed`,gameSpeedDesc:`Current game speed multiplier`,about:`About`,version:`Version`,buildDate:`Build Date`,community:`Community`,github:`GitHub Repository`,qqGroup:`QQ Group`},gmView:{title:`GM Control Panel`,adminOnly:`Admin Only`,selectPlanet:`Select Planet`,choosePlanet:`Choose a planet`,resources:`Resources`,buildings:`Buildings`,research:`Research`,ships:`Ships`,defense:`Defense`,officers:`Officers`,modifyResources:`Modify Resources`,resourcesDesc:`Quickly modify planet resources`,modifyBuildings:`Modify Buildings`,buildingsDesc:`Quickly set building levels`,modifyResearch:`Modify Research`,researchDesc:`Quickly set research levels`,modifyShips:`Modify Ships`,shipsDesc:`Quickly set ship counts`,modifyDefense:`Modify Defense`,defenseDesc:`Quickly set defense counts`,modifyOfficers:`Modify Officers`,officersDesc:`Quickly set officer expiration time`,days:`d`,dangerZone:`Danger Zone`,dangerZoneDesc:`The following operations are irreversible`,resetGame:`Reset Game`,resetGameConfirm:`Are you sure you want to reset the game? This will delete all data!`}},r={common:{confirm:`Bestätigen`,cancel:`Abbrechen`,delete:`Löschen`,edit:`Bearbeiten`,save:`Speichern`,close:`Schließen`,back:`Zurück`,next:`Weiter`,previous:`Vorherige`,submit:`Absenden`,reset:`Zurücksetzen`,search:`Suchen`,filter:`Filtern`,loading:`Laden...`,noData:`Keine Daten`,error:`Fehler`,success:`Erfolg`,warning:`Warnung`,info:`Info`,resourceType:`Ressourcentyp`,playerName:`Kommandant`,timeHour:`Std`,timeMinute:`Min`,timeSecond:`Sek`,featureLocked:`Funktion gesperrt`,unlockRequired:`Gebäude erforderlich`,requiredBuilding:`Erforderliches Gebäude`,currentLevel:`Aktuelles Level`,goToBuildings:`Zu Gebäuden`,locked:`Gesperrt`,viewRequirements:`Anforderungen anzeigen`,requirementsNotMet:`Anforderungen nicht erfüllt`,current:`Aktuell`,level:`Stufe`},errors:{requirementsNotMet:`Anforderungen nicht erfüllt`,insufficientResources:`Unzureichende Ressourcen`,insufficientFleetStorage:`Unzureichender Flottenspeicher`,shieldDomeLimit:`Schildkuppel-Limit erreicht`,fleetMissionsFull:`Flottenmissionsplätze voll`,insufficientFleet:`Unzureichende Flotte`,insufficientFuel:`Unzureichender Treibstoff`,planetOnly:`Dieses Gebäude kann nur auf Planeten gebaut werden`,moonOnly:`Dieses Gebäude kann nur auf Monden gebaut werden`,buildQueueFull:`Bauauftrag voll`,insufficientSpace:`Unzureichender Platz`,buildingLevelZero:`Gebäudelevel ist 0, kann nicht abgerissen werden`,researchQueueFull:`Forschungsauftrag voll`,moonExists:`Mond existiert bereits`,insufficientDebris:`Unzureichendes Trümmerfeld`},nav:{overview:`Übersicht`,buildings:`Gebäude`,research:`Forschung`,shipyard:`Raumschiffwerft`,defense:`Verteidigung`,fleet:`Flotte`,officers:`Offiziere`,simulator:`Simulator`,galaxy:`Galaxie`,messages:`Nachrichten`,settings:`Einstellungen`,gm:`GM`},sidebar:{language:`Sprache`,lightMode:`Heller Modus`,darkMode:`Dunkler Modus`,collapse:`Einklappen`,expand:`Ausklappen`},resources:{metal:`Metall`,crystal:`Kristall`,deuterium:`Deuterium`,darkMatter:`Dunkle Materie`,energy:`Energie`,production:`Produktion`,consumption:`Verbrauch`,capacity:`Kapazität`,current:`Aktuell`,max:`Max. Kapazität`,perHour:`Stunde`,perMinute:`Min`,hour:`Stunde`,noEnergy:`Keine Energie`},planet:{planet:`Planet`,moon:`Mond`,colony:`Kolonie`,position:`Position`,coordinates:`Koordinaten`,switchToMoon:`Zum Mond`,backToPlanet:`Zurück zum Planeten`,fields:`Felder`,temperature:`Temperatur`,homePlanet:`Heimatplanet`,planetPrefix:`Planet`,moonSuffix:`s Mond`,colonyPrefix:`Kolonie`},player:{points:`Gesamtpunkte`},buildings:{metalMine:`Metallmine`,crystalMine:`Kristallmine`,deuteriumSynthesizer:`Deuterium-Synthesizer`,solarPlant:`Solarkraftwerk`,roboticsFactory:`Roboterfabrik`,naniteFactory:`Nanitenfabrik`,shipyard:`Raumschiffwerft`,researchLab:`Forschungslabor`,metalStorage:`Metallspeicher`,crystalStorage:`Kristallspeicher`,deuteriumTank:`Deuteriumtank`,darkMatterCollector:`Dunkle-Materie-Kollektor`,terraformer:`Terraformer`,lunarBase:`Mondbasis`,sensorPhalanx:`Sensorphalanx`,jumpGate:`Sprungtor`,planetDestroyerFactory:`Planetenzerstörer-Fabrik`,buildTime:`Bauzeit`,production:`Produktion`,consumption:`Verbrauch`,totalCost:`Gesamtkosten`,totalPoints:`Gesamtpunkte`,levelRange:`Stufenbereich`},buildingDescriptions:{metalMine:`Fördert Metallressourcen`,crystalMine:`Fördert Kristallressourcen`,deuteriumSynthesizer:`Synthesiert Deuteriumressourcen`,solarPlant:`Liefert Energie`,roboticsFactory:`Beschleunigt Baugeschwindigkeit`,naniteFactory:`Erhöht Bauauftragskapazität, +1 pro Stufe (max 10 Stufen)`,shipyard:`Baut Schiffe`,researchLab:`Erforscht Technologien`,metalStorage:`Erhöht Metallspeicherkapazität`,crystalStorage:`Erhöht Kristallspeicherkapazität`,deuteriumTank:`Erhöht Deuteriumspeicherkapazität`,darkMatterCollector:`Sammelt seltene Dunkle-Materie-Ressourcen`,terraformer:`Terraformt Planetenoberfläche, erhöht verfügbaren Platz um 5 pro Stufe`,lunarBase:`Erhöht verfügbaren Platz auf dem Mond, +5 Platz pro Stufe`,sensorPhalanx:`Erkennt Flottenaktivitäten in umliegenden Systemen`,jumpGate:`Überträgt Flotten sofort zu anderen Monden`,planetDestroyerFactory:`Konstruiert ultimative Waffen zur Zerstörung von Planeten`},ships:{lightFighter:`Leichter Jäger`,heavyFighter:`Schwerer Jäger`,cruiser:`Kreuzer`,battleship:`Schlachtschiff`,smallCargo:`Kleiner Transporter`,largeCargo:`Großer Transporter`,colonyShip:`Kolonieschiff`,recycler:`Recycler`,espionageProbe:`Spionagesonde`,darkMatterHarvester:`Dunkle-Materie-Ernter`,deathstar:`Todesstern`},shipDescriptions:{lightFighter:`Grundlegende Kampfeinheit`,heavyFighter:`Schwer gepanzerter Jäger`,cruiser:`Mittleres Kriegsschiff, ausgewogene Offensive und Defensive`,battleship:`Mächtiges Kriegsschiff`,smallCargo:`Transportiert kleine Mengen Ressourcen`,largeCargo:`Transportiert große Mengen Ressourcen`,colonyShip:`Zur Kolonisierung neuer Planeten`,recycler:`Sammelt Trümmerfeld-Ressourcen`,espionageProbe:`Späht feindliche Planeten aus`,darkMatterHarvester:`Spezielles Schiff zum Ernten von Dunkler Materie`,deathstar:`Ultimative Waffe, die ganze Planeten zerstören kann`},defenses:{rocketLauncher:`Raketenwerfer`,lightLaser:`Leichtes Lasergeschütz`,heavyLaser:`Schweres Lasergeschütz`,gaussCannon:`Gaußkanone`,ionCannon:`Ionengeschütz`,plasmaTurret:`Plasmawerfer`,smallShieldDome:`Kleine Schildkuppel`,largeShieldDome:`Große Schildkuppel`,planetaryShield:`Planetarschild`},defenseDescriptions:{rocketLauncher:`Grundlegende Verteidigungsanlage`,lightLaser:`Leichte Energiewaffe`,heavyLaser:`Schwere Energiewaffe`,gaussCannon:`Hochgeschwindigkeits-Kinetikwaffe`,ionCannon:`Effektiv gegen Schilde`,plasmaTurret:`Mächtige Verteidigungsanlage`,smallShieldDome:`Kleiner Schild zum Schutz des gesamten Planeten`,largeShieldDome:`Großer Schild zum Schutz des gesamten Planeten`,planetaryShield:`Superschild zum Schutz des Planeten vor Vernichtungsangriffen`},research:{researchTime:`Forschungszeit`,totalCost:`Gesamtkosten`,totalPoints:`Gesamtpunkte`,levelRange:`Stufenbereich`},technologies:{energyTechnology:`Energietechnik`,laserTechnology:`Lasertechnik`,ionTechnology:`Ionentechnik`,hyperspaceTechnology:`Hyperraumtechnik`,plasmaTechnology:`Plasmatechnik`,computerTechnology:`Computertechnologie`,combustionDrive:`Verbrennungsantrieb`,impulseDrive:`Impulsantrieb`,hyperspaceDrive:`Hyperraumantrieb`,darkMatterTechnology:`Dunkle-Materie-Technologie`,terraformingTechnology:`Terraforming-Technologie`,planetDestructionTech:`Planetenzerstörungstechnologie`},technologyDescriptions:{energyTechnology:`Verbessert Energieeffizienz`,laserTechnology:`Grundlage für Laserwaffen und -verteidigung`,ionTechnology:`Ionenwaffentechnologie`,hyperspaceTechnology:`Hyperraumsprung-Technologie`,plasmaTechnology:`Plasmawaffentechnologie`,computerTechnology:`Erhöht Forschungsauftragskapazität, +1 pro Stufe (max 10 Stufen)`,combustionDrive:`Grundlegende Antriebstechnologie`,impulseDrive:`Mittlere Antriebstechnologie`,hyperspaceDrive:`Fortgeschrittene Antriebstechnologie`,darkMatterTechnology:`Forschung zu Eigenschaften und Anwendungen von Dunkler Materie`,terraformingTechnology:`Forschung zur Planeten-Terraforming-Technologie, erhöht verfügbaren Platz aller Planeten um 3 pro Stufe`,planetDestructionTech:`Schreckliche Technologie zur Zerstörung ganzer Planeten`},officers:{commander:`Kommandant`,admiral:`Admiral`,engineer:`Ingenieur`,geologist:`Geologe`,technocrat:`Technokrat`,darkMatterSpecialist:`Dunkle-Materie-Spezialist`,resourceBonus:`Ressourcenproduktionsbonus`,darkMatterBonus:`Dunkle-Materie-Produktionsbonus`,energyBonus:`Energieproduktionsbonus`},officerDescriptions:{commander:`Verbessert Baugeschwindigkeit und Management`,admiral:`Verbessert Flottenkampf und Geschwindigkeit`,engineer:`Verbessert Energie und Verteidigung`,geologist:`Verbessert Ressourcenproduktion`,technocrat:`Verbessert Forschungsgeschwindigkeit und Spionage`,darkMatterSpecialist:`Verbessert Dunkle-Materie-Sammlungseffizienz`},queue:{buildQueue:`Bauauftrag`,researchQueue:`Forschungsauftrag`,building:`Im Bau`,researching:`In Forschung`,remaining:`Verbleibend`,cancel:`Abbrechen`,cancelBuild:`Bau abbrechen`,cancelResearch:`Forschung abbrechen`,confirmCancel:`Möchten Sie wirklich abbrechen? 50% der Ressourcen werden zurückerstattet.`,level:`Stufe`,upgradeToLevel:`Auf Stufe aufrüsten`},overview:{title:`Planetenübersicht`,resourceOverview:`Ressourcen`,fleetInfo:`Flotte`,currentShips:`Schiffe auf diesem Planeten`,productionSources:`Produktionsquellen`,productionSourcesDesc:`Detaillierte Ressourcenproduktion und Bonusinformationen`,consumptionSources:`Verbrauchsquellen`,consumptionSourcesDesc:`Energieverbrauchsdetails für Gebäude`,totalProduction:`Gesamtproduktion`,totalConsumption:`Gesamtverbrauch`,noConsumption:`Kein Energieverbrauch`},buildingsView:{title:`Gebäude`,usedSpace:`Verwendeter Platz`,spaceUsage:`Platzbedarf`,level:`Stufe`,upgradeCost:`Ausbaukosten`,buildTime:`Bauzeit`,upgrade:`Ausbauen`,maxLevelReached:`Maximale Stufe erreicht`,requirementsNotMet:`Anforderungen nicht erfüllt`,upgradeFailed:`Ausbau fehlgeschlagen`,upgradeFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen, Platz oder keine anderen Bauaufträge haben.`,demolish:`Abreißen`,demolishRefund:`Abriss-Rückerstattung`,demolishFailed:`Abriss fehlgeschlagen`,demolishFailedMessage:`Abriss nicht möglich. Bitte überprüfen Sie, ob die Bauqueue voll ist oder die Gebäudestufe 0 ist.`},researchView:{title:`Forschung`,researchCost:`Forschungskosten`,research:`Forschen`,maxLevelReached:`Maximale Stufe erreicht`,researchFailed:`Forschung fehlgeschlagen`,researchFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben, die Voraussetzungen erfüllt sind oder keine anderen Forschungsaufträge vorhanden sind.`},shipyard:{attack:`Angriff`,shield:`Schild`,armor:`Panzerung`,speed:`Geschwindigkeit`,cargoCapacity:`Ladekapazität`,fuelConsumption:`Treibstoffverbrauch`,buildCost:`Baukosten`,buildTime:`Bauzeit`,perUnit:`Pro Einheit`,batchCalculator:`Batch-Rechner`,quantity:`Menge`,totalCost:`Gesamtkosten`,totalTime:`Gesamtzeit`},shipyardView:{title:`Raumschiffwerft`,fleetStorage:`Flottenspeicher`,attack:`Angriff`,shield:`Schild`,speed:`Geschwindigkeit`,cargoCapacity:`Ladekapazität`,unitCost:`Stückkosten`,buildQuantity:`Baumenge`,totalCost:`Gesamtkosten`,build:`Bauen`,inputError:`Eingabefehler`,inputErrorMessage:`Bitte Baumenge eingeben!`,buildFailed:`Bau fehlgeschlagen`,buildFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben oder die Voraussetzungen erfüllt sind.`},defense:{attack:`Angriff`,shield:`Schild`,armor:`Panzerung`,buildCost:`Baukosten`,buildTime:`Bauzeit`,perUnit:`Pro Einheit`,batchCalculator:`Batch-Rechner`,quantity:`Menge`,totalCost:`Gesamtkosten`,totalTime:`Gesamtzeit`},defenseView:{title:`Verteidigung`,attack:`Angriff`,shield:`Schild`,armor:`Panzerung`,buildTime:`Bauzeit`,seconds:`s`,unitCost:`Stückkosten`,buildQuantity:`Baumenge`,totalCost:`Gesamtkosten`,build:`Bauen`,shieldDomeBuilt:`Schildkuppel bereits gebaut`,inputError:`Eingabefehler`,inputErrorMessage:`Bitte Baumenge eingeben!`,buildFailed:`Bau fehlgeschlagen`,buildFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben oder die Voraussetzungen erfüllt sind. Schildkuppeln können nur einmal gebaut werden.`},fleetView:{title:`Flottenverwaltung`,fleetOverview:`Flottenübersicht`,sendFleet:`Flotte senden`,flightMissions:`Flugmissionen`,currentPlanetFleet:`Flotte auf diesem Planeten`,attack:`Angriff`,shield:`Schild`,armor:`Panzerung`,speed:`Geschwindigkeit`,cargo:`Fracht`,selectFleet:`Flotte auswählen`,selectFleetDescription:`Wählen Sie die Anzahl der zu sendenden Schiffe`,available:`Verfügbar`,all:`Alle`,targetCoordinates:`Zielkoordinaten`,galaxy:`Galaxie`,system:`System`,position:`Position`,missionType:`Missionstyp`,missionInfo:`Missionsinfo`,fuelConsumption:`Treibstoffverbrauch`,flightTime:`Flugzeit`,attackMission:`Angriff`,transport:`Transport`,colonize:`Kolonisieren`,spy:`Spionage`,deploy:`Stationieren`,recycle:`Recyceln`,transportResources:`Ressourcen transportieren`,totalCargoCapacity:`Gesamtladekapazität`,used:`Verwendet`,noFlightMissions:`Keine Flugmissionen`,outbound:`Hinflug`,returning:`Rückflug`,fleetComposition:`Flottenzusammensetzung`,carryingResources:`Transportierte Ressourcen`,arrivalTime:`Ankunftszeit`,returnTime:`Rückkehrzeit`,recallFleet:`Flotte zurückrufen`,sendFailed:`Senden fehlgeschlagen`,sendFailedMessage:`Bitte überprüfen Sie Flottenanzahl, Treibstoffverfügbarkeit oder Ladekapazitätsgrenzen.`,recallFailed:`Zurückrufen fehlgeschlagen`,recallFailedMessage:`Diese Mission kann nicht zurückgerufen werden.`,unknownPlanet:`Unbekannter Planet`,fleetMissionSlots:`Flottenmissionsplätze`,noShipsSelected:`Keine Schiffe ausgewählt`,cannotSendToOwnPlanet:`Flotte kann nicht zu eigenem Planeten gesendet werden`,cargoExceedsCapacity:`Fracht überschreitet Kapazität`,noColonyShip:`Kolonieschiff für Kolonisierungsmission erforderlich`,noDebrisAtTarget:`Kein Trümmerfeld an Zielkoordinaten oder Trümmerfeld ist leer`},officersView:{title:`Offiziere`,activated:`Aktiviert`,inactive:`Inaktiv`,activeStatus:`Aktivierungsstatus`,expirationTime:`Ablaufzeit`,remainingTime:`Verbleibende Zeit`,recruitCost:`Rekrutierungskosten`,days:`Tage`,benefitsBonus:`Vorteile`,resourceProduction:`Ressourcenproduktion`,darkMatterProduction:`Dunkle-Materie-Produktion`,energyProduction:`Energieproduktion`,buildingSpeed:`Baugeschwindigkeit`,researchSpeed:`Forschungsgeschwindigkeit`,fleetSpeed:`Flottengeschwindigkeit`,fuelConsumption:`Treibstoffverbrauch`,defense:`Verteidigung`,storageCapacity:`Lagerkapazität`,buildQueue:`Bauauftrag`,fleetSlots:`Flottenslots`,hire:`Rekrutieren`,renew:`Verlängern`,dismiss:`Entlassen`,hireTitle:`Offizier rekrutieren`,hireMessage:`Möchten Sie wirklich {name} rekrutieren? Gültig für 7 Tage.`,renewTitle:`Offizier verlängern`,renewMessage:`Möchten Sie wirklich {name} für 7 Tage verlängern?`,dismissTitle:`Offizier entlassen`,dismissMessage:`Möchten Sie wirklich {name} entlassen? Es werden keine Kosten zurückerstattet.`,hireFailed:`Rekrutierung fehlgeschlagen`,renewFailed:`Verlängerung fehlgeschlagen`,insufficientResources:`Nicht genug Ressourcen!`},galaxyView:{title:`Galaxie`,selectCoordinates:`Koordinaten auswählen`,galaxy:`Galaxie`,selectGalaxy:`Galaxie auswählen`,system:`System`,selectSystem:`System auswählen`,view:`Anzeigen`,myPlanet:`Mein Planet`,totalPositions:`Insgesamt 10 Planetenpositionen`,mine:`Mein`,hostile:`Feindlich`,emptySlot:`Leer - Kolonisierbar`,scout:`Spähen`,attack:`Angriff`,colonize:`Kolonisieren`,switch:`Wechseln`,recycle:`Recyceln`,debrisField:`Trümmerfeld`,scoutPlanetTitle:`Planet ausspionieren`,attackPlanetTitle:`Planet angreifen`,colonizePlanetTitle:`Planet kolonisieren`,recyclePlanetTitle:`Trümmer recyceln`,scoutPlanetMessage:`Möchten Sie wirklich Spionagesonden senden, um Planet [{coordinates}] auszuspionieren? + +Bitte gehen Sie zur Flottenseite, um Schiffe auszuwählen und zu senden.`,attackPlanetMessage:`Möchten Sie wirklich Planet [{coordinates}] angreifen? + +Bitte gehen Sie zur Flottenseite, um Schiffe auszuwählen und zu senden.`,colonizePlanetMessage:`Möchten Sie wirklich Position [{coordinates}] kolonisieren? + +Bitte gehen Sie zur Flottenseite, um ein Kolonieschiff zu senden.`,recyclePlanetMessage:`Möchten Sie wirklich Trümmer bei Position [{coordinates}] recyceln? + +Bitte gehen Sie zur Flottenseite, um Recycler zu senden.`},messagesView:{title:`Nachrichten`,battles:`Kämpfe`,spy:`Spionage`,battleReports:`Kampfberichte`,spyReports:`Spionageberichte`,noBattleReports:`Keine Kampfberichte`,noSpyReports:`Keine Spionageberichte`,battleReport:`Kampfbericht`,spyReport:`Spionagebericht`,victory:`Sieg`,defeat:`Niederlage`,draw:`Unentschieden`,attackerFleet:`Angreiferflotte`,defenderFleet:`Verteidigerflotte`,defenderDefense:`Verteidigerverteidigung`,attackerLosses:`Angreiferverluste`,defenderLosses:`Verteidigerverluste`,noLosses:`Keine Verluste`,plunder:`Beute`,debrisField:`Trümmerfeld`,resources:`Ressourcen`,fleet:`Flotte`,defense:`Verteidigung`,buildings:`Gebäude`,unread:`Ungelesen`,targetPlanet:`Zielplanet`,attackerRemaining:`Angreifer verblieben`,defenderRemaining:`Verteidiger verblieben`,moonChance:`Mondchance`,showRoundDetails:`Rundendetails anzeigen`,hideRoundDetails:`Rundendetails ausblenden`,round:`Runde {round}`,attackerRemainingPower:`Verbleibende Angreiferkraft`,defenderRemainingPower:`Verbleibende Verteidigerkraft`},simulatorView:{title:`Kampfsimulator`,attacker:`Angreifer`,defender:`Verteidiger`,attackerConfig:`Angreiferkonfiguration`,attackerConfigDesc:`Angreiferflotte und Technologiestufen konfigurieren`,defenderConfig:`Verteidigerkonfiguration`,defenderConfigDesc:`Verteidigerflotte, Verteidigung und Technologiestufen konfigurieren`,fleet:`Flotte`,defenseStructures:`Verteidigungsanlagen`,techLevels:`Technologiestufen`,weapon:`Waffe`,shield:`Schild`,armor:`Panzerung`,defenderResources:`Verteidigerressourcen (für Beuteberechnung)`,startSimulation:`Simulation starten`,reset:`Zurücksetzen`,battleResult:`Kampfergebnis`,attackerVictory:`Angreifer Sieg`,defenderVictory:`Verteidiger Sieg`,draw:`Unentschieden`,afterRounds:`Nach {rounds} Runden`,attackerLosses:`Angreiferverluste`,defenderLosses:`Verteidigerverluste`,noLosses:`Keine Verluste`,attackerRemaining:`Angreifer verblieben`,defenderRemaining:`Verteidiger verblieben`,allDestroyed:`Alle zerstört`,plunderableResources:`Erbeutbare Ressourcen`,debrisField:`Trümmerfeld`,moonChance:`Mondchance`,showRoundDetails:`Rundendetails anzeigen`,hideRoundDetails:`Rundendetails ausblenden`,round:`Runde {round}`,attackerRemainingPower:`Verbleibende Angreiferkraft`,defenderRemainingPower:`Verbleibende Verteidigerkraft`},settings:{dataManagement:`Datenverwaltung`,dataManagementDesc:`Spieldaten exportieren, importieren oder löschen`,exportData:`Daten exportieren`,exportDataDesc:`Spielfortschritt als JSON-Datei exportieren`,export:`Exportieren`,exporting:`Exportieren...`,exportSuccess:`Export erfolgreich`,exportFailed:`Export fehlgeschlagen, bitte erneut versuchen`,importData:`Daten importieren`,importDataDesc:`Spielfortschritt aus JSON-Datei wiederherstellen`,selectFile:`Datei auswählen`,importSuccess:`Import erfolgreich`,importConfirmTitle:`Import bestätigen`,importConfirmMessage:`Beim Importieren wird der aktuelle Spielfortschritt überschrieben. Diese Aktion kann nicht rückgängig gemacht werden. Fortfahren?`,importFailed:`Import fehlgeschlagen, bitte Dateiformat überprüfen`,clearData:`Daten löschen`,clearDataDesc:`Alle Spieldaten löschen und zurücksetzen`,clear:`Löschen`,clearConfirmTitle:`Löschen bestätigen`,clearConfirmMessage:`Alle Spieldaten werden gelöscht und von vorne begonnen. Diese Aktion kann nicht rückgängig gemacht werden. Fortfahren?`,gameSettings:`Spieleinstellungen`,gameSettingsDesc:`Spielparameter und Einstellungen anpassen`,gamePause:`Spielpause`,gamePauseDesc:`Spielzeit und Ressourcenproduktion pausieren oder fortsetzen`,pause:`Pausieren`,resume:`Fortsetzen`,gamePaused:`Spiel pausiert`,gameResumed:`Spiel fortgesetzt`,playerName:`Spielername`,gameSpeed:`Spielgeschwindigkeit`,gameSpeedDesc:`Aktueller Spielgeschwindigkeitsmultiplikator`,about:`Über`,version:`Version`,buildDate:`Build-Datum`,community:`Community`,github:`GitHub-Repository`,qqGroup:`QQ-Gruppe`},gmView:{title:`GM-Kontrollpanel`,adminOnly:`Nur Admin`,selectPlanet:`Planet auswählen`,choosePlanet:`Einen Planeten auswählen`,resources:`Ressourcen`,buildings:`Gebäude`,research:`Forschung`,ships:`Schiffe`,defense:`Verteidigung`,officers:`Offiziere`,modifyResources:`Ressourcen ändern`,resourcesDesc:`Planetenressourcen schnell ändern`,modifyBuildings:`Gebäude ändern`,buildingsDesc:`Gebäudelevel schnell festlegen`,modifyResearch:`Forschung ändern`,researchDesc:`Forschungslevel schnell festlegen`,modifyShips:`Schiffe ändern`,shipsDesc:`Schiffsanzahl schnell festlegen`,modifyDefense:`Verteidigung ändern`,defenseDesc:`Verteidigungsanzahl schnell festlegen`,modifyOfficers:`Offiziere ändern`,officersDesc:`Offiziersablaufzeit schnell festlegen`,days:`T`,dangerZone:`Gefahrenzone`,dangerZoneDesc:`Die folgenden Vorgänge sind irreversibel`,resetGame:`Spiel zurücksetzen`,resetGameConfirm:`Möchten Sie das Spiel wirklich zurücksetzen? Alle Daten werden gelöscht!`}},i={common:{confirm:`Подтвердить`,cancel:`Отмена`,delete:`Удалить`,edit:`Редактировать`,save:`Сохранить`,close:`Закрыть`,back:`Назад`,next:`Далее`,previous:`Предыдущий`,submit:`Отправить`,reset:`Сбросить`,search:`Поиск`,filter:`Фильтр`,loading:`Загрузка...`,noData:`Нет данных`,error:`Ошибка`,success:`Успешно`,warning:`Предупреждение`,info:`Информация`,resourceType:`Тип ресурса`,playerName:`Командир`,timeHour:`ч`,timeMinute:`мин`,timeSecond:`сек`,featureLocked:`Функция заблокирована`,unlockRequired:`Требуется здание`,requiredBuilding:`Необходимое здание`,currentLevel:`Текущий уровень`,goToBuildings:`К зданиям`,locked:`Заблокировано`,viewRequirements:`Просмотр требований`,requirementsNotMet:`Требования не выполнены`,current:`Текущий`,level:`Уровень`},errors:{requirementsNotMet:`Требования не выполнены`,insufficientResources:`Недостаточно ресурсов`,insufficientFleetStorage:`Недостаточно места для флота`,shieldDomeLimit:`Достигнут лимит щитовых куполов`,fleetMissionsFull:`Слоты миссий флота заполнены`,insufficientFleet:`Недостаточно флота`,insufficientFuel:`Недостаточно топлива`,planetOnly:`Это здание можно построить только на планетах`,moonOnly:`Это здание можно построить только на лунах`,buildQueueFull:`Очередь строительства заполнена`,insufficientSpace:`Недостаточно места`,buildingLevelZero:`Уровень здания 0, нельзя снести`,researchQueueFull:`Очередь исследований заполнена`,moonExists:`Луна уже существует`,insufficientDebris:`Недостаточно обломков`},nav:{overview:`Обзор`,buildings:`Здания`,research:`Исследования`,shipyard:`Верфь`,defense:`Оборона`,fleet:`Флот`,officers:`Офицеры`,simulator:`Симулятор`,galaxy:`Галактика`,messages:`Сообщения`,settings:`Настройки`,gm:`GM`},sidebar:{language:`Язык`,lightMode:`Светлая тема`,darkMode:`Тёмная тема`,collapse:`Свернуть`,expand:`Развернуть`},resources:{metal:`Металл`,crystal:`Кристалл`,deuterium:`Дейтерий`,darkMatter:`Тёмная материя`,energy:`Энергия`,production:`Производство`,consumption:`Потребление`,capacity:`Вместимость`,current:`Текущий`,max:`Макс. вместимость`,perHour:`час`,perMinute:`мин`,hour:`час`,noEnergy:`Нет энергии`},planet:{planet:`Планета`,moon:`Луна`,colony:`Колония`,position:`Позиция`,coordinates:`Координаты`,switchToMoon:`На луну`,backToPlanet:`Вернуться на планету`,fields:`Поля`,temperature:`Температура`,homePlanet:`Родная планета`,planetPrefix:`Планета`,moonSuffix:`я луна`,colonyPrefix:`Колония`},player:{points:`Всего очков`},buildings:{metalMine:`Рудник металла`,crystalMine:`Рудник кристалла`,deuteriumSynthesizer:`Синтезатор дейтерия`,solarPlant:`Солнечная электростанция`,roboticsFactory:`Фабрика роботов`,naniteFactory:`Нанитная фабрика`,shipyard:`Верфь`,researchLab:`Исследовательская лаборатория`,metalStorage:`Хранилище металла`,crystalStorage:`Хранилище кристалла`,deuteriumTank:`Цистерна дейтерия`,darkMatterCollector:`Коллектор тёмной материи`,terraformer:`Терраформер`,lunarBase:`Лунная база`,sensorPhalanx:`Сенсорная фаланга`,jumpGate:`Прыжковые ворота`,planetDestroyerFactory:`Фабрика разрушителей планет`,buildTime:`Время строительства`,production:`Производство`,consumption:`Потребление`,totalCost:`Общая стоимость`,totalPoints:`Общие очки`,levelRange:`Диапазон уровней`},buildingDescriptions:{metalMine:`Добывает металлические ресурсы`,crystalMine:`Добывает кристаллические ресурсы`,deuteriumSynthesizer:`Синтезирует дейтериевые ресурсы`,solarPlant:`Обеспечивает энергией`,roboticsFactory:`Ускоряет скорость строительства`,naniteFactory:`Увеличивает вместимость очереди строительства, +1 за уровень (макс 10 уровней)`,shipyard:`Строит корабли`,researchLab:`Исследует технологии`,metalStorage:`Увеличивает ёмкость хранилища металла`,crystalStorage:`Увеличивает ёмкость хранилища кристалла`,deuteriumTank:`Увеличивает ёмкость хранилища дейтерия`,darkMatterCollector:`Собирает редкие ресурсы тёмной материи`,terraformer:`Терраформирует поверхность планеты, увеличивает доступное пространство на 5 за уровень`,lunarBase:`Увеличивает доступное пространство на луне, +5 пространства за уровень`,sensorPhalanx:`Обнаруживает активность флота в окружающих системах`,jumpGate:`Мгновенно переносит флоты на другие луны`,planetDestroyerFactory:`Производит абсолютное оружие, способное уничтожать планеты`},ships:{lightFighter:`Лёгкий истребитель`,heavyFighter:`Тяжёлый истребитель`,cruiser:`Крейсер`,battleship:`Линкор`,smallCargo:`Малый транспорт`,largeCargo:`Большой транспорт`,colonyShip:`Колонизатор`,recycler:`Переработчик`,espionageProbe:`Шпионский зонд`,darkMatterHarvester:`Сборщик тёмной материи`,deathstar:`Звезда Смерти`},shipDescriptions:{lightFighter:`Базовая боевая единица`,heavyFighter:`Тяжелобронированный истребитель`,cruiser:`Средний боевой корабль, сбалансированная атака и защита`,battleship:`Мощный боевой корабль`,smallCargo:`Транспортирует небольшое количество ресурсов`,largeCargo:`Транспортирует большое количество ресурсов`,colonyShip:`Используется для колонизации новых планет`,recycler:`Собирает ресурсы с поля обломков`,espionageProbe:`Разведывает вражеские планеты`,darkMatterHarvester:`Специальный корабль для сбора тёмной материи`,deathstar:`Абсолютное оружие, способное уничтожать целые планеты`},defenses:{rocketLauncher:`Ракетная установка`,lightLaser:`Лёгкий лазер`,heavyLaser:`Тяжёлый лазер`,gaussCannon:`Гауссова пушка`,ionCannon:`Ионное орудие`,plasmaTurret:`Плазменная турель`,smallShieldDome:`Малый щитовой купол`,largeShieldDome:`Большой щитовой купол`,planetaryShield:`Планетарный щит`},defenseDescriptions:{rocketLauncher:`Базовое оборонительное сооружение`,lightLaser:`Лёгкое энергетическое оружие`,heavyLaser:`Тяжёлое энергетическое оружие`,gaussCannon:`Высокоскоростное кинетическое оружие`,ionCannon:`Эффективно против щитов`,plasmaTurret:`Мощное оборонительное сооружение`,smallShieldDome:`Малый щит, защищающий всю планету`,largeShieldDome:`Большой щит, защищающий всю планету`,planetaryShield:`Суперщит, защищающий планету от атак уничтожения`},research:{researchTime:`Время исследования`,totalCost:`Общая стоимость`,totalPoints:`Общие очки`,levelRange:`Диапазон уровней`},technologies:{energyTechnology:`Энергетическая технология`,laserTechnology:`Лазерная технология`,ionTechnology:`Ионная технология`,hyperspaceTechnology:`Гиперпространственная технология`,plasmaTechnology:`Плазменная технология`,computerTechnology:`Компьютерная технология`,combustionDrive:`Реактивный двигатель`,impulseDrive:`Импульсный двигатель`,hyperspaceDrive:`Гиперпространственный двигатель`,darkMatterTechnology:`Технология тёмной материи`,terraformingTechnology:`Технология терраформирования`,planetDestructionTech:`Технология уничтожения планет`},technologyDescriptions:{energyTechnology:`Улучшает энергоэффективность`,laserTechnology:`Основа лазерного оружия и обороны`,ionTechnology:`Технология ионного оружия`,hyperspaceTechnology:`Технология гиперпространственных прыжков`,plasmaTechnology:`Технология плазменного оружия`,computerTechnology:`Увеличивает вместимость очереди исследований, +1 за уровень (макс 10 уровней)`,combustionDrive:`Базовая технология двигателей`,impulseDrive:`Средняя технология двигателей`,hyperspaceDrive:`Продвинутая технология двигателей`,darkMatterTechnology:`Исследование свойств и применения тёмной материи`,terraformingTechnology:`Исследование технологии терраформирования планет, увеличивает доступное пространство всех планет на 3 за уровень`,planetDestructionTech:`Исследование ужасающей технологии уничтожения целых планет`},officers:{commander:`Командир`,admiral:`Адмирал`,engineer:`Инженер`,geologist:`Геолог`,technocrat:`Технократ`,darkMatterSpecialist:`Специалист по тёмной материи`,resourceBonus:`Бонус производства ресурсов`,darkMatterBonus:`Бонус производства тёмной материи`,energyBonus:`Бонус производства энергии`},officerDescriptions:{commander:`Улучшает скорость строительства и управление`,admiral:`Улучшает боевую мощь и скорость флота`,engineer:`Улучшает энергию и оборону`,geologist:`Улучшает производство ресурсов`,technocrat:`Улучшает скорость исследований и шпионаж`,darkMatterSpecialist:`Улучшает эффективность сбора тёмной материи`},queue:{buildQueue:`Очередь строительства`,researchQueue:`Очередь исследований`,building:`Строится`,researching:`Исследуется`,remaining:`Осталось`,cancel:`Отменить`,cancelBuild:`Отменить строительство`,cancelResearch:`Отменить исследование`,confirmCancel:`Вы уверены, что хотите отменить? 50% ресурсов будет возвращено.`,level:`Уровень`,upgradeToLevel:`Улучшить до уровня`},overview:{title:`Обзор планеты`,resourceOverview:`Ресурсы`,fleetInfo:`Флот`,currentShips:`Корабли на этой планете`,productionSources:`Источники производства`,productionSourcesDesc:`Подробная информация о производстве ресурсов и бонусах`,consumptionSources:`Источники потребления`,consumptionSourcesDesc:`Детали потребления энергии зданиями`,totalProduction:`Общее производство`,totalConsumption:`Общее потребление`,noConsumption:`Нет потребления энергии`},buildingsView:{title:`Здания`,usedSpace:`Использовано полей`,spaceUsage:`Использование полей`,level:`Уровень`,upgradeCost:`Стоимость улучшения`,buildTime:`Время строительства`,upgrade:`Улучшить`,maxLevelReached:`Достигнут максимальный уровень`,requirementsNotMet:`Требования не выполнены`,upgradeFailed:`Улучшение не удалось`,upgradeFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов, места или нет других задач строительства.`,demolish:`Снести`,demolishRefund:`Возврат от сноса`,demolishFailed:`Снос не удался`,demolishFailedMessage:`Невозможно снести это здание. Проверьте, не заполнена ли очередь строительства или уровень здания не равен 0.`},researchView:{title:`Исследования`,researchCost:`Стоимость исследования`,research:`Исследовать`,maxLevelReached:`Достигнут максимальный уровень`,researchFailed:`Исследование не удалось`,researchFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов, выполнены ли предварительные условия или нет других исследовательских задач.`},shipyard:{attack:`Атака`,shield:`Щит`,armor:`Броня`,speed:`Скорость`,cargoCapacity:`Грузоподъёмность`,fuelConsumption:`Расход топлива`,buildCost:`Стоимость постройки`,buildTime:`Время строительства`,perUnit:`За единицу`,batchCalculator:`Калькулятор партий`,quantity:`Количество`,totalCost:`Общая стоимость`,totalTime:`Общее время`},shipyardView:{title:`Верфь`,fleetStorage:`Хранилище флота`,attack:`Атака`,shield:`Щит`,speed:`Скорость`,cargoCapacity:`Грузоподъёмность`,unitCost:`Стоимость единицы`,buildQuantity:`Количество для постройки`,totalCost:`Общая стоимость`,build:`Построить`,inputError:`Ошибка ввода`,inputErrorMessage:`Пожалуйста, введите количество для постройки!`,buildFailed:`Постройка не удалась`,buildFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов или выполнены ли предварительные условия.`},defense:{attack:`Атака`,shield:`Щит`,armor:`Броня`,buildCost:`Стоимость постройки`,buildTime:`Время строительства`,perUnit:`За единицу`,batchCalculator:`Калькулятор партий`,quantity:`Количество`,totalCost:`Общая стоимость`,totalTime:`Общее время`},defenseView:{title:`Оборона`,attack:`Атака`,shield:`Щит`,armor:`Броня`,buildTime:`Время постройки`,seconds:`с`,unitCost:`Стоимость единицы`,buildQuantity:`Количество для постройки`,totalCost:`Общая стоимость`,build:`Построить`,shieldDomeBuilt:`Щитовой купол уже построен`,inputError:`Ошибка ввода`,inputErrorMessage:`Пожалуйста, введите количество для постройки!`,buildFailed:`Постройка не удалась`,buildFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов или выполнены ли предварительные условия. Щитовые купола можно построить только один раз.`},fleetView:{title:`Управление флотом`,fleetOverview:`Обзор флота`,sendFleet:`Отправить флот`,flightMissions:`Полетные миссии`,currentPlanetFleet:`Флот на этой планете`,attack:`Атака`,shield:`Щит`,armor:`Броня`,speed:`Скорость`,cargo:`Груз`,selectFleet:`Выбрать флот`,selectFleetDescription:`Выберите количество кораблей для отправки`,available:`Доступно`,all:`Все`,targetCoordinates:`Целевые координаты`,galaxy:`Галактика`,system:`Система`,position:`Позиция`,missionType:`Тип миссии`,missionInfo:`Информация о миссии`,fuelConsumption:`Расход топлива`,flightTime:`Время полета`,attackMission:`Атака`,transport:`Транспорт`,colonize:`Колонизация`,spy:`Разведка`,deploy:`Размещение`,recycle:`Переработка`,transportResources:`Транспортировка ресурсов`,totalCargoCapacity:`Общая грузоподъёмность`,used:`Использовано`,noFlightMissions:`Нет полетных миссий`,outbound:`Туда`,returning:`Возвращение`,fleetComposition:`Состав флота`,carryingResources:`Перевозимые ресурсы`,arrivalTime:`Время прибытия`,returnTime:`Время возврата`,recallFleet:`Отозвать флот`,sendFailed:`Отправка не удалась`,sendFailedMessage:`Пожалуйста, проверьте количество флота, наличие топлива или ограничения грузоподъёмности.`,recallFailed:`Отзыв не удался`,recallFailedMessage:`Эта миссия не может быть отозвана.`,unknownPlanet:`Неизвестная планета`,fleetMissionSlots:`Слоты миссий флота`,noShipsSelected:`Корабли не выбраны`,cannotSendToOwnPlanet:`Невозможно отправить флот на свою планету`,cargoExceedsCapacity:`Груз превышает вместимость`,noColonyShip:`Для колонизационной миссии требуется колониальный корабль`,noDebrisAtTarget:`Нет поля обломков по целевым координатам или поле обломков пусто`},officersView:{title:`Офицеры`,activated:`Активирован`,inactive:`Неактивен`,activeStatus:`Статус активации`,expirationTime:`Время истечения`,remainingTime:`Оставшееся время`,recruitCost:`Стоимость найма`,days:`дн.`,benefitsBonus:`Бонусы`,resourceProduction:`Производство ресурсов`,darkMatterProduction:`Производство тёмной материи`,energyProduction:`Производство энергии`,buildingSpeed:`Скорость строительства`,researchSpeed:`Скорость исследований`,fleetSpeed:`Скорость флота`,fuelConsumption:`Расход топлива`,defense:`Защита`,storageCapacity:`Вместимость хранилища`,buildQueue:`Очередь строительства`,fleetSlots:`Слоты флота`,hire:`Нанять`,renew:`Продлить`,dismiss:`Уволить`,hireTitle:`Нанять офицера`,hireMessage:`Вы уверены, что хотите нанять {name}? Действует 7 дней.`,renewTitle:`Продлить офицера`,renewMessage:`Вы уверены, что хотите продлить {name} на 7 дней?`,dismissTitle:`Уволить офицера`,dismissMessage:`Вы уверены, что хотите уволить {name}? Средства не возвращаются.`,hireFailed:`Найм не удался`,renewFailed:`Продление не удалось`,insufficientResources:`Недостаточно ресурсов!`},galaxyView:{title:`Галактика`,selectCoordinates:`Выбрать координаты`,galaxy:`Галактика`,selectGalaxy:`Выбрать галактику`,system:`Система`,selectSystem:`Выбрать систему`,view:`Показать`,myPlanet:`Моя планета`,totalPositions:`Всего 10 позиций планет`,mine:`Моя`,hostile:`Враждебная`,emptySlot:`Пусто - можно колонизировать`,scout:`Разведка`,attack:`Атака`,colonize:`Колонизация`,switch:`Переключить`,recycle:`Переработка`,debrisField:`Поле обломков`,scoutPlanetTitle:`Разведать планету`,attackPlanetTitle:`Атаковать планету`,colonizePlanetTitle:`Колонизировать планету`,recyclePlanetTitle:`Переработать обломки`,scoutPlanetMessage:`Вы уверены, что хотите отправить шпионские зонды для разведки планеты [{coordinates}]? + +Перейдите на страницу флота, чтобы выбрать корабли и отправить.`,attackPlanetMessage:`Вы уверены, что хотите атаковать планету [{coordinates}]? + +Перейдите на страницу флота, чтобы выбрать корабли и отправить.`,colonizePlanetMessage:`Вы уверены, что хотите колонизировать позицию [{coordinates}]? + +Перейдите на страницу флота, чтобы отправить колонизационный корабль.`,recyclePlanetMessage:`Вы уверены, что хотите переработать обломки в позиции [{coordinates}]? + +Перейдите на страницу флота, чтобы отправить переработчики.`},messagesView:{title:`Сообщения`,battles:`Битвы`,spy:`Разведка`,battleReports:`Отчёты о боях`,spyReports:`Отчёты разведки`,noBattleReports:`Нет отчётов о боях`,noSpyReports:`Нет отчётов разведки`,battleReport:`Отчёт о бое`,spyReport:`Отчёт разведки`,victory:`Победа`,defeat:`Поражение`,draw:`Ничья`,attackerFleet:`Флот нападающего`,defenderFleet:`Флот защитника`,defenderDefense:`Оборона защитника`,attackerLosses:`Потери нападающего`,defenderLosses:`Потери защитника`,noLosses:`Без потерь`,plunder:`Добыча`,debrisField:`Поле обломков`,resources:`Ресурсы`,fleet:`Флот`,defense:`Оборона`,buildings:`Здания`,unread:`Непрочитано`,targetPlanet:`Целевая планета`,attackerRemaining:`Осталось у нападающего`,defenderRemaining:`Осталось у защитника`,moonChance:`Шанс появления луны`,showRoundDetails:`Показать детали раундов`,hideRoundDetails:`Скрыть детали раундов`,round:`Раунд {round}`,attackerRemainingPower:`Оставшаяся мощь нападающего`,defenderRemainingPower:`Оставшаяся мощь защитника`},simulatorView:{title:`Симулятор боя`,attacker:`Нападающий`,defender:`Защитник`,attackerConfig:`Настройки нападающего`,attackerConfigDesc:`Настроить флот и уровни технологий нападающего`,defenderConfig:`Настройки защитника`,defenderConfigDesc:`Настроить флот, оборону и уровни технологий защитника`,fleet:`Флот`,defenseStructures:`Оборонительные сооружения`,techLevels:`Уровни технологий`,weapon:`Оружие`,shield:`Щит`,armor:`Броня`,defenderResources:`Ресурсы защитника (для расчёта добычи)`,startSimulation:`Начать симуляцию`,reset:`Сбросить`,battleResult:`Результат боя`,attackerVictory:`Победа нападающего`,defenderVictory:`Победа защитника`,draw:`Ничья`,afterRounds:`После {rounds} раундов`,attackerLosses:`Потери нападающего`,defenderLosses:`Потери защитника`,noLosses:`Без потерь`,attackerRemaining:`Осталось у нападающего`,defenderRemaining:`Осталось у защитника`,allDestroyed:`Всё уничтожено`,plunderableResources:`Доступная добыча`,debrisField:`Поле обломков`,moonChance:`Шанс появления луны`,showRoundDetails:`Показать детали раундов`,hideRoundDetails:`Скрыть детали раундов`,round:`Раунд {round}`,attackerRemainingPower:`Оставшаяся мощь нападающего`,defenderRemainingPower:`Оставшаяся мощь защитника`},settings:{dataManagement:`Управление данными`,dataManagementDesc:`Экспорт, импорт или очистка игровых данных`,exportData:`Экспорт данных`,exportDataDesc:`Экспортировать прогресс игры в JSON файл`,export:`Экспорт`,exporting:`Экспорт...`,exportSuccess:`Экспорт успешен`,exportFailed:`Экспорт не удался, попробуйте еще раз`,importData:`Импорт данных`,importDataDesc:`Восстановить прогресс игры из JSON файла`,selectFile:`Выбрать файл`,importSuccess:`Импорт успешен`,importConfirmTitle:`Подтвердить импорт`,importConfirmMessage:`Импорт перезапишет текущий прогресс игры. Это действие невозможно отменить. Продолжить?`,importFailed:`Импорт не удался, проверьте формат файла`,clearData:`Очистить данные`,clearDataDesc:`Удалить все игровые данные и сбросить`,clear:`Очистить`,clearConfirmTitle:`Подтвердить очистку данных`,clearConfirmMessage:`Все игровые данные будут удалены и игра начнется заново. Это действие невозможно отменить. Продолжить?`,gameSettings:`Настройки игры`,gameSettingsDesc:`Настроить параметры и предпочтения игры`,gamePause:`Пауза игры`,gamePauseDesc:`Приостановить или возобновить игровое время и производство ресурсов`,pause:`Пауза`,resume:`Возобновить`,gamePaused:`Игра приостановлена`,gameResumed:`Игра возобновлена`,playerName:`Имя игрока`,gameSpeed:`Скорость игры`,gameSpeedDesc:`Текущий множитель скорости игры`,about:`О программе`,version:`Версия`,buildDate:`Дата сборки`,community:`Сообщество`,github:`Репозиторий GitHub`,qqGroup:`Группа QQ`},gmView:{title:`Панель управления GM`,adminOnly:`Только для администратора`,selectPlanet:`Выбрать планету`,choosePlanet:`Выберите планету`,resources:`Ресурсы`,buildings:`Здания`,research:`Исследования`,ships:`Корабли`,defense:`Оборона`,officers:`Офицеры`,modifyResources:`Изменить ресурсы`,resourcesDesc:`Быстрое изменение ресурсов планеты`,modifyBuildings:`Изменить здания`,buildingsDesc:`Быстрая установка уровней зданий`,modifyResearch:`Изменить исследования`,researchDesc:`Быстрая установка уровней исследований`,modifyShips:`Изменить корабли`,shipsDesc:`Быстрая установка количества кораблей`,modifyDefense:`Изменить оборону`,defenseDesc:`Быстрая установка количества обороны`,modifyOfficers:`Изменить офицеров`,officersDesc:`Быстрая установка времени истечения офицеров`,days:`д`,dangerZone:`Опасная зона`,dangerZoneDesc:`Следующие операции необратимы`,resetGame:`Сбросить игру`,resetGameConfirm:`Вы уверены, что хотите сбросить игру? Все данные будут удалены!`}},a={common:{confirm:`확인`,cancel:`취소`,delete:`삭제`,edit:`편집`,save:`저장`,close:`닫기`,back:`돌아가기`,next:`다음`,previous:`이전`,submit:`제출`,reset:`초기화`,search:`검색`,filter:`필터`,loading:`로딩 중...`,noData:`데이터 없음`,error:`오류`,success:`성공`,warning:`경고`,info:`정보`,resourceType:`자원 유형`,playerName:`사령관`,timeHour:`시간`,timeMinute:`분`,timeSecond:`초`,featureLocked:`기능 잠김`,unlockRequired:`건물 필요`,requiredBuilding:`필요한 건물`,currentLevel:`현재 레벨`,goToBuildings:`건물로 이동`,locked:`잠김`,viewRequirements:`요구사항 보기`,requirementsNotMet:`요구사항 미충족`,current:`현재`,level:`레벨`},errors:{requirementsNotMet:`전제 조건 미충족`,insufficientResources:`자원 부족`,insufficientFleetStorage:`함대 저장소 부족`,shieldDomeLimit:`실드 돔 한도 도달`,fleetMissionsFull:`함대 임무 슬롯 가득 참`,insufficientFleet:`함대 부족`,insufficientFuel:`연료 부족`,planetOnly:`이 건물은 행성에서만 지을 수 있습니다`,moonOnly:`이 건물은 위성에서만 지을 수 있습니다`,buildQueueFull:`건설 대기열 가득 참`,insufficientSpace:`공간 부족`,buildingLevelZero:`건물 레벨이 0이므로 철거할 수 없습니다`,researchQueueFull:`연구 대기열 가득 참`,moonExists:`위성이 이미 존재합니다`,insufficientDebris:`잔해장 부족`},nav:{overview:`개요`,buildings:`건물`,research:`연구`,shipyard:`조선소`,defense:`방어`,fleet:`함대`,officers:`장교`,simulator:`시뮬레이터`,galaxy:`은하계`,messages:`메시지`,settings:`설정`,gm:`GM`},sidebar:{language:`언어`,lightMode:`라이트 모드`,darkMode:`다크 모드`,collapse:`메뉴 접기`,expand:`메뉴 펼치기`},resources:{metal:`금속`,crystal:`크리스탈`,deuterium:`중수소`,darkMatter:`암흑 물질`,energy:`에너지`,production:`생산량`,consumption:`소비량`,capacity:`용량`,current:`현재 저장량`,max:`최대 용량`,perHour:`시간`,perMinute:`분`,hour:`시간`,noEnergy:`에너지 부족`},planet:{planet:`행성`,moon:`위성`,colony:`식민지`,position:`위치`,coordinates:`좌표`,switchToMoon:`위성 보기`,backToPlanet:`모행성으로 돌아가기`,fields:`필드`,temperature:`온도`,homePlanet:`모행성`,planetPrefix:`행성`,moonSuffix:`의 위성`,colonyPrefix:`식민지`},player:{points:`총 점수`},buildings:{metalMine:`금속 광산`,crystalMine:`크리스탈 광산`,deuteriumSynthesizer:`중수소 합성기`,solarPlant:`태양광 발전소`,roboticsFactory:`로봇 공장`,naniteFactory:`나노 공장`,shipyard:`조선소`,researchLab:`연구소`,metalStorage:`금속 창고`,crystalStorage:`크리스탈 창고`,deuteriumTank:`중수소 탱크`,darkMatterCollector:`암흑 물질 수집기`,terraformer:`지형 변환기`,lunarBase:`달 기지`,sensorPhalanx:`센서 팔랑크스`,jumpGate:`점프 게이트`,planetDestroyerFactory:`행성 파괴 공장`,buildTime:`건설 시간`,production:`생산량`,consumption:`소비`,totalCost:`총 비용`,totalPoints:`총 점수`,levelRange:`레벨 범위`},buildingDescriptions:{metalMine:`금속 자원 채굴`,crystalMine:`크리스탈 자원 채굴`,deuteriumSynthesizer:`중수소 자원 합성`,solarPlant:`에너지 제공`,roboticsFactory:`건설 속도 향상`,naniteFactory:`건설 대기열 수 증가, 레벨당 +1 (최대 10레벨)`,shipyard:`함선 건조`,researchLab:`기술 연구`,metalStorage:`금속 저장 용량 증가`,crystalStorage:`크리스탈 저장 용량 증가`,deuteriumTank:`중수소 저장 용량 증가`,darkMatterCollector:`희귀한 암흑 물질 자원 수집`,terraformer:`행성 지형 개조, 레벨당 가용 공간 5 증가`,lunarBase:`달 가용 공간 증가, 레벨당 +5 공간`,sensorPhalanx:`주변 행성계의 함대 활동 감지`,jumpGate:`다른 위성으로 함대 순간 이동`,planetDestroyerFactory:`행성을 파괴할 수 있는 궁극 병기 건조`},ships:{lightFighter:`경전투기`,heavyFighter:`중전투기`,cruiser:`순양함`,battleship:`전함`,smallCargo:`소형 수송선`,largeCargo:`대형 수송선`,colonyShip:`식민선`,recycler:`재활용선`,espionageProbe:`정찰기`,darkMatterHarvester:`암흑 물질 채취선`,deathstar:`데스스타`},shipDescriptions:{lightFighter:`기본 전투 유닛`,heavyFighter:`중장갑 전투기`,cruiser:`중형 전함, 공격과 방어 균형`,battleship:`강력한 전함`,smallCargo:`소량의 자원 운송`,largeCargo:`대량의 자원 운송`,colonyShip:`새로운 행성 식민에 사용`,recycler:`잔해장 자원 수집`,espionageProbe:`적 행성 정찰`,darkMatterHarvester:`암흑 물질 채취 전용 특수 함선`,deathstar:`행성 전체를 파괴할 수 있는 궁극 병기`},defenses:{rocketLauncher:`로켓 발사대`,lightLaser:`경량 레이저포`,heavyLaser:`중형 레이저포`,gaussCannon:`가우스 캐논`,ionCannon:`이온 캐논`,plasmaTurret:`플라즈마 포탑`,smallShieldDome:`소형 실드 돔`,largeShieldDome:`대형 실드 돔`,planetaryShield:`행성 실드`},defenseDescriptions:{rocketLauncher:`기본 방어 시설`,lightLaser:`경량 에너지 무기`,heavyLaser:`중형 에너지 무기`,gaussCannon:`고속 운동 에너지 무기`,ionCannon:`실드 파괴의 이기`,plasmaTurret:`강력한 방어 시설`,smallShieldDome:`행성 전체를 보호하는 소형 실드`,largeShieldDome:`행성 전체를 보호하는 대형 실드`,planetaryShield:`파괴 공격으로부터 행성을 보호하는 초급 실드`},research:{researchTime:`연구 시간`,totalCost:`총 비용`,totalPoints:`총 점수`,levelRange:`레벨 범위`},technologies:{energyTechnology:`에너지 기술`,laserTechnology:`레이저 기술`,ionTechnology:`이온 기술`,hyperspaceTechnology:`초공간 기술`,plasmaTechnology:`플라즈마 기술`,computerTechnology:`컴퓨터 기술`,combustionDrive:`연소 엔진`,impulseDrive:`임펄스 엔진`,hyperspaceDrive:`초공간 엔진`,darkMatterTechnology:`암흑 물질 기술`,terraformingTechnology:`지형 변환 기술`,planetDestructionTech:`행성 파괴 기술`},technologyDescriptions:{energyTechnology:`에너지 이용 효율 향상`,laserTechnology:`레이저 무기와 방어의 기초`,ionTechnology:`이온 무기 기술`,hyperspaceTechnology:`초공간 점프 기술`,plasmaTechnology:`플라즈마 무기 기술`,computerTechnology:`연구 대기열 수 증가, 레벨당 +1 (최대 10레벨)`,combustionDrive:`기본 추진 기술`,impulseDrive:`중급 추진 기술`,hyperspaceDrive:`고급 추진 기술`,darkMatterTechnology:`암흑 물질의 성질과 응용 연구`,terraformingTechnology:`행성 지형 개조 기술 연구, 레벨당 모든 행성의 가용 공간 3 증가`,planetDestructionTech:`행성 전체를 파괴하는 공포의 기술 연구`},officers:{commander:`사령관`,admiral:`제독`,engineer:`엔지니어`,geologist:`지질학자`,technocrat:`기술 전문가`,darkMatterSpecialist:`암흑 물질 전문가`,resourceBonus:`자원 생산 보너스`,darkMatterBonus:`암흑 물질 생산 보너스`,energyBonus:`에너지 생산 보너스`},officerDescriptions:{commander:`건설 속도 및 관리 능력 향상`,admiral:`함대 전투력 및 속도 향상`,engineer:`에너지 및 방어력 향상`,geologist:`자원 생산량 향상`,technocrat:`연구 속도 및 정찰 능력 향상`,darkMatterSpecialist:`암흑 물질 수집 효율 향상`},queue:{buildQueue:`건설 대기열`,researchQueue:`연구 대기열`,building:`건설 중`,researching:`연구 중`,remaining:`남은 시간`,cancel:`취소`,cancelBuild:`건설 취소`,cancelResearch:`연구 취소`,confirmCancel:`취소하시겠습니까? 자원의 50%가 환불됩니다.`,level:`레벨`,upgradeToLevel:`레벨로 업그레이드`},overview:{title:`행성 개요`,resourceOverview:`자원 개요`,fleetInfo:`함대`,currentShips:`현재 행성의 함선 수`,productionSources:`생산 소스`,productionSourcesDesc:`상세 자원 생산 및 보너스 정보`,consumptionSources:`소비 소스`,consumptionSourcesDesc:`건물 에너지 소비 세부 정보`,totalProduction:`총 생산량`,totalConsumption:`총 소비량`,noConsumption:`에너지 소비 없음`},buildingsView:{title:`건물`,usedSpace:`사용된 공간`,spaceUsage:`공간 사용`,level:`레벨`,upgradeCost:`업그레이드 비용`,buildTime:`건설 시간`,upgrade:`업그레이드`,maxLevelReached:`최대 레벨 도달`,requirementsNotMet:`요구 사항 미충족`,upgradeFailed:`업그레이드 실패`,upgradeFailedMessage:`자원이 충분한지, 공간이 충분한지, 또는 다른 건설 작업이 있는지 확인하세요.`,demolish:`철거`,demolishRefund:`철거 환불`,demolishFailed:`철거 실패`,demolishFailedMessage:`이 건물을 철거할 수 없습니다. 건설 대기열이 가득 찼거나 건물 레벨이 0인지 확인하세요.`},researchView:{title:`연구`,researchCost:`연구 비용`,research:`연구`,maxLevelReached:`최대 레벨 도달`,researchFailed:`연구 실패`,researchFailedMessage:`자원이 충분한지, 전제 조건이 충족되었는지, 또는 다른 연구 작업이 있는지 확인하세요.`},shipyard:{attack:`공격력`,shield:`쉴드`,armor:`장갑`,speed:`속도`,cargoCapacity:`화물 용량`,fuelConsumption:`연료 소비`,buildCost:`건설 비용`,buildTime:`건설 시간`,perUnit:`단위당`,batchCalculator:`일괄 계산기`,quantity:`수량`,totalCost:`총 비용`,totalTime:`총 시간`},shipyardView:{title:`조선소`,fleetStorage:`함대 저장소`,attack:`공격력`,shield:`실드`,speed:`속도`,cargoCapacity:`적재량`,unitCost:`단위 비용`,buildQuantity:`건조 수량`,totalCost:`총 비용`,build:`건조`,inputError:`입력 오류`,inputErrorMessage:`건조 수량을 입력하세요!`,buildFailed:`건조 실패`,buildFailedMessage:`자원이 충분한지 또는 전제 조건이 충족되었는지 확인하세요.`},defense:{attack:`공격력`,shield:`쉴드`,armor:`장갑`,buildCost:`건설 비용`,buildTime:`건설 시간`,perUnit:`단위당`,batchCalculator:`일괄 계산기`,quantity:`수량`,totalCost:`총 비용`,totalTime:`총 시간`},defenseView:{title:`방어 시설`,attack:`공격력`,shield:`실드`,armor:`장갑`,buildTime:`건설 시간`,seconds:`초`,unitCost:`단위 비용`,buildQuantity:`건조 수량`,totalCost:`총 비용`,build:`건조`,shieldDomeBuilt:`실드 돔이 이미 건설됨`,inputError:`입력 오류`,inputErrorMessage:`건조 수량을 입력하세요!`,buildFailed:`건조 실패`,buildFailedMessage:`자원이 충분한지 또는 전제 조건이 충족되었는지 확인하세요. 실드 돔은 하나만 건설할 수 있습니다.`},fleetView:{title:`함대 관리`,fleetOverview:`함대 개요`,sendFleet:`함대 파견`,flightMissions:`비행 임무`,currentPlanetFleet:`현재 행성 함대`,attack:`공격`,shield:`실드`,armor:`장갑`,speed:`속도`,cargo:`화물`,selectFleet:`함대 선택`,selectFleetDescription:`파견할 함선 수 선택`,available:`사용 가능`,all:`전체`,targetCoordinates:`목표 좌표`,galaxy:`은하계`,system:`행성계`,position:`위치`,missionType:`임무 유형`,missionInfo:`임무 정보`,fuelConsumption:`연료 소비`,flightTime:`비행 시간`,attackMission:`공격`,transport:`수송`,colonize:`식민`,spy:`정찰`,deploy:`배치`,recycle:`회수`,transportResources:`자원 수송`,totalCargoCapacity:`총 적재량`,used:`사용됨`,noFlightMissions:`비행 임무 없음`,outbound:`이동 중`,returning:`귀환 중`,fleetComposition:`함대 구성`,carryingResources:`운반 자원`,arrivalTime:`도착 시간`,returnTime:`귀환 시간`,recallFleet:`함대 소환`,sendFailed:`파견 실패`,sendFailedMessage:`함대 수, 연료 충분 여부 또는 적재량 한계를 확인하세요.`,recallFailed:`소환 실패`,recallFailedMessage:`이 임무는 소환할 수 없습니다.`,unknownPlanet:`알 수 없는 행성`,fleetMissionSlots:`함대 임무 슬롯`,noShipsSelected:`선택된 함선 없음`,cannotSendToOwnPlanet:`자신의 행성으로 함대를 파견할 수 없습니다`,cargoExceedsCapacity:`적재량이 용량을 초과합니다`,noColonyShip:`식민 임무를 위해 식민선이 필요합니다`,noDebrisAtTarget:`대상 좌표에 잔해장이 없거나 잔해장이 비어 있습니다`},officersView:{title:`장교`,activated:`활성화됨`,inactive:`비활성`,activeStatus:`활성 상태`,expirationTime:`만료 시간`,remainingTime:`남은 시간`,recruitCost:`모집 비용`,days:`일`,benefitsBonus:`효과 보너스`,resourceProduction:`자원 생산량`,darkMatterProduction:`암흑 물질 생산량`,energyProduction:`에너지 생산량`,buildingSpeed:`건설 속도`,researchSpeed:`연구 속도`,fleetSpeed:`함대 속도`,fuelConsumption:`연료 소비`,defense:`방어력`,storageCapacity:`저장 용량`,buildQueue:`건설 대기열`,fleetSlots:`함대 슬롯`,hire:`고용`,renew:`갱신`,dismiss:`해고`,hireTitle:`장교 고용`,hireMessage:`{name}을(를) 고용하시겠습니까? 유효 기간은 7일입니다.`,renewTitle:`장교 갱신`,renewMessage:`{name}을(를) 7일간 갱신하시겠습니까?`,dismissTitle:`장교 해고`,dismissMessage:`{name}을(를) 해고하시겠습니까? 비용은 환불되지 않습니다.`,hireFailed:`고용 실패`,renewFailed:`갱신 실패`,insufficientResources:`자원 부족!`},galaxyView:{title:`은하계`,selectCoordinates:`좌표 선택`,galaxy:`은하계`,selectGalaxy:`은하계 선택`,system:`행성계`,selectSystem:`행성계 선택`,view:`보기`,myPlanet:`내 행성`,totalPositions:`총 10개 행성 위치`,mine:`내 것`,hostile:`적대`,emptySlot:`빈 자리 - 식민 가능`,scout:`정찰`,attack:`공격`,colonize:`식민`,switch:`전환`,recycle:`회수`,debrisField:`잔해 필드`,scoutPlanetTitle:`행성 정찰`,attackPlanetTitle:`행성 공격`,colonizePlanetTitle:`행성 식민`,recyclePlanetTitle:`잔해 회수`,scoutPlanetMessage:`행성 [{coordinates}]을(를) 정찰하기 위해 정찰기를 보내시겠습니까? + +함대 페이지로 이동하여 함선을 선택하고 파견하세요.`,attackPlanetMessage:`행성 [{coordinates}]을(를) 공격하시겠습니까? + +함대 페이지로 이동하여 함선을 선택하고 파견하세요.`,colonizePlanetMessage:`위치 [{coordinates}]을(를) 식민하시겠습니까? + +함대 페이지로 이동하여 식민선을 파견하세요.`,recyclePlanetMessage:`위치 [{coordinates}]의 잔해를 회수하시겠습니까? + +함대 페이지로 이동하여 회수선을 파견하세요.`},messagesView:{title:`메시지 센터`,battles:`전투`,spy:`정찰`,battleReports:`전투 보고서`,spyReports:`정찰 보고서`,noBattleReports:`전투 보고서 없음`,noSpyReports:`정찰 보고서 없음`,battleReport:`전투 보고서`,spyReport:`정찰 보고서`,victory:`승리`,defeat:`패배`,draw:`무승부`,attackerFleet:`공격자 함대`,defenderFleet:`방어자 함대`,defenderDefense:`방어자 방어`,attackerLosses:`공격자 손실`,defenderLosses:`방어자 손실`,noLosses:`손실 없음`,plunder:`약탈 자원`,debrisField:`잔해장`,resources:`자원`,fleet:`함대`,defense:`방어`,buildings:`건물`,unread:`읽지 않음`,targetPlanet:`목표 행성`,attackerRemaining:`공격자 잔여`,defenderRemaining:`방어자 잔여`,moonChance:`위성 생성 확률`,showRoundDetails:`라운드 상세 표시`,hideRoundDetails:`라운드 상세 숨기기`,round:`제{round}라운드`,attackerRemainingPower:`공격자 잔여 화력`,defenderRemainingPower:`방어자 잔여 화력`},simulatorView:{title:`전투 시뮬레이터`,attacker:`공격자`,defender:`방어자`,attackerConfig:`공격자 설정`,attackerConfigDesc:`공격자의 함대와 기술 레벨 설정`,defenderConfig:`방어자 설정`,defenderConfigDesc:`방어자의 함대, 방어 및 기술 레벨 설정`,fleet:`함대`,defenseStructures:`방어 시설`,techLevels:`기술 레벨`,weapon:`무기`,shield:`실드`,armor:`장갑`,defenderResources:`방어자 자원 (약탈 계산용)`,startSimulation:`시뮬레이션 시작`,reset:`초기화`,battleResult:`전투 결과`,attackerVictory:`공격자 승리`,defenderVictory:`방어자 승리`,draw:`무승부`,afterRounds:`{rounds}회 전투 후`,attackerLosses:`공격자 손실`,defenderLosses:`방어자 손실`,noLosses:`손실 없음`,attackerRemaining:`공격자 잔여`,defenderRemaining:`방어자 잔여`,allDestroyed:`모두 파괴됨`,plunderableResources:`약탈 가능 자원`,debrisField:`잔해장`,moonChance:`위성 생성 확률`,showRoundDetails:`라운드 상세 표시`,hideRoundDetails:`라운드 상세 숨기기`,round:`제 {round} 라운드`,attackerRemainingPower:`공격자 잔여 화력`,defenderRemainingPower:`방어자 잔여 화력`},settings:{dataManagement:`데이터 관리`,dataManagementDesc:`게임 데이터 내보내기, 가져오기 또는 지우기`,exportData:`데이터 내보내기`,exportDataDesc:`게임 진행 상황을 JSON 파일로 내보내기`,export:`내보내기`,exporting:`내보내는 중...`,exportSuccess:`내보내기 성공`,exportFailed:`내보내기 실패, 다시 시도해주세요`,importData:`데이터 가져오기`,importDataDesc:`JSON 파일에서 게임 진행 상황 복원`,selectFile:`파일 선택`,importSuccess:`가져오기 성공`,importConfirmTitle:`가져오기 확인`,importConfirmMessage:`가져오기를 하면 현재 게임 진행 상황이 덮어쓰기됩니다. 이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?`,importFailed:`가져오기 실패, 파일 형식을 확인해주세요`,clearData:`데이터 지우기`,clearDataDesc:`모든 게임 데이터 삭제 및 초기화`,clear:`지우기`,clearConfirmTitle:`데이터 지우기 확인`,clearConfirmMessage:`모든 게임 데이터가 삭제되고 처음부터 시작됩니다. 이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?`,gameSettings:`게임 설정`,gameSettingsDesc:`게임 매개변수 및 설정 조정`,gamePause:`게임 일시정지`,gamePauseDesc:`게임 시간 및 자원 생산 일시정지 또는 재개`,pause:`일시정지`,resume:`재개`,gamePaused:`게임이 일시정지되었습니다`,gameResumed:`게임이 재개되었습니다`,playerName:`플레이어 이름`,gameSpeed:`게임 속도`,gameSpeedDesc:`현재 게임 속도 배율`,about:`정보`,version:`버전`,buildDate:`빌드 날짜`,community:`커뮤니티`,github:`GitHub 저장소`,qqGroup:`QQ 그룹`},gmView:{title:`GM 제어판`,adminOnly:`관리자 전용`,selectPlanet:`행성 선택`,choosePlanet:`행성을 선택하세요`,resources:`자원`,buildings:`건물`,research:`연구`,ships:`함선`,defense:`방어`,officers:`장교`,modifyResources:`자원 수정`,resourcesDesc:`행성 자원을 빠르게 수정`,modifyBuildings:`건물 수정`,buildingsDesc:`건물 레벨을 빠르게 설정`,modifyResearch:`연구 수정`,researchDesc:`연구 레벨을 빠르게 설정`,modifyShips:`함선 수정`,shipsDesc:`함선 수량을 빠르게 설정`,modifyDefense:`방어 수정`,defenseDesc:`방어 수량을 빠르게 설정`,modifyOfficers:`장교 수정`,officersDesc:`장교 만료 시간을 빠르게 설정`,days:`일`,dangerZone:`위험 구역`,dangerZoneDesc:`다음 작업은 되돌릴 수 없습니다`,resetGame:`게임 초기화`,resetGameConfirm:`게임을 초기화하시겠습니까? 모든 데이터가 삭제됩니다!`}},o={common:{confirm:`確認`,cancel:`キャンセル`,delete:`削除`,edit:`編集`,save:`保存`,close:`閉じる`,back:`戻る`,next:`次へ`,previous:`前へ`,submit:`送信`,reset:`リセット`,search:`検索`,filter:`フィルター`,loading:`読み込み中...`,noData:`データなし`,error:`エラー`,success:`成功`,warning:`警告`,info:`情報`,resourceType:`資源タイプ`,playerName:`司令官`,timeHour:`時間`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`機能がロックされています`,unlockRequired:`建物が必要です`,requiredBuilding:`必要な建物`,currentLevel:`現在のレベル`,goToBuildings:`建物へ移動`,locked:`ロック済み`,viewRequirements:`必要条件を表示`,requirementsNotMet:`必要条件が満たされていません`,current:`現在`,level:`レベル`},errors:{requirementsNotMet:`前提条件を満たしていません`,insufficientResources:`資源が不足しています`,insufficientFleetStorage:`艦隊ストレージが不足しています`,shieldDomeLimit:`シールドドームの上限に達しました`,fleetMissionsFull:`艦隊ミッションスロットが満杯です`,insufficientFleet:`艦隊が不足しています`,insufficientFuel:`燃料が不足しています`,planetOnly:`この建物は惑星でのみ建設できます`,moonOnly:`この建物は月でのみ建設できます`,buildQueueFull:`建設キューが満杯です`,insufficientSpace:`スペースが不足しています`,buildingLevelZero:`建物レベルが0のため、解体できません`,researchQueueFull:`研究キューが満杯です`,moonExists:`月は既に存在します`,insufficientDebris:`残骸フィールドが不足しています`},nav:{overview:`概要`,buildings:`建物`,research:`研究`,shipyard:`造船所`,defense:`防衛`,fleet:`艦隊`,officers:`士官`,simulator:`シミュレーター`,galaxy:`銀河`,messages:`メッセージ`,settings:`設定`,gm:`GM`},sidebar:{language:`言語`,lightMode:`ライトモード`,darkMode:`ダークモード`,collapse:`メニューを閉じる`,expand:`メニューを開く`},resources:{metal:`金属`,crystal:`クリスタル`,deuterium:`重水素`,darkMatter:`ダークマター`,energy:`エネルギー`,production:`生産量`,consumption:`消費量`,capacity:`容量`,current:`現在の貯蔵量`,max:`最大容量`,perHour:`時間`,perMinute:`分`,hour:`時間`,noEnergy:`エネルギー不足`},planet:{planet:`惑星`,moon:`月`,colony:`コロニー`,position:`位置`,coordinates:`座標`,switchToMoon:`月を表示`,backToPlanet:`母星に戻る`,fields:`フィールド`,temperature:`温度`,homePlanet:`母星`,planetPrefix:`惑星`,moonSuffix:`の月`,colonyPrefix:`コロニー`},player:{points:`総ポイント`},buildings:{metalMine:`金属鉱山`,crystalMine:`クリスタル鉱山`,deuteriumSynthesizer:`重水素合成装置`,solarPlant:`太陽光発電所`,roboticsFactory:`ロボット工場`,naniteFactory:`ナノマシン工場`,shipyard:`造船所`,researchLab:`研究所`,metalStorage:`金属倉庫`,crystalStorage:`クリスタル倉庫`,deuteriumTank:`重水素タンク`,darkMatterCollector:`ダークマター採取装置`,terraformer:`テラフォーマー`,lunarBase:`月面基地`,sensorPhalanx:`センサーファランクス`,jumpGate:`ジャンプゲート`,planetDestroyerFactory:`惑星破壊工場`,buildTime:`建設時間`,production:`生産量`,consumption:`消費`,totalCost:`総コスト`,totalPoints:`総ポイント`,levelRange:`レベル範囲`},buildingDescriptions:{metalMine:`金属資源を採掘`,crystalMine:`クリスタル資源を採掘`,deuteriumSynthesizer:`重水素資源を合成`,solarPlant:`エネルギーを供給`,roboticsFactory:`建設速度を向上`,naniteFactory:`建設キュー数を増加、レベル毎に+1(最大10レベル)`,shipyard:`艦船を建造`,researchLab:`技術を研究`,metalStorage:`金属の貯蔵上限を増加`,crystalStorage:`クリスタルの貯蔵上限を増加`,deuteriumTank:`重水素の貯蔵上限を増加`,darkMatterCollector:`希少なダークマター資源を収集`,terraformer:`惑星地形を改造、レベル毎に利用可能スペース5増加`,lunarBase:`月の利用可能スペースを増加、レベル毎に+5スペース`,sensorPhalanx:`周辺星系の艦隊活動を探知`,jumpGate:`他の月へ艦隊を瞬間移動`,planetDestroyerFactory:`惑星を破壊できる究極兵器を建造`},ships:{lightFighter:`軽戦闘機`,heavyFighter:`重戦闘機`,cruiser:`巡洋艦`,battleship:`戦艦`,smallCargo:`小型輸送船`,largeCargo:`大型輸送船`,colonyShip:`コロニーシップ`,recycler:`リサイクラー`,espionageProbe:`スパイプローブ`,darkMatterHarvester:`ダークマター採取船`,deathstar:`デススター`},shipDescriptions:{lightFighter:`基本戦闘ユニット`,heavyFighter:`重装甲戦闘機`,cruiser:`中型戦艦、攻守バランス型`,battleship:`強力な戦艦`,smallCargo:`少量の資源を輸送`,largeCargo:`大量の資源を輸送`,colonyShip:`新惑星の植民に使用`,recycler:`デブリフィールドの資源を回収`,espionageProbe:`敵惑星を偵察`,darkMatterHarvester:`ダークマター採取専用の特殊艦`,deathstar:`惑星全体を破壊できる究極兵器`},defenses:{rocketLauncher:`ロケットランチャー`,lightLaser:`ライトレーザー`,heavyLaser:`ヘビーレーザー`,gaussCannon:`ガウスキャノン`,ionCannon:`イオンキャノン`,plasmaTurret:`プラズマタレット`,smallShieldDome:`小型シールドドーム`,largeShieldDome:`大型シールドドーム`,planetaryShield:`惑星シールド`},defenseDescriptions:{rocketLauncher:`基本防衛施設`,lightLaser:`軽量エネルギー兵器`,heavyLaser:`重型エネルギー兵器`,gaussCannon:`高速運動エネルギー兵器`,ionCannon:`シールド破壊に効果的`,plasmaTurret:`強力な防衛施設`,smallShieldDome:`惑星全体を保護する小型シールド`,largeShieldDome:`惑星全体を保護する大型シールド`,planetaryShield:`破壊攻撃から惑星を保護する超級シールド`},research:{researchTime:`研究時間`,totalCost:`総コスト`,totalPoints:`総ポイント`,levelRange:`レベル範囲`},technologies:{energyTechnology:`エネルギー技術`,laserTechnology:`レーザー技術`,ionTechnology:`イオン技術`,hyperspaceTechnology:`ハイパースペース技術`,plasmaTechnology:`プラズマ技術`,computerTechnology:`コンピューター技術`,combustionDrive:`燃焼ドライブ`,impulseDrive:`インパルスドライブ`,hyperspaceDrive:`ハイパースペースドライブ`,darkMatterTechnology:`ダークマター技術`,terraformingTechnology:`テラフォーミング技術`,planetDestructionTech:`惑星破壊技術`},technologyDescriptions:{energyTechnology:`エネルギー利用効率を向上`,laserTechnology:`レーザー兵器と防衛の基礎`,ionTechnology:`イオン兵器技術`,hyperspaceTechnology:`ハイパースペースジャンプ技術`,plasmaTechnology:`プラズマ兵器技術`,computerTechnology:`研究キュー数を増加、レベル毎に+1(最大10レベル)`,combustionDrive:`基本推進技術`,impulseDrive:`中級推進技術`,hyperspaceDrive:`高級推進技術`,darkMatterTechnology:`ダークマターの性質と応用を研究`,terraformingTechnology:`惑星地形改造技術を研究、レベル毎に全惑星の利用可能スペース3増加`,planetDestructionTech:`惑星全体を破壊する恐怖の技術を研究`},officers:{commander:`司令官`,admiral:`提督`,engineer:`エンジニア`,geologist:`地質学者`,technocrat:`技術専門家`,darkMatterSpecialist:`ダークマター専門家`,resourceBonus:`資源生産ボーナス`,darkMatterBonus:`ダークマター生産ボーナス`,energyBonus:`エネルギー生産ボーナス`},officerDescriptions:{commander:`建設速度と管理能力を向上`,admiral:`艦隊戦闘力と速度を向上`,engineer:`エネルギーと防御力を向上`,geologist:`資源生産量を向上`,technocrat:`研究速度と偵察能力を向上`,darkMatterSpecialist:`ダークマター採取効率を向上`},queue:{buildQueue:`建設キュー`,researchQueue:`研究キュー`,building:`建設中`,researching:`研究中`,remaining:`残り時間`,cancel:`キャンセル`,cancelBuild:`建設キャンセル`,cancelResearch:`研究キャンセル`,confirmCancel:`キャンセルしますか?資源の50%が返還されます。`,level:`レベル`,upgradeToLevel:`レベルにアップグレード`},shipyard:{attack:`攻撃力`,shield:`シールド`,armor:`装甲`,speed:`速度`,cargoCapacity:`貨物容量`,fuelConsumption:`燃料消費`,buildCost:`建設コスト`,buildTime:`建設時間`,perUnit:`ユニットあたり`,batchCalculator:`一括計算機`,quantity:`数量`,totalCost:`総コスト`,totalTime:`総時間`},overview:{title:`惑星概要`,resourceOverview:`資源概要`,fleetInfo:`艦隊`,currentShips:`現在の惑星の艦船数`,productionSources:`生産源`,productionSourcesDesc:`詳細な資源生産とボーナス情報`,consumptionSources:`消費源`,consumptionSourcesDesc:`建物のエネルギー消費詳細`,totalProduction:`総生産量`,totalConsumption:`総消費量`,noConsumption:`エネルギー消費なし`},buildingsView:{title:`建物`,usedSpace:`使用済みスペース`,spaceUsage:`スペース使用量`,level:`レベル`,upgradeCost:`アップグレードコスト`,buildTime:`建設時間`,upgrade:`アップグレード`,maxLevelReached:`最大レベルに達しました`,requirementsNotMet:`要件が満たされていません`,upgradeFailed:`アップグレード失敗`,upgradeFailedMessage:`資源が十分か、スペースが十分か、または他の建設タスクがないか確認してください。`,demolish:`解体`,demolishRefund:`解体返還`,demolishFailed:`解体失敗`,demolishFailedMessage:`この建物を解体できません。建設キューが満杯か、建物レベルが0でないか確認してください。`},researchView:{title:`研究`,researchCost:`研究コスト`,research:`研究`,maxLevelReached:`最大レベルに達しました`,researchFailed:`研究失敗`,researchFailedMessage:`資源が十分か、前提条件が満たされているか、または他の研究タスクがないか確認してください。`},defense:{attack:`攻撃力`,shield:`シールド`,armor:`装甲`,buildCost:`建設コスト`,buildTime:`建設時間`,perUnit:`ユニットあたり`,batchCalculator:`一括計算機`,quantity:`数量`,totalCost:`総コスト`,totalTime:`総時間`},shipyardView:{title:`造船所`,fleetStorage:`艦隊ストレージ`,attack:`攻撃力`,shield:`シールド`,speed:`速度`,cargoCapacity:`積載量`,unitCost:`ユニットコスト`,buildQuantity:`建造数`,totalCost:`総コスト`,build:`建造`,inputError:`入力エラー`,inputErrorMessage:`建造数を入力してください!`,buildFailed:`建造失敗`,buildFailedMessage:`資源が十分か、前提条件が満たされているか確認してください。`},defenseView:{title:`防衛施設`,attack:`攻撃力`,shield:`シールド`,armor:`装甲`,buildTime:`建設時間`,seconds:`秒`,unitCost:`ユニットコスト`,buildQuantity:`建造数`,totalCost:`総コスト`,build:`建造`,shieldDomeBuilt:`シールドドーム建設済み`,inputError:`入力エラー`,inputErrorMessage:`建造数を入力してください!`,buildFailed:`建造失敗`,buildFailedMessage:`資源が十分か、前提条件が満たされているか確認してください。シールドドームは1つのみ建設できます。`},fleetView:{title:`艦隊管理`,fleetOverview:`艦隊概要`,sendFleet:`艦隊派遣`,flightMissions:`飛行ミッション`,currentPlanetFleet:`現在の惑星艦隊`,attack:`攻撃`,shield:`シールド`,armor:`装甲`,speed:`速度`,cargo:`貨物`,selectFleet:`艦隊選択`,selectFleetDescription:`派遣する艦船数を選択`,available:`利用可能`,all:`全て`,targetCoordinates:`目標座標`,galaxy:`銀河`,system:`星系`,position:`位置`,missionType:`ミッションタイプ`,missionInfo:`ミッション情報`,fuelConsumption:`燃料消費`,flightTime:`飛行時間`,attackMission:`攻撃`,transport:`輸送`,colonize:`植民`,spy:`偵察`,deploy:`配備`,recycle:`回収`,transportResources:`資源輸送`,totalCargoCapacity:`総積載量`,used:`使用済み`,noFlightMissions:`飛行ミッションなし`,outbound:`往路`,returning:`帰路`,fleetComposition:`艦隊構成`,carryingResources:`運搬資源`,arrivalTime:`到着時刻`,returnTime:`帰還時刻`,recallFleet:`艦隊召還`,sendFailed:`派遣失敗`,sendFailedMessage:`艦隊数、燃料の充足、または積載量の制限を確認してください。`,recallFailed:`召還失敗`,recallFailedMessage:`このミッションは召還できません。`,unknownPlanet:`未知の惑星`,fleetMissionSlots:`艦隊ミッションスロット`,noShipsSelected:`艦船が選択されていません`,cannotSendToOwnPlanet:`自分の惑星に艦隊を派遣できません`,cargoExceedsCapacity:`積載量が容量を超えています`,noColonyShip:`植民ミッションにはコロニーシップが必要です`,noDebrisAtTarget:`目標座標にデブリフィールドがないか、デブリフィールドが空です`},officersView:{title:`士官`,activated:`アクティブ`,inactive:`非アクティブ`,activeStatus:`アクティブ状態`,expirationTime:`期限切れ時刻`,remainingTime:`残り時間`,recruitCost:`募集コスト`,days:`日`,benefitsBonus:`効果ボーナス`,resourceProduction:`資源生産量`,darkMatterProduction:`ダークマター生産量`,energyProduction:`エネルギー生産量`,buildingSpeed:`建設速度`,researchSpeed:`研究速度`,fleetSpeed:`艦隊速度`,fuelConsumption:`燃料消費`,defense:`防御力`,storageCapacity:`貯蔵容量`,buildQueue:`建設キュー`,fleetSlots:`艦隊スロット`,hire:`雇用`,renew:`更新`,dismiss:`解雇`,hireTitle:`士官雇用`,hireMessage:`{name}を雇用しますか?有効期限は7日間です。`,renewTitle:`士官更新`,renewMessage:`{name}を7日間更新しますか?`,dismissTitle:`士官解雇`,dismissMessage:`{name}を解雇しますか?費用は返金されません。`,hireFailed:`雇用失敗`,renewFailed:`更新失敗`,insufficientResources:`資源不足!`},galaxyView:{title:`銀河`,selectCoordinates:`座標選択`,galaxy:`銀河`,selectGalaxy:`銀河を選択`,system:`星系`,selectSystem:`星系を選択`,view:`表示`,myPlanet:`自分の惑星`,totalPositions:`全10惑星位置`,mine:`自分`,hostile:`敵対`,emptySlot:`空き - 植民可能`,scout:`偵察`,attack:`攻撃`,colonize:`植民`,switch:`切り替え`,recycle:`回収`,debrisField:`デブリフィールド`,scoutPlanetTitle:`惑星偵察`,attackPlanetTitle:`惑星攻撃`,colonizePlanetTitle:`惑星植民`,recyclePlanetTitle:`デブリ回収`,scoutPlanetMessage:`惑星[{coordinates}]にスパイプローブを送りますか? + +艦隊ページに移動して艦船を選択して派遣してください。`,attackPlanetMessage:`惑星[{coordinates}]を攻撃しますか? + +艦隊ページに移動して艦船を選択して派遣してください。`,colonizePlanetMessage:`位置[{coordinates}]を植民しますか? + +艦隊ページに移動してコロニーシップを派遣してください。`,recyclePlanetMessage:`位置[{coordinates}]のデブリを回収しますか? + +艦隊ページに移動してリサイクラーを派遣してください。`},messagesView:{title:`メッセージセンター`,battles:`戦闘`,spy:`スパイ`,battleReports:`戦闘レポート`,spyReports:`スパイレポート`,noBattleReports:`戦闘レポートなし`,noSpyReports:`スパイレポートなし`,battleReport:`戦闘レポート`,spyReport:`スパイレポート`,victory:`勝利`,defeat:`敗北`,draw:`引き分け`,attackerFleet:`攻撃側艦隊`,defenderFleet:`防御側艦隊`,defenderDefense:`防御側防衛`,attackerLosses:`攻撃側損失`,defenderLosses:`防御側損失`,noLosses:`損失なし`,plunder:`略奪資源`,debrisField:`デブリフィールド`,resources:`資源`,fleet:`艦隊`,defense:`防衛`,buildings:`建物`,unread:`未読`,targetPlanet:`目標惑星`,attackerRemaining:`攻撃側残存`,defenderRemaining:`防御側残存`,moonChance:`月生成確率`,showRoundDetails:`ラウンド詳細表示`,hideRoundDetails:`ラウンド詳細非表示`,round:`第{round}ラウンド`,attackerRemainingPower:`攻撃側残存火力`,defenderRemainingPower:`防御側残存火力`},simulatorView:{title:`戦闘シミュレーター`,attacker:`攻撃側`,defender:`防御側`,attackerConfig:`攻撃側設定`,attackerConfigDesc:`攻撃側の艦隊と技術レベルを設定`,defenderConfig:`防御側設定`,defenderConfigDesc:`防御側の艦隊、防衛、技術レベルを設定`,fleet:`艦隊`,defenseStructures:`防衛施設`,techLevels:`技術レベル`,weapon:`武器`,shield:`シールド`,armor:`装甲`,defenderResources:`防御側資源(略奪計算用)`,startSimulation:`シミュレーション開始`,reset:`リセット`,battleResult:`戦闘結果`,attackerVictory:`攻撃側勝利`,defenderVictory:`防御側勝利`,draw:`引き分け`,afterRounds:`{rounds}ラウンド後`,attackerLosses:`攻撃側損失`,defenderLosses:`防御側損失`,noLosses:`損失なし`,attackerRemaining:`攻撃側残存`,defenderRemaining:`防御側残存`,allDestroyed:`全て破壊`,plunderableResources:`略奪可能資源`,debrisField:`デブリフィールド`,moonChance:`月生成確率`,showRoundDetails:`ラウンド詳細表示`,hideRoundDetails:`ラウンド詳細非表示`,round:`第{round}ラウンド`,attackerRemainingPower:`攻撃側残存火力`,defenderRemainingPower:`防御側残存火力`},settings:{dataManagement:`データ管理`,dataManagementDesc:`ゲームデータのエクスポート、インポート、またはクリア`,exportData:`データエクスポート`,exportDataDesc:`ゲームの進行状況をJSONファイルとしてエクスポート`,export:`エクスポート`,exporting:`エクスポート中...`,exportSuccess:`エクスポート成功`,exportFailed:`エクスポートに失敗しました。もう一度お試しください`,importData:`データインポート`,importDataDesc:`JSONファイルからゲームの進行状況を復元`,selectFile:`ファイルを選択`,importSuccess:`インポート成功`,importConfirmTitle:`インポート確認`,importConfirmMessage:`インポートすると現在のゲームの進行状況が上書きされます。この操作は元に戻せません。続行しますか?`,importFailed:`インポートに失敗しました。ファイル形式を確認してください`,clearData:`データクリア`,clearDataDesc:`すべてのゲームデータを削除してリセット`,clear:`クリア`,clearConfirmTitle:`データクリア確認`,clearConfirmMessage:`すべてのゲームデータが削除され、最初からやり直します。この操作は元に戻せません。続行しますか?`,gameSettings:`ゲーム設定`,gameSettingsDesc:`ゲームパラメータと設定を調整`,gamePause:`ゲーム一時停止`,gamePauseDesc:`ゲーム時間と資源生産を一時停止または再開`,pause:`一時停止`,resume:`再開`,gamePaused:`ゲームを一時停止しました`,gameResumed:`ゲームを再開しました`,playerName:`プレイヤー名`,gameSpeed:`ゲーム速度`,gameSpeedDesc:`現在のゲーム速度倍率`,about:`について`,version:`バージョン`,buildDate:`ビルド日`,community:`コミュニティ`,github:`GitHubリポジトリ`,qqGroup:`QQグループ`},gmView:{title:`GMコントロールパネル`,adminOnly:`管理者専用`,selectPlanet:`惑星を選択`,choosePlanet:`惑星を選択してください`,resources:`資源`,buildings:`建物`,research:`研究`,ships:`艦船`,defense:`防衛`,officers:`士官`,modifyResources:`資源を変更`,resourcesDesc:`惑星の資源を素早く変更`,modifyBuildings:`建物を変更`,buildingsDesc:`建物レベルを素早く設定`,modifyResearch:`研究を変更`,researchDesc:`研究レベルを素早く設定`,modifyShips:`艦船を変更`,shipsDesc:`艦船数を素早く設定`,modifyDefense:`防衛を変更`,defenseDesc:`防衛数を素早く設定`,modifyOfficers:`士官を変更`,officersDesc:`士官の有効期限を素早く設定`,days:`日`,dangerZone:`危険ゾーン`,dangerZoneDesc:`以下の操作は元に戻せません`,resetGame:`ゲームをリセット`,resetGameConfirm:`ゲームをリセットしてもよろしいですか?すべてのデータが削除されます!`}};const s={"zh-CN":e,"zh-TW":t,en:n,de:r,ru:i,ko:a,ja:o},c={"zh-CN":`简体中文`,"zh-TW":`繁體中文`,en:`English`,de:`Deutsch`,ru:`Русский`,ko:`한국어`,ja:`日本語`},l=()=>{let e=(navigator.language||navigator.languages&&navigator.languages[0]||`zh-CN`).toLowerCase();return e.startsWith(`zh-tw`)||e.startsWith(`zh-hant`)||e.startsWith(`zh-hk`)||e.startsWith(`zh-mo`)?`zh-TW`:e.startsWith(`zh`)?`zh-CN`:e.startsWith(`ja`)?`ja`:e.startsWith(`ko`)?`ko`:e.startsWith(`en`)?`en`:e.startsWith(`de`)?`de`:e.startsWith(`ru`)?`ru`:`zh-CN`};export{c as n,s as r,l as t}; \ No newline at end of file diff --git a/docs/assets/game-logic-CfBcTF_c.js b/docs/assets/game-logic-CfBcTF_c.js new file mode 100644 index 0000000..0b4f3f9 --- /dev/null +++ b/docs/assets/game-logic-CfBcTF_c.js @@ -0,0 +1,3 @@ +import{r as e}from"./rolldown-runtime-tX5UdD3f.js";import{a as t,c as n,d as r,h as i,i as a,l as o,m as s,n as c,o as l,p as u,r as d,s as f,t as p,u as m}from"./game-config-D-D7cMgJ.js";function h(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var g={},_=[],v=()=>{},y=()=>!1,b=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),x=e=>e.startsWith(`onUpdate:`),S=Object.assign,C=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},w=Object.prototype.hasOwnProperty,T=(e,t)=>w.call(e,t),E=Array.isArray,D=e=>ae(e)===`[object Map]`,ee=e=>ae(e)===`[object Set]`,te=e=>ae(e)===`[object Date]`,ne=e=>ae(e)===`[object RegExp]`,O=e=>typeof e==`function`,k=e=>typeof e==`string`,re=e=>typeof e==`symbol`,A=e=>typeof e==`object`&&!!e,j=e=>(A(e)||O(e))&&O(e.then)&&O(e.catch),ie=Object.prototype.toString,ae=e=>ie.call(e),oe=e=>ae(e).slice(8,-1),se=e=>ae(e)===`[object Object]`,ce=e=>k(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,le=h(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ue=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},de=/-\w/g,M=ue(e=>e.replace(de,e=>e.slice(1).toUpperCase())),fe=/\B([A-Z])/g,N=ue(e=>e.replace(fe,`-$1`).toLowerCase()),pe=ue(e=>e.charAt(0).toUpperCase()+e.slice(1)),me=ue(e=>e?`on${pe(e)}`:``),P=(e,t)=>!Object.is(e,t),he=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},_e=e=>{let t=parseFloat(e);return isNaN(t)?e:t},ve=e=>{let t=k(e)?Number(e):NaN;return isNaN(t)?e:t},ye,be=()=>ye||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{},xe=h(`Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol`);function Se(e){if(E(e)){let t={};for(let n=0;n{if(e){let n=e.split(we);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function De(e){let t=``;if(k(e))t=e;else if(E(e))for(let n=0;nNe(e,t))}var Fe=e=>!!(e&&e.__v_isRef===!0),Ie=e=>k(e)?e:e==null?``:E(e)||A(e)&&(e.toString===ie||!O(e.toString))?Fe(e)?Ie(e.value):JSON.stringify(e,Le,2):String(e),Le=(e,t)=>Fe(t)?Le(e,t.value):D(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Re(t,r)+` =>`]=n,e),{})}:ee(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Re(e))}:re(t)?Re(t):A(t)&&!E(t)&&!se(t)?String(t):t,Re=(e,t=``)=>re(e)?`Symbol(${e.description??t})`:e;function ze(e){return e==null?`initial`:typeof e==`string`?e===``?` `:e:String(e)}var F,Be=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=F,!e&&F&&(this.index=(F.scopes||=[]).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0&&--this._on===0&&(F=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Je){let e=Je;for(Je=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;qe;){let t=qe;for(qe=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Qe(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function $e(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),nt(r),rt(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function et(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(tt(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function tt(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===dt)||(e.globalVersion=dt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!et(e))))return;e.flags|=2;let t=e.dep,n=I,r=ot;I=e,ot=!0;try{Qe(e);let n=e.fn(e._value);(t.version===0||P(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{I=n,ot=r,$e(e),e.flags&=-3}}function nt(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)nt(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function rt(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}function it(e,t){e.effect instanceof Ge&&(e=e.effect.fn);let n=new Ge(e);t&&S(n,t);try{n.run()}catch(e){throw n.stop(),e}let r=n.run.bind(n);return r.effect=n,r}function at(e){e.effect.stop()}var ot=!0,st=[];function ct(){st.push(ot),ot=!1}function lt(){let e=st.pop();ot=e===void 0?!0:e}function ut(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=I;I=void 0;try{t()}finally{I=e}}}var dt=0,ft=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},pt=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!I||!ot||I===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==I)t=this.activeLink=new ft(I,this),I.deps?(t.prevDep=I.depsTail,I.depsTail.nextDep=t,I.depsTail=t):I.deps=I.depsTail=t,mt(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=I.depsTail,t.nextDep=void 0,I.depsTail.nextDep=t,I.depsTail=t,I.deps===t&&(I.deps=e)}return t}trigger(e){this.version++,dt++,this.notify(e)}notify(e){Xe();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{Ze()}}};function mt(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)mt(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var ht=new WeakMap,gt=Symbol(``),_t=Symbol(``),vt=Symbol(``);function L(e,t,n){if(ot&&I){let t=ht.get(e);t||ht.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new pt),r.map=t,r.key=n),r.track()}}function yt(e,t,n,r,i,a){let o=ht.get(e);if(!o){dt++;return}let s=e=>{e&&e.trigger()};if(Xe(),t===`clear`)o.forEach(s);else{let i=E(e),a=i&&ce(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===vt||!re(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(vt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(gt)),D(e)&&s(o.get(_t)));break;case`delete`:i||(s(o.get(gt)),D(e)&&s(o.get(_t)));break;case`set`:D(e)&&s(o.get(gt));break}}Ze()}function bt(e,t){let n=ht.get(e);return n&&n.get(t)}function xt(e){let t=z(e);return t===e?t:(L(t,`iterate`,vt),R(e)?t:t.map(pn))}function St(e){return L(e=z(e),`iterate`,vt),e}function Ct(e,t){return un(e)?ln(e)?mn(pn(t)):mn(t):pn(t)}var wt={__proto__:null,[Symbol.iterator](){return Tt(this,Symbol.iterator,e=>Ct(this,e))},concat(...e){return xt(this).concat(...e.map(e=>E(e)?xt(e):e))},entries(){return Tt(this,`entries`,e=>(e[1]=Ct(this,e[1]),e))},every(e,t){return Dt(this,`every`,e,t,void 0,arguments)},filter(e,t){return Dt(this,`filter`,e,t,e=>e.map(e=>Ct(this,e)),arguments)},find(e,t){return Dt(this,`find`,e,t,e=>Ct(this,e),arguments)},findIndex(e,t){return Dt(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return Dt(this,`findLast`,e,t,e=>Ct(this,e),arguments)},findLastIndex(e,t){return Dt(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return Dt(this,`forEach`,e,t,void 0,arguments)},includes(...e){return kt(this,`includes`,e)},indexOf(...e){return kt(this,`indexOf`,e)},join(e){return xt(this).join(e)},lastIndexOf(...e){return kt(this,`lastIndexOf`,e)},map(e,t){return Dt(this,`map`,e,t,void 0,arguments)},pop(){return At(this,`pop`)},push(...e){return At(this,`push`,e)},reduce(e,...t){return Ot(this,`reduce`,e,t)},reduceRight(e,...t){return Ot(this,`reduceRight`,e,t)},shift(){return At(this,`shift`)},some(e,t){return Dt(this,`some`,e,t,void 0,arguments)},splice(...e){return At(this,`splice`,e)},toReversed(){return xt(this).toReversed()},toSorted(e){return xt(this).toSorted(e)},toSpliced(...e){return xt(this).toSpliced(...e)},unshift(...e){return At(this,`unshift`,e)},values(){return Tt(this,`values`,e=>Ct(this,e))}};function Tt(e,t,n){let r=St(e),i=r[t]();return r!==e&&!R(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var Et=Array.prototype;function Dt(e,t,n,r,i,a){let o=St(e),s=o!==e&&!R(e),c=o[t];if(c!==Et[t]){let t=c.apply(e,a);return s?pn(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,Ct(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function Ot(e,t,n,r){let i=St(e),a=n;return i!==e&&(R(e)?n.length>3&&(a=function(t,r,i){return n.call(this,t,r,i,e)}):a=function(t,r,i){return n.call(this,t,Ct(e,r),i,e)}),i[t](a,...r)}function kt(e,t,n){let r=z(e);L(r,`iterate`,vt);let i=r[t](...n);return(i===-1||i===!1)&&dn(n[0])?(n[0]=z(n[0]),r[t](...n)):i}function At(e,t,n=[]){ct(),Xe();let r=z(e)[t].apply(e,n);return Ze(),lt(),r}var jt=h(`__proto__,__v_isRef,__isVue`),Mt=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(re));function Nt(e){re(e)||(e=String(e));let t=z(this);return L(t,`has`,e),t.hasOwnProperty(e)}var Pt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?en:$t:i?Qt:Zt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=E(e);if(!r){let e;if(a&&(e=wt[t]))return e;if(t===`hasOwnProperty`)return Nt}let o=Reflect.get(e,t,B(e)?e:n);if((re(t)?Mt.has(t):jt(t))||(r||L(e,`get`,t),i))return o;if(B(o)){let e=a&&ce(t)?o:o.value;return r&&A(e)?on(e):e}return A(o)?r?on(o):rn(o):o}},Ft=class extends Pt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=E(e)&&ce(t);if(!this._isShallow){let e=un(i);if(!R(n)&&!un(n)&&(i=z(i),n=z(n)),!a&&B(i)&&!B(n))return e||(i.value=n),!0}let o=a?Number(t)e,Ht=e=>Reflect.getPrototypeOf(e);function Ut(e,t,n){return function(...r){let i=this.__v_raw,a=z(i),o=D(a),s=e===`entries`||e===Symbol.iterator&&o,c=e===`keys`&&o,l=i[e](...r),u=n?Vt:t?mn:pn;return!t&&L(a,`iterate`,c?_t:gt),{next(){let{value:e,done:t}=l.next();return t?{value:e,done:t}:{value:s?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function Wt(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Gt(e,t){let n={get(n){let r=this.__v_raw,i=z(r),a=z(n);e||(P(n,a)&&L(i,`get`,n),L(i,`get`,a));let{has:o}=Ht(i),s=t?Vt:e?mn:pn;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&L(z(t),`iterate`,gt),t.size},has(t){let n=this.__v_raw,r=z(n),i=z(t);return e||(P(t,i)&&L(r,`has`,t),L(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=z(a),s=t?Vt:e?mn:pn;return!e&&L(o,`iterate`,gt),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return S(n,e?{add:Wt(`add`),set:Wt(`set`),delete:Wt(`delete`),clear:Wt(`clear`)}:{add(e){!t&&!R(e)&&!un(e)&&(e=z(e));let n=z(this);return Ht(n).has.call(n,e)||(n.add(e),yt(n,`add`,e,e)),this},set(e,n){!t&&!R(n)&&!un(n)&&(n=z(n));let r=z(this),{has:i,get:a}=Ht(r),o=i.call(r,e);o||=(e=z(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?P(n,s)&&yt(r,`set`,e,n,s):yt(r,`add`,e,n),this},delete(e){let t=z(this),{has:n,get:r}=Ht(t),i=n.call(t,e);i||=(e=z(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&yt(t,`delete`,e,void 0,a),o},clear(){let e=z(this),t=e.size!==0,n=e.clear();return t&&yt(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Ut(r,e,t)}),n}function Kt(e,t){let n=Gt(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(T(n,r)&&r in t?n:t,r,i)}var qt={get:Kt(!1,!1)},Jt={get:Kt(!1,!0)},Yt={get:Kt(!0,!1)},Xt={get:Kt(!0,!0)},Zt=new WeakMap,Qt=new WeakMap,$t=new WeakMap,en=new WeakMap;function tn(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function nn(e){return e.__v_skip||!Object.isExtensible(e)?0:tn(oe(e))}function rn(e){return un(e)?e:cn(e,!1,Lt,qt,Zt)}function an(e){return cn(e,!1,zt,Jt,Qt)}function on(e){return cn(e,!0,Rt,Yt,$t)}function sn(e){return cn(e,!0,Bt,Xt,en)}function cn(e,t,n,r,i){if(!A(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;let a=nn(e);if(a===0)return e;let o=i.get(e);if(o)return o;let s=new Proxy(e,a===2?r:n);return i.set(e,s),s}function ln(e){return un(e)?ln(e.__v_raw):!!(e&&e.__v_isReactive)}function un(e){return!!(e&&e.__v_isReadonly)}function R(e){return!!(e&&e.__v_isShallow)}function dn(e){return e?!!e.__v_raw:!1}function z(e){let t=e&&e.__v_raw;return t?z(t):e}function fn(e){return!T(e,`__v_skip`)&&Object.isExtensible(e)&&ge(e,`__v_skip`,!0),e}var pn=e=>A(e)?rn(e):e,mn=e=>A(e)?on(e):e;function B(e){return e?e.__v_isRef===!0:!1}function hn(e){return _n(e,!1)}function gn(e){return _n(e,!0)}function _n(e,t){return B(e)?e:new vn(e,t)}var vn=class{constructor(e,t){this.dep=new pt,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:z(e),this._value=t?e:pn(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||R(e)||un(e);e=n?e:z(e),P(e,t)&&(this._rawValue=e,this._value=n?e:pn(e),this.dep.trigger())}};function yn(e){e.dep&&e.dep.trigger()}function bn(e){return B(e)?e.value:e}function xn(e){return O(e)?e():bn(e)}var Sn={get:(e,t,n)=>t===`__v_raw`?e:bn(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return B(i)&&!B(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function Cn(e){return ln(e)?e:new Proxy(e,Sn)}var wn=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new pt,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function Tn(e){return new wn(e)}function En(e){let t=E(e)?Array(e.length):{};for(let n in e)t[n]=An(e,n);return t}var Dn=class{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._raw=z(e);let r=!0,i=e;if(!E(e)||!ce(String(t)))do r=!dn(i)||R(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=bn(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&B(this._raw[this._key])){let t=this._object[this._key];if(B(t)){t.value=e;return}}this._object[this._key]=e}get dep(){return bt(this._raw,this._key)}},On=class{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}};function kn(e,t,n){return B(e)?e:O(e)?new On(e):A(e)&&arguments.length>1?An(e,t,n):hn(e)}function An(e,t,n){return new Dn(e,t,n)}var jn=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new pt(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=dt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&I!==this)return Ye(this,!0),!0}get value(){let e=this.dep.track();return tt(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function Mn(e,t,n=!1){let r,i;return O(e)?r=e:(r=e.get,i=e.set),new jn(r,i,n)}var Nn={GET:`get`,HAS:`has`,ITERATE:`iterate`},Pn={SET:`set`,ADD:`add`,DELETE:`delete`,CLEAR:`clear`},Fn={},In=new WeakMap,Ln=void 0;function Rn(){return Ln}function zn(e,t=!1,n=Ln){if(n){let t=In.get(n);t||In.set(n,t=[]),t.push(e)}}function Bn(e,t,n=g){let{immediate:r,deep:i,once:a,scheduler:o,augmentJob:s,call:c}=n,l=e=>i?e:R(e)||i===!1||i===0?Vn(e,1):Vn(e),u,d,f,p,m=!1,h=!1;if(B(e)?(d=()=>e.value,m=R(e)):ln(e)?(d=()=>l(e),m=!0):E(e)?(h=!0,m=e.some(e=>ln(e)||R(e)),d=()=>e.map(e=>{if(B(e))return e.value;if(ln(e))return l(e);if(O(e))return c?c(e,2):e()})):d=O(e)?t?c?()=>c(e,2):e:()=>{if(f){ct();try{f()}finally{lt()}}let t=Ln;Ln=u;try{return c?c(e,3,[p]):e(p)}finally{Ln=t}}:v,t&&i){let e=d,t=i===!0?1/0:i;d=()=>Vn(e(),t)}let _=He(),y=()=>{u.stop(),_&&_.active&&C(_.effects,u)};if(a&&t){let e=t;t=(...t)=>{e(...t),y()}}let b=h?Array(e.length).fill(Fn):Fn,x=e=>{if(!(!(u.flags&1)||!u.dirty&&!e))if(t){let e=u.run();if(i||m||(h?e.some((e,t)=>P(e,b[t])):P(e,b))){f&&f();let n=Ln;Ln=u;try{let n=[e,b===Fn?void 0:h&&b[0]===Fn?[]:b,p];b=e,c?c(t,3,n):t(...n)}finally{Ln=n}}}else u.run()};return s&&s(x),u=new Ge(d),u.scheduler=o?()=>o(x,!1):x,p=e=>zn(e,!1,u),f=u.onStop=()=>{let e=In.get(u);if(e){if(c)c(e,4);else for(let t of e)t();In.delete(u)}},t?r?x(!0):b=u.run():o?o(x.bind(null,!0),!0):u.run(),y.pause=u.pause.bind(u),y.resume=u.resume.bind(u),y.stop=y,y}function Vn(e,t=1/0,n){if(t<=0||!A(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,B(e))Vn(e.value,t,n);else if(E(e))for(let r=0;r{Vn(e,t,n)});else if(se(e)){for(let r in e)Vn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Vn(e[r],t,n)}return e}var Hn=[];function Un(e){Hn.push(e)}function Wn(){Hn.pop()}function Gn(e,t){}var Kn={SETUP_FUNCTION:0,0:`SETUP_FUNCTION`,RENDER_FUNCTION:1,1:`RENDER_FUNCTION`,NATIVE_EVENT_HANDLER:5,5:`NATIVE_EVENT_HANDLER`,COMPONENT_EVENT_HANDLER:6,6:`COMPONENT_EVENT_HANDLER`,VNODE_HOOK:7,7:`VNODE_HOOK`,DIRECTIVE_HOOK:8,8:`DIRECTIVE_HOOK`,TRANSITION_HOOK:9,9:`TRANSITION_HOOK`,APP_ERROR_HANDLER:10,10:`APP_ERROR_HANDLER`,APP_WARN_HANDLER:11,11:`APP_WARN_HANDLER`,FUNCTION_REF:12,12:`FUNCTION_REF`,ASYNC_COMPONENT_LOADER:13,13:`ASYNC_COMPONENT_LOADER`,SCHEDULER:14,14:`SCHEDULER`,COMPONENT_UPDATE:15,15:`COMPONENT_UPDATE`,APP_UNMOUNT_CLEANUP:16,16:`APP_UNMOUNT_CLEANUP`},qn={sp:`serverPrefetch hook`,bc:`beforeCreate hook`,c:`created hook`,bm:`beforeMount hook`,m:`mounted hook`,bu:`beforeUpdate hook`,u:`updated`,bum:`beforeUnmount hook`,um:`unmounted hook`,a:`activated hook`,da:`deactivated hook`,ec:`errorCaptured hook`,rtc:`renderTracked hook`,rtg:`renderTriggered hook`,0:`setup function`,1:`render function`,2:`watcher getter`,3:`watcher callback`,4:`watcher cleanup function`,5:`native event handler`,6:`component event handler`,7:`vnode hook`,8:`directive hook`,9:`transition hook`,10:`app errorHandler`,11:`app warnHandler`,12:`ref function`,13:`async component loader`,14:`scheduler flush`,15:`component update`,16:`app unmount cleanup function`};function Jn(e,t,n,r){try{return r?e(...r):e()}catch(e){Xn(e,t,n)}}function Yn(e,t,n,r){if(O(e)){let i=Jn(e,t,n,r);return i&&j(i)&&i.catch(e=>{Xn(e,t,n)}),i}if(E(e)){let i=[];for(let a=0;a>>1,i=V[r],a=dr(i);a=dr(n)?V.push(e):V.splice(ar(t),0,e),e.flags|=1,sr()}}function sr(){rr||=nr.then(fr)}function cr(e){E(e)?$n.push(...e):er&&e.id===-1?er.splice(tr+1,0,e):e.flags&1||($n.push(e),e.flags|=1),sr()}function lr(e,t,n=Qn+1){for(;ndr(e)-dr(t));if($n.length=0,er){er.push(...e);return}for(er=e,tr=0;tre.id==null?e.flags&2?-1:1/0:e.id;function fr(e){try{for(Qn=0;Qnpr.emit(e,...t)),mr=[]):typeof window<`u`&&window.HTMLElement&&!(window.navigator?.userAgent)?.includes(`jsdom`)?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(e=>{hr(e,t)}),setTimeout(()=>{pr||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,mr=[])},3e3)):mr=[]}var H=null,gr=null;function _r(e){let t=H;return H=e,gr=e&&e.type.__scopeId||null,t}function vr(e){gr=e}function yr(){gr=null}var br=e=>xr;function xr(e,t=H,n){if(!t||e._n)return e;let r=(...n)=>{r._d&&ls(-1);let i=_r(t),a;try{a=e(...n)}finally{_r(i),r._d&&ls(1)}return a};return r._n=!0,r._c=!0,r._d=!0,r}function Sr(e,t){if(H===null)return e;let n=qs(H),r=e.dirs||=[];for(let e=0;ee.__isTeleport,Er=e=>e&&(e.disabled||e.disabled===``),Dr=e=>e&&(e.defer||e.defer===``),Or=e=>typeof SVGElement<`u`&&e instanceof SVGElement,kr=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,Ar=(e,t)=>{let n=e&&e.to;return k(n)?t?t(n):null:n},jr={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g}}=l,_=Er(t.props),{shapeFlag:v,children:y,dynamicChildren:b}=t;if(e==null){let e=t.el=h(``),l=t.anchor=h(``);p(e,n,r),p(l,n,r);let d=(e,t)=>{v&16&&u(y,e,t,i,a,o,s,c)},f=()=>{let e=t.target=Ar(t.props,m),n=Ir(e,t,h,p);e&&(o!==`svg`&&Or(e)?o=`svg`:o!==`mathml`&&kr(e)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(e),_||(d(e,n),Fr(t,!1)))};_&&(d(n,l),Fr(t,!0)),Dr(t.props)?(t.el.__isMounted=!1,W(()=>{f(),delete t.el.__isMounted},a)):f()}else{if(Dr(t.props)&&e.el.__isMounted===!1){W(()=>{jr.process(e,t,n,r,i,a,o,s,c,l)},a);return}t.el=e.el,t.targetStart=e.targetStart;let u=t.anchor=e.anchor,p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=Er(e.props),v=g?n:p,y=g?u:h;if(o===`svg`||Or(p)?o=`svg`:(o===`mathml`||kr(p))&&(o=`mathml`),b?(f(e.dynamicChildren,b,v,i,a,o,s),Bo(e,t,!0)):c||d(e,t,v,y,i,a,o,s,!1),_)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Mr(t,n,u,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=Ar(t.props,m);e&&Mr(t,e,null,l,0)}else g&&Mr(t,p,h,l,1);Fr(t,_)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e;if(d&&(i(l),i(u)),a&&i(c),o&16){let e=a||!Er(f);for(let i=0;i{e.isMounted=!0}),Vi(()=>{e.isUnmounting=!0}),e}var Br=[Function,Array],Vr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Br,onEnter:Br,onAfterEnter:Br,onEnterCancelled:Br,onBeforeLeave:Br,onLeave:Br,onAfterLeave:Br,onLeaveCancelled:Br,onBeforeAppear:Br,onAppear:Br,onAfterAppear:Br,onAppearCancelled:Br},Hr=e=>{let t=e.subTree;return t.component?Hr(t.component):t},Ur={name:`BaseTransition`,props:Vr,setup(e,{slots:t}){let n=Q(),r=zr();return()=>{let i=t.default&&Zr(t.default(),!0);if(!i||!i.length)return;let a=Wr(i),o=z(e),{mode:s}=o;if(r.isLeaving)return Jr(a);let c=Yr(a);if(!c)return Jr(a);let l=qr(c,o,r,n,e=>l=e);c.type!==K&&Xr(c,l);let u=n.subTree&&Yr(n.subTree);if(u&&u.type!==K&&!ms(u,c)&&Hr(n).type!==K){let e=qr(u,o,r,n);if(Xr(u,e),s===`out-in`&&c.type!==K)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},Jr(a);s===`in-out`&&c.type!==K?e.delayLeave=(e,t,n)=>{let i=Kr(r,u);i[String(u.key)]=u,e[Lr]=()=>{t(),e[Lr]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function Wr(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==K){t=n;break}}return t}var Gr=Ur;function Kr(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function qr(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:m,onLeaveCancelled:h,onBeforeAppear:g,onAppear:_,onAfterAppear:v,onAppearCancelled:y}=t,b=String(e.key),x=Kr(n,e),S=(e,t)=>{e&&Yn(e,r,9,t)},C=(e,t)=>{let n=t[1];S(e,t),E(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},w={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted)if(a)r=g||c;else return;t[Lr]&&t[Lr](!0);let i=x[b];i&&ms(e,i)&&i.el[Lr]&&i.el[Lr](),S(r,[t])},enter(e){let t=l,r=u,i=d;if(!n.isMounted)if(a)t=_||l,r=v||u,i=y||d;else return;let o=!1,s=e[Rr]=t=>{o||(o=!0,S(t?i:r,[e]),w.delayedLeave&&w.delayedLeave(),e[Rr]=void 0)};t?C(t,[e,s]):s()},leave(t,r){let i=String(e.key);if(t[Rr]&&t[Rr](!0),n.isUnmounting)return r();S(f,[t]);let a=!1,o=t[Lr]=n=>{a||(a=!0,r(),S(n?h:m,[t]),t[Lr]=void 0,x[i]===e&&delete x[i])};x[i]=e,p?C(p,[t,o]):o()},clone(e){let a=qr(e,t,n,r,i);return i&&i(a),a}};return w}function Jr(e){if(Ei(e))return e=xs(e),e.children=null,e}function Yr(e){if(!Ei(e))return Tr(e.type)&&e.children?Wr(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&O(n.default))return n.default()}}function Xr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Xr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Zr(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;eS({name:e.name},t,{setup:e}))():e}function $r(){let e=Q();return e?(e.appContext.config.idPrefix||`v`)+`-`+e.ids[0]+ e.ids[1]++:``}function ei(e){e.ids=[e.ids[0]+ e.ids[2]+++`-`,0,0]}function ti(e){let t=Q(),n=gn(null);if(t){let r=t.refs===g?t.refs={}:t.refs;Object.defineProperty(r,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e})}return n}var ni=new WeakMap;function ri(e,t,n,r,i=!1){if(E(e)){e.forEach((e,a)=>ri(e,t&&(E(t)?t[a]:t),n,r,i));return}if(Ci(r)&&!i){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&ri(e,t,n,r.component.subTree);return}let a=r.shapeFlag&4?qs(r.component):r.el,o=i?null:a,{i:s,r:c}=e,l=t&&t.r,u=s.refs===g?s.refs={}:s.refs,d=s.setupState,f=z(d),p=d===g?y:e=>T(f,e),m=e=>!0;if(l!=null&&l!==c){if(ii(t),k(l))u[l]=null,p(l)&&(d[l]=null);else if(B(l)){m(l)&&(l.value=null);let e=t;e.k&&(u[e.k]=null)}}if(O(c))Jn(c,s,12,[o,u]);else{let t=k(c),r=B(c);if(t||r){let s=()=>{if(e.f){let n=t?p(c)?d[c]:u[c]:m(c)||!e.k?c.value:u[e.k];if(i)E(n)&&C(n,a);else if(E(n))n.includes(a)||n.push(a);else if(t)u[c]=[a],p(c)&&(d[c]=u[c]);else{let t=[a];m(c)&&(c.value=t),e.k&&(u[e.k]=t)}}else t?(u[c]=o,p(c)&&(d[c]=o)):r&&(m(c)&&(c.value=o),e.k&&(u[e.k]=o))};if(o){let t=()=>{s(),ni.delete(e)};t.id=-1,ni.set(e,t),W(t,n)}else ii(e),s()}}}function ii(e){let t=ni.get(e);t&&(t.flags|=8,ni.delete(e))}var ai=!1,oi=()=>{ai||=(console.error(`Hydration completed but contains mismatches.`),!0)},si=e=>e.namespaceURI.includes(`svg`)&&e.tagName!==`foreignObject`,ci=e=>e.namespaceURI.includes(`MathML`),li=e=>{if(e.nodeType===1){if(si(e))return`svg`;if(ci(e))return`mathml`}},ui=e=>e.nodeType===8;function di(e){let{mt:t,p:n,o:{patchProp:r,createText:i,nextSibling:a,parentNode:o,remove:s,insert:c,createComment:l}}=e,u=(e,t)=>{if(!t.hasChildNodes()){n(null,e,t),ur(),t._vnode=e;return}d(t.firstChild,e,null,null,null),ur(),t._vnode=e},d=(n,r,s,l,u,y=!1)=>{y||=!!r.dynamicChildren;let b=ui(n)&&n.data===`[`,x=()=>h(n,r,s,l,u,b),{type:S,ref:C,shapeFlag:w,patchFlag:T}=r,E=n.nodeType;r.el=n,T===-2&&(y=!1,r.dynamicChildren=null);let D=null;switch(S){case rs:E===3?(n.data!==r.children&&(oi(),n.data=r.children),D=a(n)):r.children===``?(c(r.el=i(``),o(n),n),D=n):D=x();break;case K:v(n)?(D=a(n),_(r.el=n.content.firstChild,n,s)):D=E!==8||b?x():a(n);break;case is:if(b&&(n=a(n),E=n.nodeType),E===1||E===3){D=n;let e=!r.children.length;for(let t=0;t{o||=!!t.dynamicChildren;let{type:c,props:l,patchFlag:u,shapeFlag:d,dirs:f,transition:m}=t,h=c===`input`||c===`option`;if(h||u!==-1){f&&Cr(t,null,n,`created`);let c=!1;if(v(e)){c=zo(null,m)&&n&&n.vnode.props&&n.vnode.props.appear;let r=e.content.firstChild;if(c){let e=r.getAttribute(`class`);e&&(r.$cls=e),m.beforeEnter(r)}_(r,e,n),t.el=e=r}if(d&16&&!(l&&(l.innerHTML||l.textContent))){let r=p(e.firstChild,t,e,n,i,a,o);for(;r;){mi(e,1)||oi();let t=r;r=r.nextSibling,s(t)}}else if(d&8){let n=t.children;n[0]===` +`&&(e.tagName===`PRE`||e.tagName===`TEXTAREA`)&&(n=n.slice(1));let{textContent:r}=e;r!==n&&r!==n.replace(/\r\n|\r/g,` +`)&&(mi(e,0)||oi(),e.textContent=t.children)}if(l){if(h||!o||u&48){let t=e.tagName.includes(`-`);for(let i in l)(h&&(i.endsWith(`value`)||i===`indeterminate`)||b(i)&&!le(i)||i[0]===`.`||t)&&r(e,i,null,l[i],void 0,n)}else if(l.onClick)r(e,`onClick`,null,l.onClick,void 0,n);else if(u&4&&ln(l.style))for(let e in l.style)l.style[e]}let g;(g=l&&l.onVnodeBeforeMount)&&X(g,n,t),f&&Cr(t,null,n,`beforeMount`),((g=l&&l.onVnodeMounted)||f||c)&&es(()=>{g&&X(g,n,t),c&&m.enter(e),f&&Cr(t,null,n,`mounted`)},i)}return e.nextSibling},p=(e,t,r,o,s,l,u)=>{u||=!!t.dynamicChildren;let f=t.children,p=f.length;for(let t=0;t{let{slotScopeIds:u}=t;u&&(i=i?i.concat(u):u);let d=o(e),f=p(a(e),t,d,n,r,i,s);return f&&ui(f)&&f.data===`]`?a(t.anchor=f):(oi(),c(t.anchor=l(`]`),d,f),f)},h=(e,t,r,i,c,l)=>{if(mi(e.parentElement,1)||oi(),t.el=null,l){let t=g(e);for(;;){let n=a(e);if(n&&n!==t)s(n);else break}}let u=a(e),d=o(e);return s(e),n(null,t,d,u,r,i,li(d),c),r&&(r.vnode.el=t.el,ho(r,t.el)),u},g=(e,t=`[`,n=`]`)=>{let r=0;for(;e;)if(e=a(e),e&&ui(e)&&(e.data===t&&r++,e.data===n)){if(r===0)return a(e);r--}return e},_=(e,t,n)=>{let r=t.parentNode;r&&r.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},v=e=>e.nodeType===1&&e.tagName===`TEMPLATE`;return[u,d]}var fi=`data-allow-mismatch`,pi={0:`text`,1:`children`,2:`class`,3:`style`,4:`attribute`};function mi(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(fi);)e=e.parentElement;let n=e&&e.getAttribute(fi);if(n==null)return!1;if(n===``)return!0;{let e=n.split(`,`);return t===0&&e.includes(`children`)?!0:e.includes(pi[t])}}var hi=be().requestIdleCallback||(e=>setTimeout(e,1)),gi=be().cancelIdleCallback||(e=>clearTimeout(e)),_i=(e=1e4)=>t=>{let n=hi(t,{timeout:e});return()=>gi(n)};function vi(e){let{top:t,left:n,bottom:r,right:i}=e.getBoundingClientRect(),{innerHeight:a,innerWidth:o}=window;return(t>0&&t0&&r0&&n0&&i(t,n)=>{let r=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){r.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(vi(e))return t(),r.disconnect(),!1;r.observe(e)}}),()=>r.disconnect()},bi=e=>t=>{if(e){let n=matchMedia(e);if(n.matches)t();else return n.addEventListener(`change`,t,{once:!0}),()=>n.removeEventListener(`change`,t)}},xi=(e=[])=>(t,n)=>{k(e)&&(e=[e]);let r=!1,i=e=>{r||(r=!0,a(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},a=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),a};function Si(e,t){if(ui(e)&&e.data===`[`){let n=1,r=e.nextSibling;for(;r;){if(r.nodeType===1){if(t(r)===!1)break}else if(ui(r))if(r.data===`]`){if(--n===0)break}else r.data===`[`&&n++;r=r.nextSibling}}else t(e)}var Ci=e=>!!e.type.__asyncLoader;function wi(e){O(e)&&(e={loader:e});let{loader:t,loadingComponent:n,errorComponent:r,delay:i=200,hydrate:a,timeout:o,suspensible:s=!0,onError:c}=e,l=null,u,d=0,f=()=>(d++,l=null,p()),p=()=>{let e;return l||(e=l=t().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),c)return new Promise((t,n)=>{c(e,()=>t(f()),()=>n(e),d+1)});throw e}).then(t=>e!==l&&l?l:(t&&(t.__esModule||t[Symbol.toStringTag]===`Module`)&&(t=t.default),u=t,t)))};return Qr({name:`AsyncComponentWrapper`,__asyncLoader:p,__asyncHydrate(e,t,n){let r=!1;(t.bu||=[]).push(()=>r=!0);let i=()=>{r||n()},o=a?()=>{let n=a(i,t=>Si(e,t));n&&(t.bum||=[]).push(n)}:i;u?o():p().then(()=>!t.isUnmounted&&o())},get __asyncResolved(){return u},setup(){let e=Z;if(ei(e),u)return()=>Ti(u,e);let t=t=>{l=null,Xn(t,e,13,!r)};if(s&&e.suspense||Is)return p().then(t=>()=>Ti(t,e)).catch(e=>(t(e),()=>r?J(r,{error:e}):null));let a=hn(!1),c=hn(),d=hn(!!i);return i&&setTimeout(()=>{d.value=!1},i),o!=null&&setTimeout(()=>{if(!a.value&&!c.value){let e=Error(`Async component timed out after ${o}ms.`);t(e),c.value=e}},o),p().then(()=>{a.value=!0,e.parent&&Ei(e.parent.vnode)&&e.parent.update()}).catch(e=>{t(e),c.value=e}),()=>{if(a.value&&u)return Ti(u,e);if(c.value&&r)return J(r,{error:c.value});if(n&&!d.value)return Ti(n,e)}}})}function Ti(e,t){let{ref:n,props:r,children:i,ce:a}=t.vnode,o=J(e,r,i);return o.ref=n,o.ce=a,delete t.vnode.ce,o}var Ei=e=>e.type.__isKeepAlive,Di={name:`KeepAlive`,__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=Q(),r=n.ctx;if(!r.renderer)return()=>{let e=t.default&&t.default();return e&&e.length===1?e[0]:e};let i=new Map,a=new Set,o=null,s=n.suspense,{renderer:{p:c,m:l,um:u,o:{createElement:d}}}=r,f=d(`div`);r.activate=(e,t,n,r,i)=>{let a=e.component;l(e,t,n,0,s),c(a.vnode,e,t,n,a,s,r,e.slotScopeIds,i),W(()=>{a.isDeactivated=!1,a.a&&he(a.a);let t=e.props&&e.props.onVnodeMounted;t&&X(t,a.parent,e)},s)},r.deactivate=e=>{let t=e.component;Uo(t.m),Uo(t.a),l(e,f,null,1,s),W(()=>{t.da&&he(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&X(n,t.parent,e),t.isDeactivated=!0},s)};function p(e){Ni(e),u(e,n,s,!0)}function m(e){i.forEach((t,n)=>{let r=Js(t.type);r&&!e(r)&&h(n)})}function h(e){let t=i.get(e);t&&(!o||!ms(t,o))?p(t):o&&Ni(o),i.delete(e),a.delete(e)}Qa(()=>[e.include,e.exclude],([e,t])=>{e&&m(t=>Oi(e,t)),t&&m(e=>!Oi(t,e))},{flush:`post`,deep:!0});let g=null,_=()=>{g!=null&&(Wo(n.subTree.type)?W(()=>{i.set(g,Pi(n.subTree))},n.subTree.suspense):i.set(g,Pi(n.subTree)))};return Ri(_),Bi(_),Vi(()=>{i.forEach(e=>{let{subTree:t,suspense:r}=n,i=Pi(t);if(e.type===i.type&&e.key===i.key){Ni(i);let e=i.component.da;e&&W(e,r);return}p(e)})}),()=>{if(g=null,!t.default)return o=null;let n=t.default(),r=n[0];if(n.length>1)return o=null,n;if(!ps(r)||!(r.shapeFlag&4)&&!(r.shapeFlag&128))return o=null,r;let s=Pi(r);if(s.type===K)return o=null,s;let c=s.type,l=Js(Ci(s)?s.type.__asyncResolved||{}:c),{include:u,exclude:d,max:f}=e;if(u&&(!l||!Oi(u,l))||d&&l&&Oi(d,l))return s.shapeFlag&=-257,o=s,r;let p=s.key==null?c:s.key,m=i.get(p);return s.el&&(s=xs(s),r.shapeFlag&128&&(r.ssContent=s)),g=p,m?(s.el=m.el,s.component=m.component,s.transition&&Xr(s,s.transition),s.shapeFlag|=512,a.delete(p),a.add(p)):(a.add(p),f&&a.size>parseInt(f,10)&&h(a.values().next().value)),s.shapeFlag|=256,o=s,Wo(r.type)?r:s}}};function Oi(e,t){return E(e)?e.some(e=>Oi(e,t)):k(e)?e.split(`,`).includes(t):ne(e)?(e.lastIndex=0,e.test(t)):!1}function ki(e,t){ji(e,`a`,t)}function Ai(e,t){ji(e,`da`,t)}function ji(e,t,n=Z){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(Fi(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Ei(e.parent.vnode)&&Mi(r,t,n,e),e=e.parent}}function Mi(e,t,n,r){let i=Fi(t,e,r,!0);Hi(()=>{C(r[t],i)},n)}function Ni(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Pi(e){return e.shapeFlag&128?e.ssContent:e}function Fi(e,t,n=Z,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{ct();let i=Ns(n),a=Yn(t,n,e,r);return i(),lt(),a};return r?i.unshift(a):i.push(a),a}}var Ii=e=>(t,n=Z)=>{(!Is||e===`sp`)&&Fi(e,(...e)=>t(...e),n)},Li=Ii(`bm`),Ri=Ii(`m`),zi=Ii(`bu`),Bi=Ii(`u`),Vi=Ii(`bum`),Hi=Ii(`um`),Ui=Ii(`sp`),Wi=Ii(`rtg`),Gi=Ii(`rtc`);function Ki(e,t=Z){Fi(`ec`,e,t)}var qi=`components`,Ji=`directives`;function Yi(e,t){return $i(qi,e,!0,t)||e}var Xi=Symbol.for(`v-ndc`);function Zi(e){return k(e)?$i(qi,e,!1)||e:e||Xi}function Qi(e){return $i(Ji,e)}function $i(e,t,n=!0,r=!1){let i=H||Z;if(i){let n=i.type;if(e===qi){let e=Js(n,!1);if(e&&(e===t||e===M(t)||e===pe(M(t))))return n}let a=ea(i[e]||n[e],t)||ea(i.appContext[e],t);return!a&&r?n:a}}function ea(e,t){return e&&(e[t]||e[M(t)]||e[pe(M(t))])}function ta(e,t,n,r){let i,a=n&&n[r],o=E(e);if(o||k(e)){let n=o&&ln(e),r=!1,s=!1;n&&(r=!R(e),s=un(e),e=St(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function ra(e,t,n={},r,i){if(H.ce||H.parent&&Ci(H.parent)&&H.parent.ce){let e=Object.keys(n).length>0;return t!==`default`&&(n.name=t),os(),fs(G,null,[J(`slot`,n,r&&r())],e?-2:64)}let a=e[t];a&&a._c&&(a._d=!1),os();let o=a&&ia(a(n)),s=n.key||o&&o.key,c=fs(G,{key:(s&&!re(s)?s:`_${t}`)+(!o&&r?`_fb`:``)},o||(r?r():[]),o&&e._===1?64:-2);return!i&&c.scopeId&&(c.slotScopeIds=[c.scopeId+`-s`]),a&&a._c&&(a._d=!0),c}function ia(e){return e.some(e=>ps(e)?!(e.type===K||e.type===G&&!ia(e.children)):!0)?e:null}function aa(e,t){let n={};for(let r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:me(r)]=e[r];return n}var oa=e=>e?Fs(e)?qs(e):oa(e.parent):null,sa=S(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>oa(e.parent),$root:e=>oa(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>ja(e),$forceUpdate:e=>e.f||=()=>{or(e.update)},$nextTick:e=>e.n||=ir.bind(e.proxy),$watch:e=>eo.bind(e)}),ca=(e,t)=>e!==g&&!e.__isScriptSetup&&T(e,t),la={get({_:e},t){if(t===`__v_skip`)return!0;let{ctx:n,setupState:r,data:i,props:a,accessCache:o,type:s,appContext:c}=e;if(t[0]!==`$`){let e=o[t];if(e!==void 0)switch(e){case 1:return r[t];case 2:return i[t];case 4:return n[t];case 3:return a[t]}else if(ca(r,t))return o[t]=1,r[t];else if(i!==g&&T(i,t))return o[t]=2,i[t];else if(T(a,t))return o[t]=3,a[t];else if(n!==g&&T(n,t))return o[t]=4,n[t];else Ea&&(o[t]=0)}let l=sa[t],u,d;if(l)return t===`$attrs`&&L(e.attrs,`get`,``),l(e);if((u=s.__cssModules)&&(u=u[t]))return u;if(n!==g&&T(n,t))return o[t]=4,n[t];if(d=c.config.globalProperties,T(d,t))return d[t]},set({_:e},t,n){let{data:r,setupState:i,ctx:a}=e;return ca(i,t)?(i[t]=n,!0):r!==g&&T(r,t)?(r[t]=n,!0):T(e.props,t)||t[0]===`$`&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,props:a,type:o}},s){let c;return!!(n[s]||e!==g&&s[0]!==`$`&&T(e,s)||ca(t,s)||T(a,s)||T(r,s)||T(sa,s)||T(i.config.globalProperties,s)||(c=o.__cssModules)&&c[s])},defineProperty(e,t,n){return n.get==null?T(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}},ua=S({},la,{get(e,t){if(t!==Symbol.unscopables)return la.get(e,t,e)},has(e,t){return t[0]!==`_`&&!xe(t)}});function da(){return null}function fa(){return null}function pa(e){}function ma(e){}function ha(){return null}function ga(){}function _a(e,t){return null}function va(){return ba(`useSlots`).slots}function ya(){return ba(`useAttrs`).attrs}function ba(e){let t=Q();return t.setupContext||=Ks(t)}function xa(e){return E(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}function Sa(e,t){let n=xa(e);for(let e in t){if(e.startsWith(`__skip`))continue;let r=n[e];r?E(r)||O(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:r===null&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n}function Ca(e,t){return!e||!t?e||t:E(e)&&E(t)?e.concat(t):S({},xa(e),xa(t))}function wa(e,t){let n={};for(let r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function Ta(e){let t=Q(),n=e();return Ps(),j(n)&&(n=n.catch(e=>{throw Ns(t),e})),[n,()=>Ns(t)]}var Ea=!0;function Da(e){let t=ja(e),n=e.proxy,r=e.ctx;Ea=!1,t.beforeCreate&&ka(t.beforeCreate,e,`bc`);let{data:i,computed:a,methods:o,watch:s,provide:c,inject:l,created:u,beforeMount:d,mounted:f,beforeUpdate:p,updated:m,activated:h,deactivated:g,beforeDestroy:_,beforeUnmount:y,destroyed:b,unmounted:x,render:S,renderTracked:C,renderTriggered:w,errorCaptured:T,serverPrefetch:D,expose:ee,inheritAttrs:te,components:ne,directives:k,filters:re}=t;if(l&&Oa(l,r,null),o)for(let e in o){let t=o[e];O(t)&&(r[e]=t.bind(n))}if(i){let t=i.call(n,n);A(t)&&(e.data=rn(t))}if(Ea=!0,a)for(let e in a){let t=a[e],i=Xs({get:O(t)?t.bind(n,n):O(t.get)?t.get.bind(n,n):v,set:!O(t)&&O(t.set)?t.set.bind(n):v});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e})}if(s)for(let e in s)Aa(s[e],r,n,e);if(c){let e=O(c)?c.call(n):c;Reflect.ownKeys(e).forEach(t=>{Wa(t,e[t])})}u&&ka(u,e,`c`);function j(e,t){E(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(j(Li,d),j(Ri,f),j(zi,p),j(Bi,m),j(ki,h),j(Ai,g),j(Ki,T),j(Gi,C),j(Wi,w),j(Vi,y),j(Hi,x),j(Ui,D),E(ee))if(ee.length){let t=e.exposed||={};ee.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={};S&&e.render===v&&(e.render=S),te!=null&&(e.inheritAttrs=te),ne&&(e.components=ne),k&&(e.directives=k),D&&ei(e)}function Oa(e,t,n=v){for(let n in E(e)&&(e=Ia(e)),e){let r=e[n],i;i=A(r)?`default`in r?Ga(r.from||n,r.default,!0):Ga(r.from||n):Ga(r),B(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function ka(e,t,n){Yn(E(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Aa(e,t,n,r){let i=r.includes(`.`)?to(n,r):()=>n[r];if(k(e)){let n=t[e];O(n)&&Qa(i,n)}else if(O(e))Qa(i,e.bind(n));else if(A(e))if(E(e))e.forEach(e=>Aa(e,t,n,r));else{let r=O(e.handler)?e.handler.bind(n):t[e.handler];O(r)&&Qa(i,r,e)}}function ja(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>Ma(c,e,o,!0)),Ma(c,t,o)),A(t)&&a.set(t,c),c}function Ma(e,t,n,r=!1){let{mixins:i,extends:a}=t;for(let o in a&&Ma(e,a,n,!0),i&&i.forEach(t=>Ma(e,t,n,!0)),t)if(!(r&&o===`expose`)){let r=Na[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}var Na={data:Pa,props:Ra,emits:Ra,methods:La,computed:La,beforeCreate:U,created:U,beforeMount:U,mounted:U,beforeUpdate:U,updated:U,beforeDestroy:U,beforeUnmount:U,destroyed:U,unmounted:U,activated:U,deactivated:U,errorCaptured:U,serverPrefetch:U,components:La,directives:La,watch:za,provide:Pa,inject:Fa};function Pa(e,t){return t?e?function(){return S(O(e)?e.call(this,this):e,O(t)?t.call(this,this):t)}:t:e}function Fa(e,t){return La(Ia(e),Ia(t))}function Ia(e){if(E(e)){let t={};for(let n=0;n1)return n&&O(t)?t.call(r&&r.proxy):t}}function Ka(){return!!(Q()||Ua)}var qa=Symbol.for(`v-scx`),Ja=()=>Ga(qa);function Ya(e,t){return $a(e,null,t)}function Xa(e,t){return $a(e,null,{flush:`post`})}function Za(e,t){return $a(e,null,{flush:`sync`})}function Qa(e,t,n){return $a(e,t,n)}function $a(e,t,n=g){let{immediate:r,deep:i,flush:a,once:o}=n,s=S({},n),c=t&&r||!t&&a!==`post`,l;if(Is){if(a===`sync`){let e=Ja();l=e.__watcherHandles||=[]}else if(!c){let e=()=>{};return e.stop=v,e.resume=v,e.pause=v,e}}let u=Z;s.call=(e,t,n)=>Yn(e,u,t,n);let d=!1;a===`post`?s.scheduler=e=>{W(e,u&&u.suspense)}:a!==`sync`&&(d=!0,s.scheduler=(e,t)=>{t?e():or(e)}),s.augmentJob=e=>{t&&(e.flags|=4),d&&(e.flags|=2,u&&(e.id=u.uid,e.i=u))};let f=Bn(e,t,s);return Is&&(l?l.push(f):c&&f()),f}function eo(e,t,n){let r=this.proxy,i=k(e)?e.includes(`.`)?to(r,e):()=>r[e]:e.bind(r,r),a;O(t)?a=t:(a=t.handler,n=t);let o=Ns(this),s=$a(i,a.bind(r),n);return o(),s}function to(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;e{let c,l=g,u;return Za(()=>{let t=e[i];P(c,t)&&(c=t,s())}),{get(){return o(),n.get?n.get(c):c},set(e){let o=n.set?n.set(e):e;if(!P(o,c)&&!(l!==g&&P(e,l)))return;let d=r.vnode.props;d&&(t in d||i in d||a in d)&&(`onUpdate:${t}`in d||`onUpdate:${i}`in d||`onUpdate:${a}`in d)||(c=e,s()),r.emit(`update:${t}`,o),P(e,o)&&P(e,l)&&!P(o,u)&&s(),l=e,u=o}}});return s[Symbol.iterator]=()=>{let e=0;return{next(){return e<2?{value:e++?o||g:s,done:!1}:{done:!0}}}},s}var ro=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${M(t)}Modifiers`]||e[`${N(t)}Modifiers`];function io(e,t,...n){if(e.isUnmounted)return;let r=e.vnode.props||g,i=n,a=t.startsWith(`update:`),o=a&&ro(r,t.slice(7));o&&(o.trim&&(i=n.map(e=>k(e)?e.trim():e)),o.number&&(i=n.map(_e)));let s,c=r[s=me(t)]||r[s=me(M(t))];!c&&a&&(c=r[s=me(N(t))]),c&&Yn(c,e,6,i);let l=r[s+`Once`];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[s])return;e.emitted[s]=!0,Yn(l,e,6,i)}}var ao=new WeakMap;function oo(e,t,n=!1){let r=n?ao:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},s=!1;if(!O(e)){let r=e=>{let n=oo(e,t,!0);n&&(s=!0,S(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!s?(A(e)&&r.set(e,null),null):(E(a)?a.forEach(e=>o[e]=null):S(o,a),A(e)&&r.set(e,o),o)}function so(e,t){return!e||!b(t)?!1:(t=t.slice(2).replace(/Once$/,``),T(e,t[0].toLowerCase()+t.slice(1))||T(e,N(t))||T(e,t))}function co(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:o,attrs:s,emit:c,render:l,renderCache:u,props:d,data:f,setupState:p,ctx:m,inheritAttrs:h}=e,g=_r(e),_,v;try{if(n.shapeFlag&4){let e=i||r,t=e;_=Y(l.call(t,e,u,d,p,f,m)),v=s}else{let e=t;_=Y(e.length>1?e(d,{attrs:s,slots:o,emit:c}):e(d,null)),v=t.props?s:uo(s)}}catch(t){as.length=0,Xn(t,e,1),_=J(K)}let y=_;if(v&&h!==!1){let e=Object.keys(v),{shapeFlag:t}=y;e.length&&t&7&&(a&&e.some(x)&&(v=fo(v,a)),y=xs(y,v,!1,!0))}return n.dirs&&(y=xs(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition&&Xr(y,n.transition),_=y,_r(g),_}function lo(e,t=!0){let n;for(let t=0;t{let t;for(let n in e)(n===`class`||n===`style`||b(n))&&((t||={})[n]=e[n]);return t},fo=(e,t)=>{let n={};for(let r in e)(!x(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function po(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?mo(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(go),vo=e=>Object.getPrototypeOf(e)===go;function yo(e,t,n,r=!1){let i={},a=_o();for(let n in e.propsDefaults=Object.create(null),xo(e,t,i,a),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=r?i:an(i):e.type.props?e.props=i:e.props=a,e.attrs=a}function bo(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=z(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{c=!0;let[n,r]=wo(e,t,!0);S(o,n),r&&s.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!a&&!c)return A(e)&&r.set(e,_),_;if(E(a))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,Do=e=>E(e)?e.map(Y):[Y(e)],Oo=(e,t,n)=>{if(t._n)return t;let r=xr((...e)=>Do(t(...e)),n);return r._c=!1,r},ko=(e,t,n)=>{let r=e._ctx;for(let n in e){if(Eo(n))continue;let i=e[n];if(O(i))t[n]=Oo(n,i,r);else if(i!=null){let e=Do(i);t[n]=()=>e}}},Ao=(e,t)=>{let n=Do(t);e.slots.default=()=>n},jo=(e,t,n)=>{for(let r in t)(n||!Eo(r))&&(e[r]=t[r])},Mo=(e,t,n)=>{let r=e.slots=_o();if(e.vnode.shapeFlag&32){let e=t._;e?(jo(r,t,n),n&&ge(r,`_`,e,!0)):ko(t,r)}else t&&Ao(e,t)},No=(e,t,n)=>{let{vnode:r,slots:i}=e,a=!0,o=g;if(r.shapeFlag&32){let e=t._;e?n&&e===1?a=!1:jo(i,t,n):(a=!t.$stable,ko(t,i)),o=t}else t&&(Ao(e,t),o={default:1});if(a)for(let e in i)!Eo(e)&&o[e]==null&&delete i[e]},W=es;function Po(e){return Io(e)}function Fo(e){return Io(e,di)}function Io(e,t){let n=be();n.__VUE__=!0;let{insert:r,remove:i,patchProp:a,createElement:o,createText:s,createComment:c,setText:l,setElementText:u,parentNode:d,nextSibling:f,setScopeId:p=v,insertStaticContent:m}=e,h=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!ms(e,t)&&(r=pe(e),ue(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case rs:y(e,t,n,r);break;case K:b(e,t,n,r);break;case is:e??x(t,n,r,o);break;case G:O(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?k(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,ge)}u!=null&&i?ri(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&ri(e.ref,null,a,e,!0)},y=(e,t,n,i)=>{if(e==null)r(t.el=s(t.children),n,i);else{let n=t.el=e.el;t.children!==e.children&&l(n,t.children)}},b=(e,t,n,i)=>{e==null?r(t.el=c(t.children||``),n,i):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=m(e.children,t,n,r,e.el,e.anchor)},S=({el:e,anchor:t},n,i)=>{let a;for(;e&&e!==t;)a=f(e),r(e,n,i),e=a;r(t,n,i)},C=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=f(e),i(e),e=n;i(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)T(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ee(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},T=(e,t,n,i,s,c,l,d)=>{let f,p,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(f=e.el=o(e.type,c,m&&m.is,m),h&8?u(f,e.children):h&16&&D(e.children,f,null,i,s,Lo(e,c),l,d),_&&Cr(e,null,i,`created`),E(f,e,e.scopeId,l,i),m){for(let e in m)e!==`value`&&!le(e)&&a(f,e,null,m[e],c,i);`value`in m&&a(f,`value`,null,m.value,c),(p=m.onVnodeBeforeMount)&&X(p,i,e)}_&&Cr(e,null,i,`beforeMount`);let v=zo(s,g);v&&g.beforeEnter(f),r(f,t,n),((p=m&&m.onVnodeMounted)||v||_)&&W(()=>{p&&X(p,i,e),v&&g.enter(f),_&&Cr(e,null,i,`mounted`)},s)},E=(e,t,n,r,i)=>{if(n&&p(e,n),r)for(let t=0;t{for(let l=c;l{let c=t.el=e.el,{patchFlag:l,dynamicChildren:d,dirs:f}=t;l|=e.patchFlag&16;let p=e.props||g,m=t.props||g,h;if(n&&Ro(n,!1),(h=m.onVnodeBeforeUpdate)&&X(h,n,t,e),f&&Cr(t,e,n,`beforeUpdate`),n&&Ro(n,!0),(p.innerHTML&&m.innerHTML==null||p.textContent&&m.textContent==null)&&u(c,``),d?te(e.dynamicChildren,d,c,n,r,Lo(t,i),o):s||ae(e,t,c,null,n,r,Lo(t,i),o,!1),l>0){if(l&16)ne(c,p,m,n,i);else if(l&2&&p.class!==m.class&&a(c,`class`,null,m.class,i),l&4&&a(c,`style`,p.style,m.style,i),l&8){let e=t.dynamicProps;for(let t=0;t{h&&X(h,n,t,e),f&&Cr(t,e,n,`updated`)},r)},te=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(t!==n){if(t!==g)for(let o in t)!le(o)&&!(o in n)&&a(e,o,t[o],null,i,r);for(let o in n){if(le(o))continue;let s=n[o],c=t[o];s!==c&&o!==`value`&&a(e,o,c,s,i,r)}`value`in n&&a(e,`value`,t.value,n.value,i)}},O=(e,t,n,i,a,o,c,l,u)=>{let d=t.el=e?e.el:s(``),f=t.anchor=e?e.anchor:s(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(l=l?l.concat(h):h),e==null?(r(d,n,i),r(f,n,i),D(t.children||[],n,f,a,o,c,l,u)):p>0&&p&64&&m&&e.dynamicChildren?(te(e.dynamicChildren,m,n,a,o,c,l),(t.key!=null||a&&t===a.subTree)&&Bo(e,t,!0)):ae(e,t,n,f,a,o,c,l,u)},k=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):re(t,n,r,i,a,o,c):A(e,t,c)},re=(e,t,n,r,i,a,o)=>{let s=e.component=As(e,r,i);if(Ei(e)&&(s.ctx.renderer=ge),Ls(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,j,o),!e.el){let r=s.subTree=J(K);b(null,r,t,n),e.placeholder=r.el}}else j(s,e,t,n,i,a,o)},A=(e,t,n)=>{let r=t.component=e.component;if(po(e,t,n))if(r.asyncDep&&!r.asyncResolved){ie(r,t,n);return}else r.next=t,r.update();else t.el=e.el,r.vnode=t},j=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:c,vnode:l}=e;{let n=Ho(e);if(n){t&&(t.el=l.el,ie(e,t,o)),n.asyncDep.then(()=>{e.isUnmounted||s()});return}}let u=t,f;Ro(e,!1),t?(t.el=l.el,ie(e,t,o)):t=l,n&&he(n),(f=t.props&&t.props.onVnodeBeforeUpdate)&&X(f,c,t,l),Ro(e,!0);let p=co(e),m=e.subTree;e.subTree=p,h(m,p,d(m.el),pe(m),e,i,a),t.el=p.el,u===null&&ho(e,p.el),r&&W(r,i),(f=t.props&&t.props.onVnodeUpdated)&&W(()=>X(f,c,t,l),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=Ci(t);if(Ro(e,!1),l&&he(l),!m&&(o=c&&c.onVnodeBeforeMount)&&X(o,d,t),Ro(e,!0),s&&ve){let t=()=>{e.subTree=co(e),ve(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._def.shadowRoot!==!1&&f.ce._injectChildStyle(p);let o=e.subTree=co(e);h(null,o,n,r,e,i,a),t.el=o.el}if(u&&W(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;W(()=>X(o,d,e),i)}(t.shapeFlag&256||d&&Ci(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&W(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Ge(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>or(u),Ro(e,!0),l()},ie=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,bo(e,t.props,r,n),No(e,t.children,n),ct(),lr(e),lt()},ae=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,d=e?e.shapeFlag:0,f=t.children,{patchFlag:p,shapeFlag:m}=t;if(p>0){if(p&128){se(l,f,n,r,i,a,o,s,c);return}else if(p&256){oe(l,f,n,r,i,a,o,s,c);return}}m&8?(d&16&&N(l,i,a),f!==l&&u(n,f)):d&16?m&16?se(l,f,n,r,i,a,o,s,c):N(l,i,a,!0):(d&8&&u(n,``),m&16&&D(f,n,r,i,a,o,s,c))},oe=(e,t,n,r,i,a,o,s,c)=>{e||=_,t||=_;let l=e.length,u=t.length,d=Math.min(l,u),f;for(f=0;fu?N(e,i,a,!0,!1,d):D(t,n,r,i,a,o,s,c,d)},se=(e,t,n,r,i,a,o,s,c)=>{let l=0,u=t.length,d=e.length-1,f=u-1;for(;l<=d&&l<=f;){let r=e[l],u=t[l]=c?Ts(t[l]):Y(t[l]);if(ms(r,u))h(r,u,n,null,i,a,o,s,c);else break;l++}for(;l<=d&&l<=f;){let r=e[d],l=t[f]=c?Ts(t[f]):Y(t[f]);if(ms(r,l))h(r,l,n,null,i,a,o,s,c);else break;d--,f--}if(l>d){if(l<=f){let e=f+1,d=ef)for(;l<=d;)ue(e[l],i,a,!0),l++;else{let p=l,m=l,g=new Map;for(l=m;l<=f;l++){let e=t[l]=c?Ts(t[l]):Y(t[l]);e.key!=null&&g.set(e.key,l)}let v,y=0,b=f-m+1,x=!1,S=0,C=Array(b);for(l=0;l=b){ue(r,i,a,!0);continue}let u;if(r.key!=null)u=g.get(r.key);else for(v=m;v<=f;v++)if(C[v-m]===0&&ms(r,t[v])){u=v;break}u===void 0?ue(r,i,a,!0):(C[u-m]=l+1,u>=S?S=u:x=!0,h(r,t[u],n,null,i,a,o,s,c),y++)}let w=x?Vo(C):_;for(v=w.length-1,l=b-1;l>=0;l--){let e=m+l,d=t[e],f=t[e+1],p=e+1{let{el:s,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){ce(e.component.subTree,t,n,a);return}if(d&128){e.suspense.move(t,n,a);return}if(d&64){c.move(e,t,n,ge);return}if(c===G){r(s,t,n);for(let e=0;el.enter(s),o);else{let{leave:a,delayLeave:o,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?i(s):r(s,t,n)},d=()=>{s._isLeaving&&s[Lr](!0),a(s,()=>{u(),c&&c()})};o?o(s,u,d):d()}else r(s,t,n)},ue=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p}=e;if(d===-2&&(i=!1),s!=null&&(ct(),ri(s,null,n,e,!0),lt()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let m=u&1&&f,h=!Ci(e),g;if(h&&(g=o&&o.onVnodeBeforeUnmount)&&X(g,t,e),u&6)fe(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}m&&Cr(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,ge,r):l&&!l.hasOnce&&(a!==G||d>0&&d&64)?N(l,t,n,!1,!0):(a===G&&d&384||!i&&u&16)&&N(c,t,n),r&&de(e)}(h&&(g=o&&o.onVnodeUnmounted)||m)&&W(()=>{g&&X(g,t,e),m&&Cr(e,null,t,`unmounted`)},n)},de=e=>{let{type:t,el:n,anchor:r,transition:a}=e;if(t===G){M(n,r);return}if(t===is){C(e);return}let o=()=>{i(n),a&&!a.persisted&&a.afterLeave&&a.afterLeave()};if(e.shapeFlag&1&&a&&!a.persisted){let{leave:t,delayLeave:r}=a,i=()=>t(n,o);r?r(e.el,o,i):i()}else o()},M=(e,t)=>{let n;for(;e!==t;)n=f(e),i(e),e=n;i(t)},fe=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;Uo(c),Uo(l),r&&he(r),i.stop(),a&&(a.flags|=8,ue(o,e,t,n)),s&&W(s,t),W(()=>{e.isUnmounted=!0},t)},N=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return pe(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=f(e.anchor||e.el),n=t&&t[wr];return n?f(n):t},me=!1,P=(e,t,n)=>{e==null?t._vnode&&ue(t._vnode,null,null,!0):h(t._vnode||null,e,t,null,null,null,n),t._vnode=e,me||=(me=!0,lr(),ur(),!1)},ge={p:h,um:ue,m:ce,r:de,mt:re,mc:D,pc:ae,pbc:te,n:pe,o:e},_e,ve;return t&&([_e,ve]=t(ge)),{render:P,hydrate:_e,createApp:Ha(P,_e)}}function Lo({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function Ro({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function zo(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Bo(e,t,n=!1){let r=e.children,i=t.children;if(E(r)&&E(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-- >0;)n[a]=o,o=t[o];return n}function Ho(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ho(t)}function Uo(e){if(e)for(let t=0;te.__isSuspense,Go=0,Ko={name:`Suspense`,__isSuspense:!0,process(e,t,n,r,i,a,o,s,c,l){if(e==null)Jo(t,n,r,i,a,o,s,c,l);else{if(a&&a.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Yo(e,t,n,r,i,o,s,c,l)}},hydrate:Zo,normalize:Qo};function qo(e,t){let n=e.props&&e.props[t];O(n)&&n()}function Jo(e,t,n,r,i,a,o,s,c){let{p:l,o:{createElement:u}}=c,d=u(`div`),f=e.suspense=Xo(e,i,r,t,d,n,a,o,s,c);l(null,f.pendingBranch=e.ssContent,d,null,r,f,a,o),f.deps>0?(qo(e,`onPending`),qo(e,`onFallback`),l(null,e.ssFallback,t,n,r,null,a,o),ts(f,e.ssFallback)):f.resolve(!1,!0)}function Yo(e,t,n,r,i,a,o,s,{p:c,um:l,o:{createElement:u}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let f=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:h,isInFallback:g,isHydrating:_}=d;if(h)d.pendingBranch=f,ms(h,f)?(c(h,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():g&&(_||(c(m,p,n,r,i,null,a,o,s),ts(d,p)))):(d.pendingId=Go++,_?(d.isHydrating=!1,d.activeBranch=h):l(h,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u(`div`),g?(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():(c(m,p,n,r,i,null,a,o,s),ts(d,p))):m&&ms(m,f)?(c(m,f,n,r,i,d,a,o,s),d.resolve(!0)):(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0&&d.resolve()));else if(m&&ms(m,f))c(m,f,n,r,i,d,a,o,s),ts(d,f);else if(qo(t,`onPending`),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=Go++,c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(p)},e):e===0&&d.fallback(p)}}function Xo(e,t,n,r,i,a,o,s,c,l,u=!1){let{p:d,m:f,um:p,n:m,o:{parentNode:h,remove:g}}=l,_,v=ns(e);v&&t&&t.pendingBranch&&(_=t.pendingId,t.deps++);let y=e.props?ve(e.props.timeout):void 0,b=a,x={vnode:e,parent:t,parentComponent:n,namespace:o,container:r,hiddenContainer:i,deps:0,pendingId:Go++,timeout:typeof y==`number`?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:r,activeBranch:i,pendingBranch:o,pendingId:s,effects:c,parentComponent:l,container:u,isInFallback:d}=x,g=!1;x.isHydrating?x.isHydrating=!1:e||(g=i&&o.transition&&o.transition.mode===`out-in`,g&&(i.transition.afterLeave=()=>{s===x.pendingId&&(f(o,u,a===b?m(i):a,0),cr(c),d&&r.ssFallback&&(r.ssFallback.el=null))}),i&&(h(i.el)===u&&(a=m(i)),p(i,l,x,!0),!g&&d&&r.ssFallback&&W(()=>r.ssFallback.el=null,x)),g||f(o,u,a,0)),ts(x,o),x.pendingBranch=null,x.isInFallback=!1;let y=x.parent,S=!1;for(;y;){if(y.pendingBranch){y.effects.push(...c),S=!0;break}y=y.parent}!S&&!g&&cr(c),x.effects=[],v&&t&&t.pendingBranch&&_===t.pendingId&&(t.deps--,t.deps===0&&!n&&t.resolve()),qo(r,`onResolve`)},fallback(e){if(!x.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:r,container:i,namespace:a}=x;qo(t,`onFallback`);let o=m(n),l=()=>{x.isInFallback&&(d(null,e,i,o,r,null,a,s,c),ts(x,e))},u=e.transition&&e.transition.mode===`out-in`;u&&(n.transition.afterLeave=l),x.isInFallback=!0,p(n,r,null,!0),u||l()},move(e,t,n){x.activeBranch&&f(x.activeBranch,e,t,n),x.container=e},next(){return x.activeBranch&&m(x.activeBranch)},registerDep(e,t,n){let r=!!x.pendingBranch;r&&x.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{Xn(t,e,0)}).then(a=>{if(e.isUnmounted||x.isUnmounted||x.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:s}=e;zs(e,a,!1),i&&(s.el=i);let c=!i&&e.subTree.el;t(e,s,h(i||e.subTree.el),i?null:m(e.subTree),x,o,n),c&&(s.placeholder=null,g(c)),ho(e,s.el),r&&--x.deps===0&&x.resolve()})},unmount(e,t){x.isUnmounted=!0,x.activeBranch&&p(x.activeBranch,n,e,t),x.pendingBranch&&p(x.pendingBranch,n,e,t)}};return x}function Zo(e,t,n,r,i,a,o,s,c){let l=t.suspense=Xo(t,r,n,e.parentNode,document.createElement(`div`),null,i,a,o,s,!0),u=c(e,l.pendingBranch=t.ssContent,n,l,a,o);return l.deps===0&&l.resolve(!1,!0),u}function Qo(e){let{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=$o(r?n.default:n),e.ssFallback=r?$o(n.fallback):J(K)}function $o(e){let t;if(O(e)){let n=cs&&e._c;n&&(e._d=!1,os()),e=e(),n&&(e._d=!0,t=q,ss())}return E(e)&&(e=lo(e)),e=Y(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(t=>t!==e)),e}function es(e,t){t&&t.pendingBranch?E(e)?t.effects.push(...e):t.effects.push(e):cr(e)}function ts(e,t){e.activeBranch=t;let{vnode:n,parentComponent:r}=e,i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;n.el=i,r&&r.subTree===n&&(r.vnode.el=i,ho(r,i))}function ns(e){let t=e.props&&e.props.suspensible;return t!=null&&t!==!1}var G=Symbol.for(`v-fgt`),rs=Symbol.for(`v-txt`),K=Symbol.for(`v-cmt`),is=Symbol.for(`v-stc`),as=[],q=null;function os(e=!1){as.push(q=e?null:[])}function ss(){as.pop(),q=as[as.length-1]||null}var cs=1;function ls(e,t=!1){cs+=e,e<0&&q&&t&&(q.hasOnce=!0)}function us(e){return e.dynamicChildren=cs>0?q||_:null,ss(),cs>0&&q&&q.push(e),e}function ds(e,t,n,r,i,a){return us(vs(e,t,n,r,i,a,!0))}function fs(e,t,n,r,i){return us(J(e,t,n,r,i,!0))}function ps(e){return e?e.__v_isVNode===!0:!1}function ms(e,t){return e.type===t.type&&e.key===t.key}function hs(e){}var gs=({key:e})=>e??null,_s=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:k(e)||B(e)||O(e)?{i:H,r:e,k:t,f:!!n}:e);function vs(e,t=null,n=null,r=0,i=null,a=e===G?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&gs(t),ref:t&&_s(t),scopeId:gr,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:H};return s?(Es(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=k(n)?8:16),cs>0&&!o&&q&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&q.push(c),c}var J=ys;function ys(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===Xi)&&(e=K),ps(e)){let r=xs(e,t,!0);return n&&Es(r,n),cs>0&&!a&&q&&(r.shapeFlag&6?q[q.indexOf(e)]=r:q.push(r)),r.patchFlag=-2,r}if(Ys(e)&&(e=e.__vccOpts),t){t=bs(t);let{class:e,style:n}=t;e&&!k(e)&&(t.class=De(e)),A(n)&&(dn(n)&&!E(n)&&(n=S({},n)),t.style=Se(n))}let o=k(e)?1:Wo(e)?128:Tr(e)?64:A(e)?4:O(e)?2:0;return vs(e,t,n,r,i,o,a,!0)}function bs(e){return e?dn(e)||vo(e)?S({},e):e:null}function xs(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?Ds(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&gs(l),ref:t&&t.ref?n&&a?E(a)?a.concat(_s(t)):[a,_s(t)]:_s(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==G?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&xs(e.ssContent),ssFallback:e.ssFallback&&xs(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Xr(u,c.clone(u)),u}function Ss(e=` `,t=0){return J(rs,null,e,t)}function Cs(e,t){let n=J(is,null,e);return n.staticCount=t,n}function ws(e=``,t=!1){return t?(os(),fs(K,null,e)):J(K,null,e)}function Y(e){return e==null||typeof e==`boolean`?J(K):E(e)?J(G,null,e.slice()):ps(e)?Ts(e):J(rs,null,String(e))}function Ts(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:xs(e)}function Es(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(E(t))n=16;else if(typeof t==`object`)if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Es(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;!r&&!vo(t)?t._ctx=H:r===3&&H&&(H.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else O(t)?(t={default:t,_ctx:H},n=32):(t=String(t),r&64?(n=16,t=[Ss(t)]):n=8);e.children=t,e.shapeFlag|=n}function Ds(...e){let t={};for(let n=0;nZ||H,js,Ms;{let e=be(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};js=t(`__VUE_INSTANCE_SETTERS__`,e=>Z=e),Ms=t(`__VUE_SSR_SETTERS__`,e=>Is=e)}var Ns=e=>{let t=Z;return js(e),e.scope.on(),()=>{e.scope.off(),js(t)}},Ps=()=>{Z&&Z.scope.off(),js(null)};function Fs(e){return e.vnode.shapeFlag&4}var Is=!1;function Ls(e,t=!1,n=!1){t&&Ms(t);let{props:r,children:i}=e.vnode,a=Fs(e);yo(e,r,a,t),Mo(e,i,n||t);let o=a?Rs(e,t):void 0;return t&&Ms(!1),o}function Rs(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,la);let{setup:r}=n;if(r){ct();let n=e.setupContext=r.length>1?Ks(e):null,i=Ns(e),a=Jn(r,e,0,[e.props,n]),o=j(a);if(lt(),i(),(o||e.sp)&&!Ci(e)&&ei(e),o){if(a.then(Ps,Ps),t)return a.then(n=>{zs(e,n,t)}).catch(t=>{Xn(t,e,0)});e.asyncDep=a}else zs(e,a,t)}else Ws(e,t)}function zs(e,t,n){O(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:A(t)&&(e.setupState=Cn(t)),Ws(e,n)}var Bs,Vs;function Hs(e){Bs=e,Vs=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,ua))}}var Us=()=>!Bs;function Ws(e,t,n){let r=e.type;if(!e.render){if(!t&&Bs&&!r.render){let t=r.template||ja(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:o}=r,s=S(S({isCustomElement:n,delimiters:a},i),o);r.render=Bs(t,s)}}e.render=r.render||v,Vs&&Vs(e)}{let t=Ns(e);ct();try{Da(e)}finally{lt(),t()}}}var Gs={get(e,t){return L(e,`get`,``),e[t]}};function Ks(e){return{attrs:new Proxy(e.attrs,Gs),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function qs(e){return e.exposed?e.exposeProxy||=new Proxy(Cn(fn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in sa)return sa[n](e)},has(e,t){return t in e||t in sa}}):e.proxy}function Js(e,t=!0){return O(e)?e.displayName||e.name:e.name||t&&e.__name}function Ys(e){return O(e)&&`__vccOpts`in e}var Xs=(e,t)=>Mn(e,t,Is);function Zs(e,t,n){try{ls(-1);let r=arguments.length;return r===2?A(t)&&!E(t)?ps(t)?J(e,null,[t]):J(e,t):J(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&ps(n)&&(n=[n]),J(e,t,n))}finally{ls(1)}}function Qs(){return;function e(t,n,r){let i=t[r];if(E(i)&&i.includes(n)||A(i)&&n in i||t.extends&&e(t.extends,n,r)||t.mixins&&t.mixins.some(t=>e(t,n,r)))return!0}}function $s(e,t,n,r){let i=n[r];if(i&&ec(i,e))return i;let a=t();return a.memo=e.slice(),a.cacheIndex=r,n[r]=a}function ec(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&q&&q.push(e),!0}var tc=`3.5.25`,nc=v,rc=qn,ic=pr,ac=hr,oc={createComponentInstance:As,setupComponent:Ls,renderComponentRoot:co,setCurrentRenderingInstance:_r,isVNode:ps,normalizeVNode:Y,getComponentPublicInstance:qs,ensureValidVNode:ia,pushWarningContext:Un,popWarningContext:Wn},sc=void 0,cc=typeof window<`u`&&window.trustedTypes;if(cc)try{sc=cc.createPolicy(`vue`,{createHTML:e=>e})}catch{}var lc=sc?e=>sc.createHTML(e):e=>e,uc=`http://www.w3.org/2000/svg`,dc=`http://www.w3.org/1998/Math/MathML`,fc=typeof document<`u`?document:null,pc=fc&&fc.createElement(`template`),mc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?fc.createElementNS(uc,e):t===`mathml`?fc.createElementNS(dc,e):n?fc.createElement(e,{is:n}):fc.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>fc.createTextNode(e),createComment:e=>fc.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>fc.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{pc.innerHTML=lc(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=pc.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},hc=`transition`,gc=`animation`,_c=Symbol(`_vtc`),vc={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},yc=S({},Vr,vc),bc=(e=>(e.displayName=`Transition`,e.props=yc,e))((e,{slots:t})=>Zs(Gr,Cc(e),t)),xc=(e,t=[])=>{E(e)?e.forEach(e=>e(...t)):e&&e(...t)},Sc=e=>e?E(e)?e.some(e=>e.length>1):e.length>1:!1;function Cc(e){let t={};for(let n in e)n in vc||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:c=a,appearActiveClass:l=o,appearToClass:u=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=wc(i),h=m&&m[0],g=m&&m[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:y,onLeave:b,onLeaveCancelled:x,onBeforeAppear:C=_,onAppear:w=v,onAppearCancelled:T=y}=t,E=(e,t,n,r)=>{e._enterCancelled=r,Dc(e,t?u:s),Dc(e,t?l:o),n&&n()},D=(e,t)=>{e._isLeaving=!1,Dc(e,d),Dc(e,p),Dc(e,f),t&&t()},ee=e=>(t,n)=>{let i=e?w:v,o=()=>E(t,e,n);xc(i,[t,o]),Oc(()=>{Dc(t,e?c:a),Ec(t,e?u:s),Sc(i)||Ac(t,r,h,o)})};return S(t,{onBeforeEnter(e){xc(_,[e]),Ec(e,a),Ec(e,o)},onBeforeAppear(e){xc(C,[e]),Ec(e,c),Ec(e,l)},onEnter:ee(!1),onAppear:ee(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>D(e,t);Ec(e,d),e._enterCancelled?(Ec(e,f),Pc(e)):(Pc(e),Ec(e,f)),Oc(()=>{e._isLeaving&&(Dc(e,d),Ec(e,p),Sc(b)||Ac(e,r,g,n))}),xc(b,[e,n])},onEnterCancelled(e){E(e,!1,void 0,!0),xc(y,[e])},onAppearCancelled(e){E(e,!0,void 0,!0),xc(T,[e])},onLeaveCancelled(e){D(e),xc(x,[e])}})}function wc(e){if(e==null)return null;if(A(e))return[Tc(e.enter),Tc(e.leave)];{let t=Tc(e);return[t,t]}}function Tc(e){return ve(e)}function Ec(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[_c]||(e[_c]=new Set)).add(t)}function Dc(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[_c];n&&(n.delete(t),n.size||(e[_c]=void 0))}function Oc(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var kc=0;function Ac(e,t,n,r){let i=e._endId=++kc,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=jc(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${hc}Delay`),a=r(`${hc}Duration`),o=Mc(i,a),s=r(`${gc}Delay`),c=r(`${gc}Duration`),l=Mc(s,c),u=null,d=0,f=0;t===hc?o>0&&(u=hc,d=o,f=a.length):t===gc?l>0&&(u=gc,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?hc:gc:null,f=u?u===hc?a.length:c.length:0);let p=u===hc&&/\b(?:transform|all)(?:,|$)/.test(r(`${hc}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Mc(e,t){for(;e.lengthNc(t)+Nc(e[n])))}function Nc(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Pc(e){return(e?e.ownerDocument:document).body.offsetHeight}function Fc(e,t,n){let r=e[_c];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Ic=Symbol(`_vod`),Lc=Symbol(`_vsh`),Rc={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Ic]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):zc(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),zc(e,!0),r.enter(e)):r.leave(e,()=>{zc(e,!1)}):zc(e,t))},beforeUnmount(e,{value:t}){zc(e,t)}};function zc(e,t){e.style.display=t?e[Ic]:`none`,e[Lc]=!t}function Bc(){Rc.getSSRProps=({value:e})=>{if(!e)return{style:{display:`none`}}}}var Vc=Symbol(``);function Hc(e){let t=Q();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>Wc(e,n))},r=()=>{let r=e(t.proxy);t.ce?Wc(t.ce,r):Uc(t.subTree,r),n(r)};zi(()=>{cr(r)}),Ri(()=>{Qa(r,v,{flush:`post`});let e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),Hi(()=>e.disconnect())})}function Uc(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Uc(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Wc(e.el,t);else if(e.type===G)e.children.forEach(e=>Uc(e,t));else if(e.type===is){let{el:n,anchor:r}=e;for(;n&&(Wc(n,t),n!==r);)n=n.nextSibling}}function Wc(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=ze(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[Vc]=r}}var Gc=/(?:^|;)\s*display\s*:/;function Kc(e,t,n){let r=e.style,i=k(n),a=!1;if(n&&!i){if(t)if(k(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??Jc(r,t,``)}else for(let e in t)n[e]??Jc(r,e,``);for(let e in n)e===`display`&&(a=!0),Jc(r,e,n[e])}else if(i){if(t!==n){let e=r[Vc];e&&(n+=`;`+e),r.cssText=n,a=Gc.test(n)}}else t&&e.removeAttribute(`style`);Ic in e&&(e[Ic]=a?r.display:``,e[Lc]&&(r.display=`none`))}var qc=/\s*!important$/;function Jc(e,t,n){if(E(n))n.forEach(n=>Jc(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=Zc(e,t);qc.test(n)?e.setProperty(N(r),n.replace(qc,``),`important`):e[r]=n}}var Yc=[`Webkit`,`Moz`,`ms`],Xc={};function Zc(e,t){let n=Xc[t];if(n)return n;let r=M(t);if(r!==`filter`&&r in e)return Xc[t]=r;r=pe(r);for(let n=0;nsl||=(cl.then(()=>sl=0),Date.now());function ul(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;Yn(dl(e,n.value),t,5,[e])};return n.value=e,n.attached=ll(),n}function dl(e,t){if(E(t)){let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}else return t}var fl=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,pl=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?Fc(e,r,o):t===`style`?Kc(e,n,r):b(t)?x(t)||il(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):ml(e,t,r,o))?(el(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&$c(e,t,r,o,a,t!==`value`)):e._isVueCE&&(/[A-Z]/.test(t)||!k(r))?el(e,M(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),$c(e,t,r,o))};function ml(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&fl(t)&&O(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return fl(t)&&k(n)?!1:t in e}var hl={};function gl(e,t,n){let r=Qr(e,t);se(r)&&(r=S({},r,t));class i extends yl{constructor(e){super(r,e,n)}}return i.def=r,i}var _l=((e,t)=>gl(e,t,cu)),vl=typeof HTMLElement<`u`?HTMLElement:class{},yl=class e extends vl{constructor(e,t={},n=su){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==su?this._root=this.shadowRoot:e.shadowRoot===!1?this._root=this:(this.attachShadow(S({},e.shadowRootOptions,{mode:`open`})),this._root=this.shadowRoot)}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t&&=t.parentNode||t.host;)if(t instanceof e){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,ir(()=>{this._connected||(this._ob&&=(this._ob.disconnect(),null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&=(this._teleportTargets.clear(),void 0))})}_processMutations(e){for(let t of e)this._setAttr(t.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{this._resolved=!0,this._pendingResolve=void 0;let{props:n,styles:r}=e,i;if(n&&!E(n))for(let e in n){let t=n[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=ve(this._props[e])),(i||=Object.create(null))[M(e)]=!0)}this._numberProps=i,this._resolveProps(e),this.shadowRoot&&this._applyStyles(r),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then(t=>{t.configureApp=this._def.configureApp,e(this._def=t,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)T(this,e)||Object.defineProperty(this,e,{get:()=>bn(t[e])})}_resolveProps(e){let{props:t}=e,n=E(t)?t:Object.keys(t||{});for(let e of Object.keys(this))e[0]!==`_`&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(M))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!this._patching)}})}_setAttr(e){if(e.startsWith(`data-v-`))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):hl,r=M(e);t&&this._numberProps&&this._numberProps[r]&&(n=ve(n)),this._setProp(r,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!1){if(t!==this._props[e]&&(this._dirty=!0,t===hl?delete this._props[e]:(this._props[e]=t,e===`key`&&this._app&&(this._app._ceVNode.key=t)),r&&this._instance&&this._update(),n)){let n=this._ob;n&&(this._processMutations(n.takeRecords()),n.disconnect()),t===!0?this.setAttribute(N(e),``):typeof t==`string`||typeof t==`number`?this.setAttribute(N(e),t+``):t||this.removeAttribute(N(e)),n&&n.observe(this,{attributes:!0})}}_update(){let e=this._createVNode();this._app&&(e.appContext=this._app._context),au(e,this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=J(this._def,S(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,se(t[0])?S({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),N(e)!==e&&t(N(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let r=document.createElement(`style`);n&&r.setAttribute(`nonce`,n),r.textContent=e[t],this.shadowRoot.prepend(r)}}_parseSlots(){let e=this._slots={},t;for(;t=this.firstChild;){let n=t.nodeType===1&&t.getAttribute(`slot`)||`default`;(e[n]||(e[n]=[])).push(t),this.removeChild(t)}}_renderSlots(){let e=this._getSlots(),t=this._instance.type.__scopeId;for(let n=0;n(delete e.props.mode,e))({name:`TransitionGroup`,props:S({},yc,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=Q(),r=zr(),i,a;return Bi(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!jl(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(Ol),i.forEach(kl);let r=i.filter(Al);Pc(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;Ec(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[Tl]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[Tl]=null,Dc(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let o=z(e),s=Cc(o),c=o.tag||G;if(i=[],a)for(let e=0;e{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=jc(r);return a.removeChild(r),o}var Ml=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return E(t)?e=>he(t,e):t};function Nl(e){e.target.composing=!0}function Pl(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Fl=Symbol(`_assign`);function Il(e,t,n){return t&&(e=e.trim()),n&&(e=_e(e)),e}var Ll={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Fl]=Ml(i);let a=r||i.props&&i.props.type===`number`;tl(e,t?`change`:`input`,t=>{t.target.composing||e[Fl](Il(e.value,n,a))}),(n||a)&&tl(e,`change`,()=>{e.value=Il(e.value,n,a)}),t||(tl(e,`compositionstart`,Nl),tl(e,`compositionend`,Pl),tl(e,`change`,Pl))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Fl]=Ml(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?_e(e.value):e.value,c=t??``;s!==c&&(document.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c))}},Rl={deep:!0,created(e,t,n){e[Fl]=Ml(n),tl(e,`change`,()=>{let t=e._modelValue,n=Ul(e),r=e.checked,i=e[Fl];if(E(t)){let e=Pe(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(ee(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(Wl(e,r))})},mounted:zl,beforeUpdate(e,t,n){e[Fl]=Ml(n),zl(e,t,n)}};function zl(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(E(t))i=Pe(t,r.props.value)>-1;else if(ee(t))i=t.has(r.props.value);else{if(t===n)return;i=Ne(t,Wl(e,!0))}e.checked!==i&&(e.checked=i)}var Bl={created(e,{value:t},n){e.checked=Ne(t,n.props.value),e[Fl]=Ml(n),tl(e,`change`,()=>{e[Fl](Ul(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[Fl]=Ml(r),t!==n&&(e.checked=Ne(t,r.props.value))}},Vl={deep:!0,created(e,{value:t,modifiers:{number:n}},r){let i=ee(t);tl(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?_e(Ul(e)):Ul(e));e[Fl](e.multiple?i?new Set(t):t:t[0]),e._assigning=!0,ir(()=>{e._assigning=!1})}),e[Fl]=Ml(r)},mounted(e,{value:t}){Hl(e,t)},beforeUpdate(e,t,n){e[Fl]=Ml(n)},updated(e,{value:t}){e._assigning||Hl(e,t)}};function Hl(e,t){let n=e.multiple,r=E(t);if(!(n&&!r&&!ee(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):a.selected=Pe(t,o)>-1}else a.selected=t.has(o);else if(Ne(Ul(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Ul(e){return`_value`in e?e._value:e.value}function Wl(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Gl={created(e,t,n){ql(e,t,n,null,`created`)},mounted(e,t,n){ql(e,t,n,null,`mounted`)},beforeUpdate(e,t,n,r){ql(e,t,n,r,`beforeUpdate`)},updated(e,t,n,r){ql(e,t,n,r,`updated`)}};function Kl(e,t){switch(e){case`SELECT`:return Vl;case`TEXTAREA`:return Ll;default:switch(t){case`checkbox`:return Rl;case`radio`:return Bl;default:return Ll}}}function ql(e,t,n,r,i){let a=Kl(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,r)}function Jl(){Ll.getSSRProps=({value:e})=>({value:e}),Bl.getSSRProps=({value:e},t)=>{if(t.props&&Ne(t.props.value,e))return{checked:!0}},Rl.getSSRProps=({value:e},t)=>{if(E(e)){if(t.props&&Pe(e,t.props.value)>-1)return{checked:!0}}else if(ee(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Gl.getSSRProps=(e,t)=>{if(typeof t.type!=`string`)return;let n=Kl(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}var Yl=[`ctrl`,`shift`,`alt`,`meta`],Xl={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>Yl.some(n=>e[`${n}Key`]&&!t.includes(n))},Zl=(e,t)=>{let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=N(n.key);if(t.some(e=>e===r||Ql[e]===r))return e(n)}))},eu=S({patchProp:pl},mc),tu,nu=!1;function ru(){return tu||=Po(eu)}function iu(){return tu=nu?tu:Fo(eu),nu=!0,tu}var au=((...e)=>{ru().render(...e)}),ou=((...e)=>{iu().hydrate(...e)}),su=((...e)=>{let t=ru().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=uu(e);if(!r)return;let i=t._component;!O(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,lu(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t}),cu=((...e)=>{let t=iu().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=uu(e);if(t)return n(t,!0,lu(t))},t});function lu(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function uu(e){return k(e)?document.querySelector(e):e}var du=!1,fu=()=>{du||(du=!0,Jl(),Bc())},pu=e({BaseTransition:()=>Gr,BaseTransitionPropsValidators:()=>Vr,Comment:()=>K,DeprecationTypes:()=>null,EffectScope:()=>Be,ErrorCodes:()=>Kn,ErrorTypeStrings:()=>rc,Fragment:()=>G,KeepAlive:()=>Di,ReactiveEffect:()=>Ge,Static:()=>is,Suspense:()=>Ko,Teleport:()=>Pr,Text:()=>rs,TrackOpTypes:()=>Nn,Transition:()=>bc,TransitionGroup:()=>Dl,TriggerOpTypes:()=>Pn,VueElement:()=>yl,assertNumber:()=>Gn,callWithAsyncErrorHandling:()=>Yn,callWithErrorHandling:()=>Jn,camelize:()=>M,capitalize:()=>pe,cloneVNode:()=>xs,compatUtils:()=>null,compile:()=>mu,computed:()=>Xs,createApp:()=>su,createBlock:()=>fs,createCommentVNode:()=>ws,createElementBlock:()=>ds,createElementVNode:()=>vs,createHydrationRenderer:()=>Fo,createPropsRestProxy:()=>wa,createRenderer:()=>Po,createSSRApp:()=>cu,createSlots:()=>na,createStaticVNode:()=>Cs,createTextVNode:()=>Ss,createVNode:()=>J,customRef:()=>Tn,defineAsyncComponent:()=>wi,defineComponent:()=>Qr,defineCustomElement:()=>gl,defineEmits:()=>fa,defineExpose:()=>pa,defineModel:()=>ga,defineOptions:()=>ma,defineProps:()=>da,defineSSRCustomElement:()=>_l,defineSlots:()=>ha,devtools:()=>ic,effect:()=>it,effectScope:()=>Ve,getCurrentInstance:()=>Q,getCurrentScope:()=>He,getCurrentWatcher:()=>Rn,getTransitionRawChildren:()=>Zr,guardReactiveProps:()=>bs,h:()=>Zs,handleError:()=>Xn,hasInjectionContext:()=>Ka,hydrate:()=>ou,hydrateOnIdle:()=>_i,hydrateOnInteraction:()=>xi,hydrateOnMediaQuery:()=>bi,hydrateOnVisible:()=>yi,initCustomFormatter:()=>Qs,initDirectivesForSSR:()=>fu,inject:()=>Ga,isMemoSame:()=>ec,isProxy:()=>dn,isReactive:()=>ln,isReadonly:()=>un,isRef:()=>B,isRuntimeOnly:()=>Us,isShallow:()=>R,isVNode:()=>ps,markRaw:()=>fn,mergeDefaults:()=>Sa,mergeModels:()=>Ca,mergeProps:()=>Ds,nextTick:()=>ir,nodeOps:()=>mc,normalizeClass:()=>De,normalizeProps:()=>Oe,normalizeStyle:()=>Se,onActivated:()=>ki,onBeforeMount:()=>Li,onBeforeUnmount:()=>Vi,onBeforeUpdate:()=>zi,onDeactivated:()=>Ai,onErrorCaptured:()=>Ki,onMounted:()=>Ri,onRenderTracked:()=>Gi,onRenderTriggered:()=>Wi,onScopeDispose:()=>Ue,onServerPrefetch:()=>Ui,onUnmounted:()=>Hi,onUpdated:()=>Bi,onWatcherCleanup:()=>zn,openBlock:()=>os,patchProp:()=>pl,popScopeId:()=>yr,provide:()=>Wa,proxyRefs:()=>Cn,pushScopeId:()=>vr,queuePostFlushCb:()=>cr,reactive:()=>rn,readonly:()=>on,ref:()=>hn,registerRuntimeCompiler:()=>Hs,render:()=>au,renderList:()=>ta,renderSlot:()=>ra,resolveComponent:()=>Yi,resolveDirective:()=>Qi,resolveDynamicComponent:()=>Zi,resolveFilter:()=>null,resolveTransitionHooks:()=>qr,setBlockTracking:()=>ls,setDevtoolsHook:()=>ac,setTransitionHooks:()=>Xr,shallowReactive:()=>an,shallowReadonly:()=>sn,shallowRef:()=>gn,ssrContextKey:()=>qa,ssrUtils:()=>oc,stop:()=>at,toDisplayString:()=>Ie,toHandlerKey:()=>me,toHandlers:()=>aa,toRaw:()=>z,toRef:()=>kn,toRefs:()=>En,toValue:()=>xn,transformVNodeArgs:()=>hs,triggerRef:()=>yn,unref:()=>bn,useAttrs:()=>ya,useCssModule:()=>Sl,useCssVars:()=>Hc,useHost:()=>bl,useId:()=>$r,useModel:()=>no,useSSRContext:()=>Ja,useShadowRoot:()=>xl,useSlots:()=>va,useTemplateRef:()=>ti,useTransitionState:()=>zr,vModelCheckbox:()=>Rl,vModelDynamic:()=>Gl,vModelRadio:()=>Bl,vModelSelect:()=>Vl,vModelText:()=>Ll,vShow:()=>Rc,version:()=>tc,warn:()=>nc,watch:()=>Qa,watchEffect:()=>Ya,watchPostEffect:()=>Xa,watchSyncEffect:()=>Za,withAsyncContext:()=>Ta,withCtx:()=>xr,withDefaults:()=>_a,withDirectives:()=>Sr,withKeys:()=>$l,withMemo:()=>$s,withModifiers:()=>Zl,withScopeId:()=>br}),mu=()=>{};const hu=(e,t)=>{let n=o[e],r=n.costMultiplier**(t-1);return{metal:Math.floor(n.baseCost.metal*r),crystal:Math.floor(n.baseCost.crystal*r),deuterium:Math.floor(n.baseCost.deuterium*r),darkMatter:Math.floor(n.baseCost.darkMatter*r),energy:0}},gu=(e,t,n=0)=>{let r=o[e],i=r.baseTime*r.costMultiplier**+t,a=1-n/100;return Math.floor(i*a)},_u=(e,t,n)=>{let r=o[e];if(!r.requirements)return!0;for(let[e,a]of Object.entries(r.requirements))if(Object.values(m).includes(e)){if((t[e]||0){let r=Date.now();return{id:`research_${r}`,type:`technology`,itemType:e,targetLevel:t,startTime:r,endTime:r+n*1e3}},yu=(e,t,n,r)=>e.filter(e=>{if(n>=e.endTime){let n=t[e.itemType]||0,i=e.targetLevel||0;return t[e.itemType]=i,r&&i>n&&r(wu(e.itemType,n,i),`technology`,e.itemType,i),!1}return!0}),bu=e=>e.metal+e.crystal+e.deuterium,xu=e=>Math.floor(e/1e3),Su=(e,t)=>{e.points+=t},Cu=(e,t,n)=>{let r=0;for(let i=t+1;i<=n;i++){let t=bu(Du(e,i));r+=xu(t)}return r},wu=(e,t,n)=>{let r=0;for(let i=t+1;i<=n;i++){let t=bu(hu(e,i));r+=xu(t)}return r},Tu=(e,t)=>{let r=n[e];return xu(bu(r.cost))*t},Eu=(e,t)=>{let n=d[e];return xu(bu(n.cost))*t},Du=(e,t)=>{let n=c[e],r=n.costMultiplier**(t-1);return{metal:Math.floor(n.baseCost.metal*r),crystal:Math.floor(n.baseCost.crystal*r),deuterium:Math.floor(n.baseCost.deuterium*r),darkMatter:Math.floor(n.baseCost.darkMatter*r),energy:0}},Ou=(e,t,n=0)=>{let r=c[e],i=r.costMultiplier**(t-1),a=r.baseTime*i,o=1-n/100;return Math.floor(a*o)},ku=e=>{let t=0;return Object.entries(e.buildings).forEach(([e,n])=>{if(n>0){let r=c[e];t+=r.spaceUsage*n}}),t},Au=(e,t,n)=>{let r=c[e].requirements;if(!r)return!0;for(let[e,a]of Object.entries(r)){let r=a;if(Object.values(m).includes(e)){if((t.buildings[e]||0)ku(e)+c[t].spaceUsage<=e.maxSpace,Mu=(e,t,n)=>{let r=Date.now();return{id:`build_${r}`,type:`building`,itemType:e,targetLevel:t,startTime:r,endTime:r+n*1e3}},Nu=(e,t,n)=>{e.buildQueue=e.buildQueue.filter(r=>{if(t>=r.endTime){if(r.type===`building`){let t=e.buildings[r.itemType]||0,i=r.targetLevel||0;e.buildings[r.itemType]=i,n&&i>t&&n(Cu(r.itemType,t,i),`building`,r.itemType,i)}else if(r.type===`ship`){let t=r.itemType,i=r.quantity||0;e.fleet[t]=(e.fleet[t]||0)+i,n&&i>0&&n(Tu(t,i),`ship`,r.itemType,void 0,i)}else if(r.type===`defense`){let t=r.itemType,i=r.quantity||0;e.defense[t]=(e.defense[t]||0)+i,n&&i>0&&n(Eu(t,i),`defense`,r.itemType,void 0,i)}else if(r.type===`demolish`){let t=r.itemType,n=e.buildings[t]||0;e.buildings[t]=Math.max(0,n-1)}return!1}return!0})},Pu=(e,t)=>{let n=Du(e,t);return{metal:Math.floor(n.metal*.5),crystal:Math.floor(n.crystal*.5),deuterium:Math.floor(n.deuterium*.5),darkMatter:Math.floor(n.darkMatter*.5),energy:0}},Fu=(e,t,n=0)=>{let r=Ou(e,t,n);return Math.floor(r*.5)},Iu=(e,t,n)=>{let r=Date.now();return{id:`demolish_${r}`,type:`demolish`,itemType:e,targetLevel:t-1,startTime:r,endTime:r+n*1e3}},Lu=e=>l[e].cost,Ru=(e,t)=>e.active&&(!e.expiresAt||e.expiresAt>t),zu=(e,t)=>{let n=Date.now();return{type:e,active:!0,hiredAt:n,expiresAt:n+t*24*60*60*1e3}},Bu=e=>({type:e,active:!1}),Vu=(e,t,n)=>{let r=e.expiresAt&&e.expiresAt>n?e.expiresAt:n;return{...e,active:!0,expiresAt:r+t*24*60*60*1e3}},$=(e,t)=>{let n={buildingSpeedBonus:0,researchSpeedBonus:0,resourceProductionBonus:0,darkMatterProductionBonus:0,energyProductionBonus:0,fleetSpeedBonus:0,fuelConsumptionReduction:0,defenseBonus:0,additionalBuildQueue:0,additionalFleetSlots:0,storageCapacityBonus:0};return Object.values(e).forEach(e=>{if(Ru(e,t)){let t=l[e.type];Object.entries(t.benefits).forEach(([e,t])=>{t!==void 0&&(n[e]+=t)})}}),n},Hu=(e,t)=>{Object.values(e).forEach(e=>{e.active&&e.expiresAt&&e.expiresAt<=t&&(e.active=!1)})},Uu=(e,t=`Home Planet`)=>{let n={id:`planet1`,name:t,ownerId:e,position:{galaxy:1,system:1,position:1},resources:{metal:500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[s.LightFighter]:0,[s.HeavyFighter]:0,[s.Cruiser]:0,[s.Battleship]:0,[s.SmallCargo]:0,[s.LargeCargo]:0,[s.ColonyShip]:0,[s.Recycler]:0,[s.EspionageProbe]:0,[s.DarkMatterHarvester]:0,[s.Deathstar]:0},defense:{[r.RocketLauncher]:0,[r.LightLaser]:0,[r.HeavyLaser]:0,[r.GaussCannon]:0,[r.IonCannon]:0,[r.PlasmaTurret]:0,[r.SmallShieldDome]:0,[r.LargeShieldDome]:0,[r.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:a.baseStorage,isMoon:!1};return Object.values(m).forEach(e=>{n.buildings[e]=0}),n},Wu=(e,t,n=`Planet`)=>{let i={id:`npc_planet_${e}`,name:`${n} ${t.galaxy}:${t.system}:${t.position}`,ownerId:`npc_${e}`,position:t,resources:{metal:Math.floor(Math.random()*1e4)+5e3,crystal:Math.floor(Math.random()*5e3)+2e3,deuterium:Math.floor(Math.random()*2e3)+500,darkMatter:Math.floor(Math.random()*100),energy:0},buildings:{},fleet:{[s.LightFighter]:Math.floor(Math.random()*50),[s.HeavyFighter]:Math.floor(Math.random()*20),[s.Cruiser]:Math.floor(Math.random()*10),[s.Battleship]:Math.floor(Math.random()*5),[s.SmallCargo]:Math.floor(Math.random()*10),[s.LargeCargo]:Math.floor(Math.random()*5),[s.ColonyShip]:0,[s.Recycler]:0,[s.EspionageProbe]:0,[s.DarkMatterHarvester]:0,[s.Deathstar]:0},defense:{[r.RocketLauncher]:Math.floor(Math.random()*100),[r.LightLaser]:Math.floor(Math.random()*50),[r.HeavyLaser]:Math.floor(Math.random()*20),[r.GaussCannon]:Math.floor(Math.random()*10),[r.IonCannon]:Math.floor(Math.random()*10),[r.PlasmaTurret]:Math.floor(Math.random()*5),[r.SmallShieldDome]:Math.random()>.5?1:0,[r.LargeShieldDome]:Math.random()>.8?1:0,[r.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:a.baseStorage,isMoon:!1};return Object.values(m).forEach(e=>{i.buildings[e]=Math.floor(Math.random()*10)}),i},Gu=e=>{let n=e.metal+e.crystal;if(n{if(!e.isMoon)return 0;let n=e.buildings[m.LunarBase]||0;return t.baseSize+n*t.lunarBaseSpaceBonus},qu=(e,t)=>{if(e.isMoon)return 0;let n=f.baseSize,r=e.buildings[m.Terraformer]||0;return n+=r*f.terraformerSpaceBonus,n+=t*f.terraformingTechSpaceBonus,n},Ju=(e,t)=>{let n=e.buildings[m.SolarPlant]||0,r=1+(t.energyProductionBonus||0)/100;return n*50*1.1**n*r},Yu=e=>{let t=e.buildings[m.MetalMine]||0,n=e.buildings[m.CrystalMine]||0,r=e.buildings[m.DeuteriumSynthesizer]||0,i=t*10*1.1**t,a=n*10*1.1**n,o=r*15*1.1**r;return i+a+o},Xu=(e,t)=>{let n=e.buildings[m.MetalMine]||0,r=e.buildings[m.CrystalMine]||0,i=e.buildings[m.DeuteriumSynthesizer]||0,a=e.buildings[m.DarkMatterCollector]||0,o=1+(t.resourceProductionBonus||0)/100,s=1+(t.darkMatterProductionBonus||0)/100,c=Ju(e,{energyProductionBonus:t.energyProductionBonus}),l=e.resources.energy>0?1:0;return{metal:n*1500*1.5**n*o*l,crystal:r*1e3*1.5**r*o*l,deuterium:i*500*1.5**i*o*l,darkMatter:a*25*1.5**a*s,energy:c}},Zu=(e,t)=>{let n=e.buildings[m.MetalStorage]||0,r=e.buildings[m.CrystalStorage]||0,i=e.buildings[m.DeuteriumTank]||0,a=e.buildings[m.DarkMatterCollector]||0,o=e.buildings[m.SolarPlant]||0,s=1+(t||0)/100,c=1e4;return{metal:c*2**n*s,crystal:c*2**r*s,deuterium:c*2**i*s,darkMatter:1e3+a*100,energy:1e3+o*500}},Qu=(e,t,n)=>{let r=(t-e.lastUpdate)/1e3,i=Yu(e),a=Ju(e,{energyProductionBonus:n.energyProductionBonus});e.resources.energy+=a*r/3600;let o=Zu(e,n.storageCapacityBonus);e.resources.energy=Math.min(e.resources.energy,o.energy),e.resources.energy-=i*r/3600,e.resources.energy=Math.max(0,e.resources.energy);let s=Xu(e,{resourceProductionBonus:n.resourceProductionBonus,darkMatterProductionBonus:n.darkMatterProductionBonus,energyProductionBonus:n.energyProductionBonus});e.resources.metal+=s.metal*r/3600,e.resources.crystal+=s.crystal*r/3600,e.resources.deuterium+=s.deuterium*r/3600,e.resources.darkMatter+=s.darkMatter*r/3600,e.resources.metal=Math.min(e.resources.metal,o.metal),e.resources.crystal=Math.min(e.resources.crystal,o.crystal),e.resources.deuterium=Math.min(e.resources.deuterium,o.deuterium),e.resources.darkMatter=Math.min(e.resources.darkMatter,o.darkMatter),e.lastUpdate=t},$u=(e,t)=>e.metal>=t.metal&&e.crystal>=t.crystal&&e.deuterium>=t.deuterium&&e.darkMatter>=t.darkMatter,ed=(e,t)=>{e.metal-=t.metal,e.crystal-=t.crystal,e.deuterium-=t.deuterium,e.darkMatter-=t.darkMatter},td=(e,t)=>{e.metal+=t.metal,e.crystal+=t.crystal,e.deuterium+=t.deuterium,e.darkMatter+=t.darkMatter},nd=(e,t)=>{let n=e.buildings[m.MetalMine]||0,r=e.buildings[m.CrystalMine]||0,i=e.buildings[m.DeuteriumSynthesizer]||0,a=e.buildings[m.DarkMatterCollector]||0,o=e.buildings[m.SolarPlant]||0,s=e.resources.energy>0,c=s?1:0,l=n*1500*1.5**n,u=[];t.resourceProductionBonus>0&&u.push({name:`officers.resourceBonus`,value:t.resourceProductionBonus,type:`percentage`}),s||u.push({name:`resources.noEnergy`,value:-100,type:`percentage`});let d=l*(1+t.resourceProductionBonus/100)*c,f=r*1e3*1.5**r,p=[];t.resourceProductionBonus>0&&p.push({name:`officers.resourceBonus`,value:t.resourceProductionBonus,type:`percentage`}),s||p.push({name:`resources.noEnergy`,value:-100,type:`percentage`});let h=f*(1+t.resourceProductionBonus/100)*c,g=i*500*1.5**i,_=[];t.resourceProductionBonus>0&&_.push({name:`officers.resourceBonus`,value:t.resourceProductionBonus,type:`percentage`}),s||_.push({name:`resources.noEnergy`,value:-100,type:`percentage`});let v=g*(1+t.resourceProductionBonus/100)*c,y=a*25*1.5**a,b=[];t.darkMatterProductionBonus>0&&b.push({name:`officers.darkMatterBonus`,value:t.darkMatterProductionBonus,type:`percentage`});let x=y*(1+t.darkMatterProductionBonus/100),S=o*50*1.1**o,C=[];t.energyProductionBonus>0&&C.push({name:`officers.energyBonus`,value:t.energyProductionBonus,type:`percentage`});let w=S*(1+t.energyProductionBonus/100);return{metal:{baseProduction:l,buildingLevel:n,buildingName:`buildings.metalMine`,bonuses:u,finalProduction:d},crystal:{baseProduction:f,buildingLevel:r,buildingName:`buildings.crystalMine`,bonuses:p,finalProduction:h},deuterium:{baseProduction:g,buildingLevel:i,buildingName:`buildings.deuteriumSynthesizer`,bonuses:_,finalProduction:v},darkMatter:{baseProduction:y,buildingLevel:a,buildingName:`buildings.darkMatterCollector`,bonuses:b,finalProduction:x},energy:{baseProduction:S,buildingLevel:o,buildingName:`buildings.solarPlant`,bonuses:C,finalProduction:w}}},rd=e=>{let t=e.buildings[m.MetalMine]||0,n=e.buildings[m.CrystalMine]||0,r=e.buildings[m.DeuteriumSynthesizer]||0,i=t*10*1.1**t,a=n*10*1.1**n,o=r*15*1.1**r;return{metalMine:{buildingLevel:t,buildingName:`buildings.metalMine`,consumption:i},crystalMine:{buildingLevel:n,buildingName:`buildings.crystalMine`,consumption:a},deuteriumSynthesizer:{buildingLevel:r,buildingName:`buildings.deuteriumSynthesizer`,consumption:o},total:i+a+o}},id=(e,t=`Commander`)=>{let n={id:e,name:t,planets:[],technologies:{},officers:{},researchQueue:[],fleetMissions:[],battleReports:[],spyReports:[],points:0};return Object.values(i).forEach(e=>{n.technologies[e]=0}),Object.values(u).forEach(e=>{n.officers[e]=Bu(e)}),n},ad=e=>e.length===0,od=(e,t,n=10)=>{let r=[];for(let e=1;e<=n;e++)r.push({position:e,planet:null});return r},sd=()=>({galaxy:Math.floor(Math.random()*9)+1,system:Math.floor(Math.random()*10)+1,position:Math.floor(Math.random()*10)+1}),cd=(e,t,n)=>`${e}:${t}:${n}`,ld=(e,t)=>{let n=$(e.officers,t),r=(t,n,r,i,a)=>{Su(e,t)};return e.planets.forEach(e=>{Qu(e,t,n)}),e.planets.forEach(n=>{Nu(n,t,r),n.isMoon?n.maxSpace=Ku(n):n.maxSpace=qu(n,e.technologies[i.TerraformingTechnology]||0)}),{updatedResearchQueue:yu(e.researchQueue,e.technologies,t,r)}},ud=(e,t)=>{Hu(e,t)},dd=(e,t)=>{let n={};if(e.requirements&&Object.assign(n,e.requirements),e.levelRequirements){let r=Object.keys(e.levelRequirements).map(Number).filter(e=>e<=t).sort((e,t)=>e-t);for(let t of r){let r=e.levelRequirements[t];if(r)for(let[e,t]of Object.entries(r)){let r=n[e]||0;n[e]=Math.max(r,t)}}}return n},fd=(e,t,n)=>{if(!e||!n)return!0;for(let[r,a]of Object.entries(n))if(Object.values(m).includes(r)){if((e.buildings[r]||0)Xu(e,$(t,Date.now())),md=(e,t)=>Zu(e,$(t,Date.now()).storageCapacityBonus),hd=(e,t=0)=>{let n=e.buildings[m.NaniteFactory]||0;return Math.min(1+n+t,10)},gd=e=>{let t=e[i.ComputerTechnology]||0;return Math.min(1+t,10)},_d=(e=0)=>Math.min(1+e,10),vd=(e,t,n,r)=>{let i=Du(t,(e.buildings[t]||0)+1),a=c[t];if(a.planetOnly&&e.isMoon)return{valid:!1,reason:`errors.planetOnly`};if(a.moonOnly&&!e.isMoon)return{valid:!1,reason:`errors.moonOnly`};let o=hd(e,$(r,Date.now()).additionalBuildQueue);return e.buildQueue.length>=o?{valid:!1,reason:`errors.buildQueueFull`}:ju(e,t)?$u(e.resources,i)?Au(t,e,n)?{valid:!0}:{valid:!1,reason:`errors.requirementsNotMet`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.insufficientSpace`}},yd=(e,t,n)=>{let r=(e.buildings[t]||0)+1,i=Du(t,r),a=Ou(t,r,$(n,Date.now()).buildingSpeedBonus);return ed(e.resources,i),Mu(t,r,a)},bd=(e,t)=>{let n=Du(t.itemType,t.targetLevel||1);return{metal:Math.floor(n.metal*.5),crystal:Math.floor(n.crystal*.5),deuterium:Math.floor(n.deuterium*.5),darkMatter:Math.floor(n.darkMatter*.5),energy:0}},xd=(e,t)=>{let n=e.findIndex(e=>e.id===t);return n===-1?{item:null,index:-1}:{item:e[n]||null,index:n}},Sd=(e,t,n)=>{if((e.buildings[t]||0)<=0)return{valid:!1,reason:`errors.buildingLevelZero`};let r=hd(e,$(n,Date.now()).additionalBuildQueue);return e.buildQueue.length>=r?{valid:!1,reason:`errors.buildQueueFull`}:{valid:!0}},Cd=(e,t,n)=>{let r=e.buildings[t]||0,i=Fu(t,r,$(n,Date.now()).buildingSpeedBonus),a=Pu(t,r);return e.resources.metal+=a.metal,e.resources.crystal+=a.crystal,e.resources.deuterium+=a.deuterium,e.resources.darkMatter+=a.darkMatter,Iu(t,r,i)},wd=(e,t,n,r)=>{let i=hu(t,(n[t]||0)+1),a=gd(n);return r.length>=a?{valid:!1,reason:`errors.researchQueueFull`}:_u(t,e.buildings,n)?$u(e.resources,i)?{valid:!0}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},Td=(e,t,n,r)=>{let i=n+1,a=hu(t,i),o=gu(t,n,$(r,Date.now()).researchSpeedBonus);return ed(e.resources,a),{queueItem:vu(t,i,o)}},Ed=e=>{let t=hu(e.itemType,e.targetLevel||1);return{metal:Math.floor(t.metal*.5),crystal:Math.floor(t.crystal*.5),deuterium:Math.floor(t.deuterium*.5),darkMatter:Math.floor(t.darkMatter*.5),energy:0}};function Dd(e){return new Worker(``+new URL(`battle.worker-CNO8oZzx.js`,import.meta.url).href,{name:e?.name})}var Od=e=>{if(typeof e!=`object`||!e)return e;let t=z(e);if(Array.isArray(t))return t.map(e=>Od(e));if(t&&typeof t==`object`){let e={};for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=Od(t[n]));return e}return t};const kd=new class{constructor(){this.battleWorker=null,this.pendingTasks=new Map,this.messageIdCounter=0,this.defaultTimeout=1e4}initBattleWorker(){this.battleWorker||(this.battleWorker=new Dd,this.setupWorkerHandlers(this.battleWorker,`Battle`))}setupWorkerHandlers(e,t){e.onmessage=e=>{let{id:t,success:n,data:r,error:i}=e.data,a=this.pendingTasks.get(t);if(!a){console.warn(`[WorkerManager] No pending task found for message ID: ${t}`);return}a.timeout&&clearTimeout(a.timeout),this.pendingTasks.delete(t),n?a.resolve(r):a.reject(Error(i||`Worker task failed`))},e.onerror=e=>{console.error(`[WorkerManager] ${t} worker error:`,e);for(let e of this.pendingTasks.values())e.timeout&&clearTimeout(e.timeout),e.reject(Error(`${t} worker crashed`));this.pendingTasks.clear(),t===`Battle`&&(this.battleWorker=null)}}generateMessageId(){return`msg_${Date.now()}_${++this.messageIdCounter}`}getWorkerByType(e){if(e===p.SIMULATE_BATTLE||e===p.CALCULATE_PLUNDER||e===p.CALCULATE_DEBRIS)return this.initBattleWorker(),this.battleWorker;throw Error(`Unknown message type: ${e}`)}sendMessage(e,t,n=this.defaultTimeout){let r=this.getWorkerByType(e);if(!r)return Promise.reject(Error(`Worker initialization failed`));let i=this.generateMessageId();return new Promise((a,o)=>{let s=setTimeout(()=>{this.pendingTasks.delete(i),o(Error(`Worker task timeout after ${n}ms`))},n);this.pendingTasks.set(i,{resolve:a,reject:o,timeout:s});let c={id:i,type:e,payload:Od(t)};r.postMessage(c)})}async simulateBattle(e){return this.sendMessage(p.SIMULATE_BATTLE,e)}async calculatePlunder(e){return this.sendMessage(p.CALCULATE_PLUNDER,e)}async calculateDebris(e){return this.sendMessage(p.CALCULATE_DEBRIS,e)}destroy(){this.battleWorker&&=(this.battleWorker.terminate(),null);for(let e of this.pendingTasks.values())e.timeout&&clearTimeout(e.timeout),e.reject(Error(`Worker manager destroyed`));this.pendingTasks.clear()}getPendingTaskCount(){return this.pendingTasks.size}},Ad=async(e,t,n,r,i,a)=>{let o=$(i,Date.now()),s=$(a,Date.now()),c=Math.floor(o.defenseBonus/10),l=Math.floor(s.defenseBonus/10),u=await kd.simulateBattle({attacker:{ships:e,weaponTech:0,shieldTech:c,armorTech:c},defender:{ships:t,defense:n,weaponTech:0,shieldTech:l,armorTech:l},maxRounds:6}),d=u.winner===`attacker`?await kd.calculatePlunder({defenderResources:r,attackerFleet:u.attackerRemaining}):{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},f=await kd.calculateDebris({attackerLosses:u.attackerLosses,defenderLosses:u.defenderLosses}),p=f.metal+f.crystal,m=Math.min(p/1e5,.2);return{id:`battle_${Date.now()}`,timestamp:Date.now(),attackerId:``,defenderId:``,attackerPlanetId:``,defenderPlanetId:``,attackerFleet:e,defenderFleet:t,defenderDefense:n,attackerLosses:u.attackerLosses,defenderLosses:u.defenderLosses,winner:u.winner,plunder:d,debrisField:f,rounds:u.rounds,attackerRemaining:u.attackerRemaining,defenderRemaining:u.defenderRemaining,roundDetails:u.roundDetails,moonChance:m}},jd=(e,t)=>{let n={...t};return Object.keys(e).forEach(r=>{let i=e[r]||0,a=t[r]||0,o=i-a;o>0&&(n[r]=a+Math.floor(o*.7))}),n},Md=e=>{let n=e.metal+e.crystal;if(n{let c=Md(e);if(c===0||Math.random()*100>=c)return null;let l={id:`moon_${Date.now()}`,name:`Moon [${n.galaxy}:${n.system}:${n.position}]`,ownerId:o,position:n,resources:{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[s.LightFighter]:0,[s.HeavyFighter]:0,[s.Cruiser]:0,[s.Battleship]:0,[s.SmallCargo]:0,[s.LargeCargo]:0,[s.ColonyShip]:0,[s.Recycler]:0,[s.EspionageProbe]:0,[s.DarkMatterHarvester]:0,[s.Deathstar]:0},defense:{[r.RocketLauncher]:0,[r.LightLaser]:0,[r.HeavyLaser]:0,[r.GaussCannon]:0,[r.IonCannon]:0,[r.PlasmaTurret]:0,[r.SmallShieldDome]:0,[r.LargeShieldDome]:0,[r.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:t.baseSize,maxFleetStorage:a.baseStorage,isMoon:!0,parentPlanetId:i};return Object.values(m).forEach(e=>{l.buildings[e]=0}),l},Pd=(e,t,n)=>{if(e.find(e=>e.position.galaxy===t.galaxy&&e.position.system===t.system&&e.position.position===t.position&&e.isMoon))return{canCreate:!1,reason:`errors.moonExists`};let r=Gu(n);return r===0?{canCreate:!1,reason:`errors.insufficientDebris`,chance:r}:{canCreate:!0,chance:r}},Fd=e=>Math.random()*100<=e,Id=(e,t)=>e.galaxy===t.galaxy&&e.system===t.system&&e.position===t.position?5:e.galaxy===t.galaxy&&e.system===t.system?1e3+Math.abs(t.position-e.position)*5:e.galaxy===t.galaxy?2700+Math.abs(t.system-e.system)*95:2e4+Math.abs(t.galaxy-e.galaxy)*2e4,Ld=(e,t)=>Math.max(10,Math.floor(e*1e4/t)),Rd=(e,t,n,r,i,a,o)=>{let s=Date.now();return{id:`mission_${s}`,playerId:e,originPlanetId:t,targetPosition:n,missionType:r,fleet:i,cargo:a,departureTime:s,arrivalTime:s+o*1e3,returnTime:s+o*2*1e3,status:`outbound`}},zd=(e,t)=>{t&&(t.resources.metal+=e.cargo.metal,t.resources.crystal+=e.cargo.crystal,t.resources.deuterium+=e.cargo.deuterium,t.resources.darkMatter+=e.cargo.darkMatter),e.status=`returning`,e.cargo={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0}},Bd=async(e,t,n,r,i)=>{if(!t||t.ownerId===n.id)return e.status=`returning`,null;let a=await Ad(e.fleet,t.fleet,t.defense,t.resources,n.officers,r?.officers||{});a.id=`battle_${Date.now()}`,a.attackerId=n.id,a.defenderId=t.ownerId||`unknown`,a.attackerPlanetId=e.originPlanetId,a.defenderPlanetId=t.id,e.cargo=a.plunder;let o={};Object.entries(e.fleet).forEach(([e,t])=>{let n=t-(a.attackerLosses[e]||0);n>0&&(o[e]=n)}),e.fleet=o,Object.entries(a.defenderLosses.fleet).forEach(([e,n])=>{t.fleet[e]=Math.max(0,t.fleet[e]-n)}),Object.entries(a.defenderLosses.defense).forEach(([e,n])=>{t.defense[e]=Math.max(0,t.defense[e]-n)});let s={...t.defense};Object.entries(a.defenderLosses.defense).forEach(([e,t])=>{s[e]=(s[e]||0)+t}),t.defense=jd(s,t.defense),t.resources.metal-=a.plunder.metal,t.resources.crystal-=a.plunder.crystal,t.resources.deuterium-=a.plunder.deuterium,e.status=`returning`;let c=null,l=Pd(i,t.position,a.debrisField);l.canCreate&&l.chance&&Fd(l.chance)&&(c=Nd(a.debrisField,t.position,t.id,t.ownerId||`unknown`));let u=null;return a.debrisField.metal+a.debrisField.crystal>0&&(u={id:`debris_${t.position.galaxy}_${t.position.system}_${t.position.position}`,position:t.position,resources:{metal:a.debrisField.metal,crystal:a.debrisField.crystal},createdAt:Date.now()}),{battleResult:a,moon:c,debrisField:u}},Vd=(e,t,n,i=`Colony`)=>{if(t)return e.status=`returning`,null;let o={id:`planet_${Date.now()}`,name:`${i} ${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}`,ownerId:n,position:e.targetPosition,resources:{metal:500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[s.LightFighter]:0,[s.HeavyFighter]:0,[s.Cruiser]:0,[s.Battleship]:0,[s.SmallCargo]:0,[s.LargeCargo]:0,[s.ColonyShip]:0,[s.Recycler]:0,[s.EspionageProbe]:0,[s.DarkMatterHarvester]:0,[s.Deathstar]:0},defense:{[r.RocketLauncher]:0,[r.LightLaser]:0,[r.HeavyLaser]:0,[r.GaussCannon]:0,[r.IonCannon]:0,[r.PlasmaTurret]:0,[r.SmallShieldDome]:0,[r.LargeShieldDome]:0,[r.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:a.baseStorage,isMoon:!1};return Object.values(m).forEach(e=>{o.buildings[e]=0}),e.fleet[s.ColonyShip]=(e.fleet[s.ColonyShip]||1)-1,e.status=`returning`,o},Hd=(e,t,n)=>{if(!t)return e.status=`returning`,null;let r={id:`spy_${Date.now()}`,timestamp:Date.now(),spyId:n,targetPlanetId:t.id,targetPlayerId:t.ownerId||`unknown`,resources:{...t.resources},fleet:{...t.fleet},defense:{...t.defense},buildings:{...t.buildings},technologies:{},detectionChance:.3};return e.status=`returning`,r},Ud=(e,t,n)=>{if(!t||t.ownerId!==n)return e.status=`returning`,!1;for(let[n,r]of Object.entries(e.fleet))t.fleet[n]+=r;return!0},Wd=(e,t)=>{if(!t)return e.status=`returning`,null;let n=(e.fleet[s.Recycler]||0)*2e4-(e.cargo.metal+e.cargo.crystal+e.cargo.deuterium),r=t.resources.metal+t.resources.crystal,i=Math.min(r,n),a=t.resources.metal/r,o=t.resources.crystal/r,c=Math.floor(i*a),l=Math.floor(i*o);e.cargo.metal+=c,e.cargo.crystal+=l;let u=t.resources.metal-c,d=t.resources.crystal-l;return e.status=`returning`,{collectedResources:{metal:c,crystal:l},remainingDebris:u>0||d>0?{metal:u,crystal:d}:null}},Gd=(e,t,n)=>{let r=e*10,i=t*5,a=Math.floor(n/1e4),o=r-i-a;return Math.max(1,Math.min(99,o))},Kd=(e,t)=>{let n=0;return Object.entries(e).forEach(([e,t])=>{t>0&&(n+=t*100)}),Object.entries(t).forEach(([e,t])=>{t>0&&(n+=t*50)}),n},qd=(e,t,n)=>{if(!t||t.ownerId===n.id)return e.status=`returning`,null;let i=e.fleet[s.Deathstar]||0;if(i===0)return e.status=`returning`,null;let a=Gd(i,t.defense[r.PlanetaryShield]||0,Kd(t.fleet,t.defense)),o=Math.random()*100{if(e.status!==`outbound`)return!1;let n=t-e.departureTime;return t{let r=n[e];return{metal:r.cost.metal*t,crystal:r.cost.crystal*t,deuterium:r.cost.deuterium*t,darkMatter:r.cost.darkMatter*t,energy:0}},Xd=(e,t)=>{let n=d[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t,energy:0}},Zd=(e,t,r=0)=>{let i=n[e].buildTime*t,a=1-r/100;return Math.floor(i*a)},Qd=(e,t,n=0)=>{let r=d[e].buildTime*t,i=1-n/100;return Math.floor(r*i)},$d=(e,t,r)=>{let a=n[e];if(!a.requirements)return!0;for(let[e,n]of Object.entries(a.requirements))if(Object.values(m).includes(e)){if((t[e]||0){let r=d[e];if(!r.requirements)return!0;for(let[e,a]of Object.entries(r.requirements))if(Object.values(m).includes(e)){if((t[e]||0)!((e===r.SmallShieldDome||e===r.LargeShieldDome)&&((t[e]||0)>0||n>1)),nf=(e,t,n)=>{let r=Date.now();return{id:`ship_${r}`,type:`ship`,itemType:e,quantity:t,startTime:r,endTime:r+n*1e3}},rf=(e,t,n)=>{let r=Date.now();return{id:`defense_${r}`,type:`defense`,itemType:e,quantity:t,startTime:r,endTime:r+n*1e3}},af=(e,t)=>{for(let[n,r]of Object.entries(t))if((e[n]||0){let i=0;for(let[t,r]of Object.entries(e)){let e=n[t];i+=e.fuelConsumption*r}let a=0;if(r){let e=r.metal+r.crystal+r.deuterium+r.darkMatter;a=Math.floor(e/1e3)}let o=1-t/100;return Math.floor(i*o)+a},sf=(e,t=0)=>{let r=1/0;for(let[t,i]of Object.entries(e))if(i>0){let e=n[t];r=Math.min(r,e.speed)}let i=1+t/100;return Math.floor(r*i)},cf=(e,t)=>{for(let[n,r]of Object.entries(t))e[n]-=r},lf=(e,t)=>{for(let[n,r]of Object.entries(t))r>0&&(e[n]+=r)},uf=e=>{let t=0;for(let r of Object.values(s)){let i=e[r]||0,a=n[r];t+=i*a.storageUsage}return t},df=(e,t)=>{let n=a.baseStorage,r=e.buildings[m.Shipyard]||0,s=c[m.Shipyard].fleetStorageBonus||0;n+=r*s;let l=t[i.ComputerTechnology]||0,u=o[i.ComputerTechnology].fleetStorageBonus||0;return n+=l*u,n},ff=(e,t,r,i)=>{let a=uf(e.fleet),o=df(e,i);return a+n[t].storageUsage*r<=o},pf=(e,t,n,r)=>{let i=Yd(t,n);return $d(t,e.buildings,r)?$u(e.resources,i)?ff(e,t,n,r)?{valid:!0}:{valid:!1,reason:`errors.insufficientFleetStorage`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},mf=(e,t,n,r)=>{let i=Yd(t,n),a=Zd(t,n,$(r,Date.now()).buildingSpeedBonus);return ed(e.resources,i),nf(t,n,a)},hf=(e,t,n,r)=>{let i=Xd(t,n);return ef(t,e.buildings,r)?$u(e.resources,i)?tf(t,e.defense,n)?{valid:!0}:{valid:!1,reason:`errors.shieldDomeLimit`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},gf=(e,t,n,r)=>{let i=Xd(t,n),a=Qd(t,n,$(r,Date.now()).buildingSpeedBonus);return ed(e.resources,i),rf(t,n,a)},_f=(e,t,n,r,i=0)=>{let a=$(r,Date.now());if(i>=_d(a.additionalFleetSlots))return{valid:!1,reason:`errors.fleetMissionsFull`};if(!af(e.fleet,t))return{valid:!1,reason:`errors.insufficientFleet`};let o=of(t,a.fuelConsumptionReduction,n);return e.resources.deuterium{cf(e.fleet,t),e.resources.deuterium-=n,r&&ed(e.resources,i)};export{Qu as $,$r as $t,xd as A,ds as At,sd as B,Sa as Bt,kd as C,bn as Cn,G as Ct,bd as D,Se as Dn,vs as Dt,wd as E,Oe as En,Xs as Et,_d as F,bs as Ft,td as G,Hi as Gt,id as H,ir as Ht,md as I,Zs as It,nd as J,ta as Jt,rd as K,os as Kt,pd as L,Ka as Lt,vd as M,J as Mt,fd as N,Qr as Nt,Cd as O,Ie as On,fs as Ot,dd as P,Q as Pt,ed as Q,ya as Qt,ud as R,Ga as Rt,Jd as S,xn as Sn,K as St,Td as T,De as Tn,xs as Tt,ld as U,Vi as Ut,od as V,Ds as Vt,ad as W,Ri as Wt,Xu as X,Zi as Xt,Zu as Y,ra as Yt,$u as Z,aa as Zt,Ud as _,sn as _n,gu as _t,_f as a,Sr as an,Bu as at,Hd as b,kn as bn,Ll as bt,df as c,He as cn,Du as ct,sf as d,fn as dn,ku as dt,va as en,Gu as et,Id as f,Ue as fn,Cu as ft,Vd as g,an as gn,hu as gt,Bd as h,hn,wu as ht,hf as i,xr as in,zu as it,Sd as j,Ss as jt,yd as k,me as kn,ws as kt,lf as l,ln,Ou as lt,Rd as m,on as mn,Tu as mt,vf as n,Ya as nn,Wu as nt,pf as o,Tn as on,Lu as ot,Ld as p,rn as pn,Eu as pt,Yu as q,Wa as qt,mf as r,Xa as rn,$ as rt,uf as s,Ve as sn,Vu as st,gf as t,Qa as tn,Uu as tt,of as u,B as un,Pu as ut,qd as v,gn as vn,pu as vt,Ed as w,M as wn,Pr as wt,zd as x,En as xn,Zl as xt,Wd as y,z as yn,su as yt,cd as z,ps as zt}; \ No newline at end of file diff --git a/docs/assets/index-C1ya9Q3J.css b/docs/assets/index-C1ya9Q3J.css new file mode 100644 index 0000000..234a057 --- /dev/null +++ b/docs/assets/index-C1ya9Q3J.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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-scroll-snap-strictness:proximity;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--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-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial;--tw-text-shadow-color:initial;--tw-text-shadow-alpha:100%;--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-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:#fef2f2;--color-red-100:#ffe2e2;--color-red-200:#ffcaca;--color-red-300:#ffa3a3;--color-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-red-800:#9f0712;--color-red-900:#82181a;--color-red-950:#460809;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#ffd7a8;--color-orange-300:#ffb96d;--color-orange-400:#ff8b1a;--color-orange-500:#fe6e00;--color-orange-600:#f05100;--color-orange-700:#c53c00;--color-orange-800:#9f2d00;--color-orange-900:#7e2a0c;--color-orange-950:#441306;--color-amber-50:#fffbeb;--color-amber-100:#fef3c6;--color-amber-200:#fee685;--color-amber-300:#ffd236;--color-amber-400:#fcbb00;--color-amber-500:#f99c00;--color-amber-600:#dd7400;--color-amber-700:#b75000;--color-amber-800:#953d00;--color-amber-900:#7b3306;--color-amber-950:#461901;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c2;--color-yellow-200:#fff085;--color-yellow-300:#ffe02a;--color-yellow-400:#fac800;--color-yellow-500:#edb200;--color-yellow-600:#cd8900;--color-yellow-700:#a36100;--color-yellow-800:#874b00;--color-yellow-900:#733e0a;--color-yellow-950:#432004;--color-lime-50:#f7fee7;--color-lime-100:#ecfcca;--color-lime-200:#d8f999;--color-lime-300:#bbf451;--color-lime-400:#9de500;--color-lime-500:#80cd00;--color-lime-600:#62a400;--color-lime-700:#4b7d00;--color-lime-800:#3d6300;--color-lime-900:#35530e;--color-lime-950:#192e03;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#b9f8cf;--color-green-300:#7bf1a8;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-green-800:#016630;--color-green-900:#0d542b;--color-green-950:#032e15;--color-emerald-50:#ecfdf5;--color-emerald-100:#d0fae5;--color-emerald-200:#a4f4cf;--color-emerald-300:#5ee9b5;--color-emerald-400:#00d294;--color-emerald-500:#00bb7f;--color-emerald-600:#009767;--color-emerald-700:#007956;--color-emerald-800:#005f46;--color-emerald-900:#004e3b;--color-emerald-950:#002c22;--color-teal-50:#f0fdfa;--color-teal-100:#cbfbf1;--color-teal-200:#96f7e4;--color-teal-300:#46ecd5;--color-teal-400:#00d3bd;--color-teal-500:#00baa7;--color-teal-600:#009588;--color-teal-700:#00776e;--color-teal-800:#005f5a;--color-teal-900:#0b4f4a;--color-teal-950:#022f2e;--color-cyan-50:#ecfeff;--color-cyan-100:#cefafe;--color-cyan-200:#a2f4fd;--color-cyan-300:#53eafd;--color-cyan-400:#00d2ef;--color-cyan-500:#00b7d7;--color-cyan-600:#0092b5;--color-cyan-700:#007492;--color-cyan-800:#005f78;--color-cyan-900:#104e64;--color-cyan-950:#053345;--color-sky-50:#f0f9ff;--color-sky-100:#dff2fe;--color-sky-200:#b8e6fe;--color-sky-300:#77d4ff;--color-sky-400:#00bcfe;--color-sky-500:#00a5ef;--color-sky-600:#0084cc;--color-sky-700:#0069a4;--color-sky-800:#005986;--color-sky-900:#024a70;--color-sky-950:#052f4a;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-300:#90c5ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-800:#193cb8;--color-blue-900:#1c398e;--color-blue-950:#162456;--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-200:#c7d2ff;--color-indigo-300:#a4b3ff;--color-indigo-400:#7d87ff;--color-indigo-500:#625fff;--color-indigo-600:#4f39f6;--color-indigo-700:#432dd7;--color-indigo-800:#372aac;--color-indigo-900:#312c85;--color-indigo-950:#1e1a4d;--color-violet-50:#f5f3ff;--color-violet-100:#ede9fe;--color-violet-200:#ddd6ff;--color-violet-300:#c4b4ff;--color-violet-400:#a685ff;--color-violet-500:#8d54ff;--color-violet-600:#7f22fe;--color-violet-700:#7008e7;--color-violet-800:#5d0ec0;--color-violet-900:#4d179a;--color-violet-950:#2f0d68;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d9b3ff;--color-purple-400:#c07eff;--color-purple-500:#ac4bff;--color-purple-600:#9810fa;--color-purple-700:#8200da;--color-purple-800:#6e11b0;--color-purple-900:#59168b;--color-purple-950:#3c0366;--color-fuchsia-50:#fdf4ff;--color-fuchsia-100:#fae8ff;--color-fuchsia-200:#f6cfff;--color-fuchsia-300:#f2a9ff;--color-fuchsia-400:#ec6cff;--color-fuchsia-500:#e12afb;--color-fuchsia-600:#c600db;--color-fuchsia-700:#a600b5;--color-fuchsia-800:#8a0194;--color-fuchsia-900:#721378;--color-fuchsia-950:#4b004f;--color-pink-50:#fdf2f8;--color-pink-100:#fce7f3;--color-pink-200:#fccee8;--color-pink-300:#fda5d5;--color-pink-400:#fb64b6;--color-pink-500:#f6339a;--color-pink-600:#e30076;--color-pink-700:#c4005c;--color-pink-800:#a2004c;--color-pink-900:#861043;--color-pink-950:#510424;--color-rose-50:#fff1f2;--color-rose-100:#ffe4e6;--color-rose-200:#ffccd3;--color-rose-300:#ffa2ae;--color-rose-400:#ff667f;--color-rose-500:#ff2357;--color-rose-600:#e70044;--color-rose-700:#c20039;--color-rose-800:#a30037;--color-rose-900:#8b0836;--color-rose-950:#4d0218;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cad5e2;--color-slate-400:#90a1b9;--color-slate-500:#62748e;--color-slate-600:#45556c;--color-slate-700:#314158;--color-slate-800:#1d293d;--color-slate-900:#0f172b;--color-slate-950:#020618;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-gray-900:#101828;--color-gray-950:#030712;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#9f9fa9;--color-zinc-500:#71717b;--color-zinc-600:#52525c;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-zinc-900:#18181b;--color-zinc-950:#09090b;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a6a09b;--color-stone-500:#79716b;--color-stone-600:#57534d;--color-stone-700:#44403b;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--container-3xs:16rem;--container-2xs:18rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--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);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--radius-xs:.125rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem;--shadow-2xs:0 1px #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--inset-shadow-2xs:inset 0 1px #0000000d;--inset-shadow-xs:inset 0 1px 1px #0000000d;--inset-shadow-sm:inset 0 2px 4px #0000000d;--drop-shadow-xs:0 1px 1px #0000000d;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-md:0 3px 3px #0000001f;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--drop-shadow-2xl:0 25px 25px #00000026;--text-shadow-2xs:0px 1px 0px #00000026;--text-shadow-xs:0px 1px 1px #0003;--text-shadow-sm:0px 1px 0px #00000013,0px 1px 1px #00000013,0px 2px 2px #00000013;--text-shadow-md:0px 1px 1px #0000001a,0px 1px 2px #0000001a,0px 2px 4px #0000001a;--text-shadow-lg:0px 1px 2px #0000001a,0px 3px 2px #0000001a,0px 4px 8px #0000001a;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--aspect-video:16/9;--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);--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-50:lab(96.5005% 4.18511 1.52329);--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-300:lab(76.5514% 36.4219 15.5335);--color-red-400:lab(63.7053% 60.7449 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-red-900:lab(28.5139% 44.5539 29.0463);--color-red-950:lab(13.003% 29.04 16.7519);--color-orange-50:lab(97.7008% 1.53738 5.90646);--color-orange-100:lab(94.7127% 3.58391 14.3151);--color-orange-200:lab(88.4871% 9.94918 28.8378);--color-orange-300:lab(80.8059% 21.7313 50.4455);--color-orange-400:lab(70.0429% 42.5156 75.8207);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-orange-600:lab(57.1026% 64.2584 89.8886);--color-orange-700:lab(46.4615% 57.7275 70.8507);--color-orange-800:lab(37.1566% 46.6433 50.5562);--color-orange-900:lab(30.2951% 36.0434 37.671);--color-orange-950:lab(14.1747% 23.4515 19.4461);--color-amber-50:lab(98.6252% -.635982 8.42309);--color-amber-100:lab(95.916% -1.2165 23.111);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-300:lab(86.4156% 6.13147 78.3961);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-600:lab(60.3514% 40.5624 87.1228);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-800:lab(37.8823% 37.1699 52.2718);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-50:lab(98.6846% -1.79058 9.77662);--color-yellow-100:lab(97.3564% -4.51407 27.344);--color-yellow-200:lab(94.3433% -5.00426 52.9663);--color-yellow-300:lab(89.7033% -.480324 84.4917);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-500:lab(76.3898% 14.5258 98.4589);--color-yellow-600:lab(62.7799% 22.4198 86.1544);--color-yellow-700:lab(47.8202% 25.2426 66.5015);--color-yellow-800:lab(38.7484% 23.5833 51.4916);--color-yellow-900:lab(32.3865% 21.1274 38.5958);--color-yellow-950:lab(16.8146% 15.7422 23.1133);--color-lime-50:lab(98.7039% -5.32568 10.2149);--color-lime-100:lab(96.8662% -11.7133 22.0854);--color-lime-200:lab(94.0718% -22.5338 42.5238);--color-lime-300:lab(89.9218% -35.6546 68.5254);--color-lime-400:lab(83.7876% -45.0447 88.4738);--color-lime-500:lab(75.3197% -46.6547 86.1778);--color-lime-600:lab(61.1055% -41.0235 73.1483);--color-lime-700:lab(47.246% -32.2589 55.8249);--color-lime-800:lab(37.7655% -25.1694 43.0683);--color-lime-900:lab(31.9931% -20.7655 33.7379);--color-lime-950:lab(16.5113% -15.1841 22.0145);--color-green-50:lab(98.1563% -5.60117 2.75913);--color-green-100:lab(96.186% -13.8464 6.52362);--color-green-200:lab(92.4222% -26.4702 12.9427);--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-800:lab(37.4616% -36.7971 22.9692);--color-green-900:lab(30.797% -29.6927 17.382);--color-green-950:lab(15.6845% -20.4225 11.7249);--color-emerald-50:lab(97.8462% -6.94963 1.85487);--color-emerald-100:lab(94.9004% -17.0769 5.63836);--color-emerald-200:lab(90.2247% -31.039 9.47084);--color-emerald-300:lab(83.9203% -48.7124 13.8849);--color-emerald-400:lab(75.0771% -60.7313 19.4146);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-emerald-700:lab(44.4871% -41.0396 11.0361);--color-emerald-800:lab(35.3675% -33.1188 8.04002);--color-emerald-900:lab(28.8637% -26.9249 5.45986);--color-emerald-950:lab(15.0582% -17.9507 2.38369);--color-teal-50:lab(98.3189% -4.74921 -.111723);--color-teal-100:lab(95.1845% -17.4212 -.425434);--color-teal-200:lab(90.7612% -33.1343 -.542295);--color-teal-300:lab(84.8977% -48.1517 -1.3321);--color-teal-400:lab(76.0109% -53.3483 -2.27907);--color-teal-500:lab(67.3859% -49.0983 -2.63511);--color-teal-600:lab(55.0223% -41.0774 -3.90277);--color-teal-700:lab(44.4134% -33.1436 -4.22149);--color-teal-800:lab(35.5975% -26.6648 -4.34487);--color-teal-900:lab(29.506% -21.4706 -3.59886);--color-teal-950:lab(16.6371% -15.3183 -3.81732);--color-cyan-50:lab(98.3303% -5.97429 -2.62109);--color-cyan-100:lab(95.3146% -13.8285 -6.84733);--color-cyan-200:lab(91.0821% -24.0435 -12.8306);--color-cyan-300:lab(85.3886% -36.7635 -21.5717);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-cyan-500:lab(67.805% -35.3952 -30.2018);--color-cyan-600:lab(55.1767% -26.7496 -30.5138);--color-cyan-700:lab(44.7267% -21.5987 -26.118);--color-cyan-800:lab(36.5114% -17.1989 -21.6292);--color-cyan-900:lab(30.372% -13.1853 -18.7887);--color-cyan-950:lab(19.1528% -9.68759 -15.5267);--color-sky-50:lab(97.3623% -2.33799 -4.13098);--color-sky-100:lab(94.3709% -4.56053 -8.23453);--color-sky-200:lab(88.6983% -11.3978 -16.8488);--color-sky-300:lab(80.3307% -20.2945 -31.385);--color-sky-400:lab(70.687% -23.6078 -45.9483);--color-sky-500:lab(63.3038% -18.433 -51.0407);--color-sky-600:lab(51.7754% -11.4713 -49.8349);--color-sky-700:lab(41.6013% -9.10804 -42.5648);--color-sky-800:lab(35.164% -9.57689 -34.4068);--color-sky-900:lab(29.1959% -8.34689 -28.2453);--color-sky-950:lab(17.8299% -5.31271 -21.1584);--color-blue-50:lab(96.492% -1.14647 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--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-800:lab(30.2514% 27.7854 -70.2699);--color-blue-900:lab(26.1542% 15.7545 -51.5504);--color-blue-950:lab(15.6723% 8.86233 -32.2945);--color-indigo-50:lab(95.4818% .411302 -6.78529);--color-indigo-100:lab(91.6577% 1.04591 -12.7199);--color-indigo-200:lab(84.4329% 3.18974 -23.9688);--color-indigo-300:lab(74.0235% 8.54138 -41.6075);--color-indigo-400:lab(59.866% 22.4833 -64.4485);--color-indigo-500:lab(48.295% 38.3129 -81.9673);--color-indigo-600:lab(38.4009% 52.6132 -92.3857);--color-indigo-700:lab(32.4486% 49.2217 -84.6695);--color-indigo-800:lab(26.6645% 37.9804 -68.6402);--color-indigo-900:lab(23.3911% 24.6978 -50.4719);--color-indigo-950:lab(12.4853% 14.9672 -31.3418);--color-violet-50:lab(96.2416% 2.28846 -5.51655);--color-violet-100:lab(93.0838% 4.35197 -9.88284);--color-violet-200:lab(87.0888% 8.53691 -19.4189);--color-violet-300:lab(76.7419% 18.391 -37.0706);--color-violet-400:lab(62.8239% 34.9159 -60.0512);--color-violet-500:lab(49.9355% 55.1777 -81.8963);--color-violet-600:lab(41.088% 68.9966 -91.995);--color-violet-700:lab(35.2783% 67.9912 -88.793);--color-violet-800:lab(29.3188% 57.7986 -76.1493);--color-violet-900:lab(24.3783% 45.7525 -61.4902);--color-violet-950:lab(14.0707% 33.3353 -46.7553);--color-purple-50:lab(97.1626% 2.99937 -4.13398);--color-purple-100:lab(93.3333% 6.9744 -9.83434);--color-purple-200:lab(87.8405% 13.4282 -18.7159);--color-purple-300:lab(78.3298% 26.2195 -34.9499);--color-purple-400:lab(63.6946% 47.6127 -59.2066);--color-purple-500:lab(52.0183% 66.11 -78.2316);--color-purple-600:lab(43.0295% 75.21 -86.5669);--color-purple-700:lab(36.1758% 69.8525 -80.0381);--color-purple-800:lab(30.6017% 56.7637 -64.4751);--color-purple-900:lab(24.9401% 45.2703 -51.2728);--color-purple-950:lab(14.8253% 38.9005 -44.5861);--color-fuchsia-50:lab(97.1083% 4.46236 -4.09335);--color-fuchsia-100:lab(93.9419% 9.5765 -9.08735);--color-fuchsia-200:lab(87.7108% 19.9958 -18.2054);--color-fuchsia-300:lab(78.5378% 39.3533 -32.9615);--color-fuchsia-400:lab(66.1178% 66.0652 -52.4733);--color-fuchsia-500:lab(56.4256% 83.132 -64.639);--color-fuchsia-600:lab(47.5131% 83.4271 -63.0363);--color-fuchsia-700:lab(39.787% 72.2653 -53.1244);--color-fuchsia-800:lab(32.904% 60.2883 -43.6569);--color-fuchsia-900:lab(27.755% 48.6174 -34.3553);--color-fuchsia-950:lab(15.7348% 39.0235 -27.4073);--color-pink-50:lab(96.4459% 4.53997 -1.49434);--color-pink-100:lab(93.5864% 9.01193 -3.15077);--color-pink-200:lab(87.4504% 19.6 -6.46662);--color-pink-300:lab(77.8308% 38.525 -10.5394);--color-pink-400:lab(64.5597% 64.3615 -12.7988);--color-pink-500:lab(56.9303% 76.8162 -8.07021);--color-pink-600:lab(49.5493% 79.8381 2.31769);--color-pink-700:lab(42.1737% 71.8009 7.42233);--color-pink-800:lab(34.9559% 60.2885 5.99639);--color-pink-900:lab(29.4367% 49.3962 3.35757);--color-pink-950:lab(15.6116% 35.2166 3.53979);--color-rose-50:lab(96.2369% 4.94152 1.28012);--color-rose-100:lab(92.8221% 9.86832 2.60077);--color-rose-200:lab(86.806% 19.1909 4.07754);--color-rose-300:lab(76.6339% 38.3549 9.68834);--color-rose-400:lab(64.4124% 63.0291 19.2068);--color-rose-500:lab(56.101% 79.4329 31.4532);--color-rose-600:lab(49.1882% 81.577 36.0311);--color-rose-700:lab(41.1651% 71.6251 30.3087);--color-rose-800:lab(34.6481% 60.802 20.1957);--color-rose-900:lab(29.7104% 51.514 12.6253);--color-rose-950:lab(14.2323% 34.0086 9.80922);--color-slate-50:lab(98.1434% -.369549 -1.05968);--color-slate-100:lab(96.286% -.852466 -2.46847);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-300:lab(84.7652% -1.94535 -7.93337);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-slate-700:lab(26.9569% -1.47018 -15.6993);--color-slate-800:lab(16.132% -.318021 -14.6672);--color-slate-900:lab(7.78673% 1.82346 -15.0537);--color-slate-950:lab(1.76974% 1.32743 -9.28855);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.082314 -1.13575);--color-gray-200:lab(91.6229% -.159085 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17474);--color-gray-500:lab(47.7841% -.393212 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533);--color-gray-900:lab(8.11897% .811279 -12.254);--color-gray-950:lab(1.90334% .278696 -5.48866);--color-zinc-50:lab(98.26% 0 0);--color-zinc-100:lab(96.1634% .0993013 -.364029);--color-zinc-200:lab(90.6853% .399202 -1.45452);--color-zinc-300:lab(84.9837% .601262 -2.17985);--color-zinc-400:lab(65.6464% 1.53494 -5.42429);--color-zinc-500:lab(47.8878% 1.65477 -5.77283);--color-zinc-600:lab(35.1166% 1.7821 -6.1173);--color-zinc-700:lab(26.8019% 1.35386 -4.68303);--color-zinc-800:lab(15.7305% .613749 -2.16959);--color-zinc-900:lab(8.30603% .618212 -2.16573);--color-zinc-950:lab(2.51107% .242703 -.886115);--color-neutral-50:lab(98.26% 0 0);--color-neutral-100:lab(96.52% -.0000596046 0);--color-neutral-200:lab(90.952% -.0000596046 0);--color-neutral-300:lab(84.92% 0 0);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-600:lab(34.924% 0 0);--color-neutral-700:lab(27.036% 0 0);--color-neutral-800:lab(15.204% 0 0);--color-neutral-900:lab(7.78201% -.0000149012 0);--color-neutral-950:lab(2.75381% 0 0);--color-stone-50:lab(98.2686% -.0991821 .364304);--color-stone-100:lab(96.5286% -.0991821 .36428);--color-stone-200:lab(91.055% .663072 .865591);--color-stone-300:lab(84.7909% .928015 1.59738);--color-stone-400:lab(66.2166% 1.88047 3.20325);--color-stone-500:lab(48.1164% 2.35698 4.26853);--color-stone-600:lab(35.5168% 1.08606 4.07829);--color-stone-700:lab(27.3812% 1.32917 3.57789);--color-stone-800:lab(15.0353% 1.96067 1.53427);--color-stone-900:lab(9.03835% 1.15297 1.92955);--color-stone-950:lab(2.86037% .455312 .568903)}}}@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}.\@container,.\@container-\[inline-size\]{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.-inset-1{inset:calc(var(--spacing)*-1)}.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{top:calc(var(--spacing)*1)}.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%}.isolate{isolation:isolate}.isolation-auto{isolation:auto}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.order-0,.order-none{order:0}.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}.float-end{float:inline-end}.float-left{float:left}.float-none{float:none}.float-right{float:right}.float-start{float:inline-start}.clear-both{clear:both}.clear-end{clear:inline-end}.clear-left{clear:left}.clear-none{clear:none}.clear-right{clear:right}.clear-start{clear:inline-start}.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}}.container\!{width:100%!important}@media (min-width:40rem){.container\!{max-width:40rem!important}}@media (min-width:48rem){.container\!{max-width:48rem!important}}@media (min-width:64rem){.container\!{max-width:64rem!important}}@media (min-width:80rem){.container\!{max-width:80rem!important}}@media (min-width:96rem){.container\!{max-width:96rem!important}}.m-2{margin:calc(var(--spacing)*2)}.-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{margin-inline:calc(var(--spacing)*3)}.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-\[16px\]{margin-top:16px}.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}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.field-sizing-content{field-sizing:content}.field-sizing-fixed{field-sizing:fixed}.aspect-square{aspect-ratio:1}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.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)}.size-auto{width:auto;height:auto}.h-1{height:calc(var(--spacing)*1)}.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-lh{height:1lh}.h-px{height:1px}.h-screen{height:100vh}.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}.max-h-lh{max-height:1lh}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-auto{min-height:auto}.min-h-lh{min-height:1lh}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing)*0)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1\/2{width:50%}.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%}.w-screen{width:100vw}.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)}.max-w-none{max-width:none}.max-w-screen{max-width:100vw}.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)}.min-w-auto{min-width:auto}.min-w-screen{min-width:100vw}.flex-1{flex:1}.flex-auto{flex:auto}.flex-initial{flex:0 auto}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.basis-auto{flex-basis:auto}.basis-full{flex-basis:100%}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.caption-bottom{caption-side:bottom}.caption-top{caption-side:top}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.origin-\(--reka-popover-content-transform-origin\){transform-origin:var(--reka-popover-content-transform-origin)}.-translate-full{--tw-translate-x:-100%;--tw-translate-y:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-full{--tw-translate-x:100%;--tw-translate-y:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-1{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-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)}.translate-3d{translate:var(--tw-translate-x)var(--tw-translate-y)var(--tw-translate-z)}.translate-none{translate:none}.scale-3d{scale:var(--tw-scale-x)var(--tw-scale-y)var(--tw-scale-z)}.scale-none{scale:none}.rotate-45{rotate:45deg}.rotate-none{rotate:none}.transform,.transform-cpu{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0)var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-none{transform:none}.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-pinch-zoom{--tw-pinch-zoom:pinch-zoom;touch-action:var(--tw-pan-x,)var(--tw-pan-y,)var(--tw-pinch-zoom,)}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.resize-none{resize:none}.resize-x{resize:horizontal}.resize-y{resize:vertical}.snap-none{scroll-snap-type:none}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-proximity{--tw-scroll-snap-strictness:proximity}.snap-align-none{scroll-snap-align:none}.snap-center{scroll-snap-align:center}.snap-end{scroll-snap-align:end}.snap-start{scroll-snap-align:start}.snap-always{scroll-snap-stop:always}.snap-normal{scroll-snap-stop:normal}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.appearance-auto{appearance:auto}.appearance-none{appearance:none}.columns-2{columns:2}.columns-3{columns:3}.columns-4{columns:4}.grid-flow-col{grid-auto-flow:column}.grid-flow-col-dense{grid-auto-flow:column dense}.grid-flow-dense{grid-auto-flow:dense}.grid-flow-row{grid-auto-flow:row}.grid-flow-row-dense{grid-auto-flow:dense}.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-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.place-content-around{place-content:space-around}.place-content-baseline{place-content:baseline start}.place-content-between{place-content:space-between}.place-content-center{place-content:center}.place-content-center-safe{place-content:safe center}.place-content-end{place-content:end}.place-content-end-safe{place-content:safe end}.place-content-evenly{place-content:space-evenly}.place-content-start{place-content:start}.place-content-stretch{place-content:stretch}.place-items-baseline{place-items:baseline}.place-items-center{place-items:center}.place-items-center-safe{place-items:safe center}.place-items-end{place-items:end}.place-items-end-safe{place-items:safe end}.place-items-start{place-items:start}.place-items-stretch{place-items:stretch stretch}.content-around{align-content:space-around}.content-baseline{align-content:baseline}.content-between{align-content:space-between}.content-center{align-content:center}.content-center-safe{align-content:safe center}.content-end{align-content:flex-end}.content-end-safe{align-content:safe flex-end}.content-evenly{align-content:space-evenly}.content-normal{align-content:normal}.content-start{align-content:flex-start}.content-stretch{align-content:stretch}.items-baseline{align-items:baseline}.items-baseline-last{align-items:last baseline}.items-center{align-items:center}.items-center-safe{align-items:safe center}.items-end{align-items:flex-end}.items-end-safe{align-items:safe flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-around{justify-content:space-around}.justify-baseline{justify-content:baseline}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-center-safe{justify-content:safe center}.justify-end{justify-content:flex-end}.justify-end-safe{justify-content:safe flex-end}.justify-evenly{justify-content:space-evenly}.justify-normal{justify-content:normal}.justify-start{justify-content:flex-start}.justify-stretch{justify-content:stretch}.justify-items-center{justify-items:center}.justify-items-center-safe{justify-items:safe center}.justify-items-end{justify-items:end}.justify-items-end-safe{justify-items:safe end}.justify-items-normal{justify-items:normal}.justify-items-start{justify-items:start}.justify-items-stretch{justify-items:stretch}.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>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*0)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*0)*calc(1 - var(--tw-space-y-reverse)))}: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)))}:where(.space-y-reverse>:not(:last-child)){--tw-space-y-reverse:1}:where(.space-x-reverse>:not(:last-child)){--tw-space-x-reverse:1}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px*var(--tw-divide-x-reverse));border-inline-end-width:calc(1px*calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-y-reverse>:not(:last-child)){--tw-divide-y-reverse:1}.place-self-auto{place-self:auto}.place-self-center{place-self:center}.place-self-center-safe{place-self:safe center}.place-self-end{place-self:end}.place-self-end-safe{place-self:safe end}.place-self-start{place-self:start}.place-self-stretch{place-self:stretch stretch}.self-auto{align-self:auto}.self-baseline{align-self:baseline}.self-baseline-last{align-self:last baseline}.self-center{align-self:center}.self-center-safe{align-self:safe center}.self-end{align-self:flex-end}.self-end-safe{align-self:safe flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-auto{justify-self:auto}.justify-self-center{justify-self:center}.justify-self-center-safe{justify-self:safe center}.justify-self-end{justify-self:flex-end}.justify-self-end-safe{justify-self:safe flex-end}.justify-self-start{justify-self:flex-start}.justify-self-stretch{justify-self:stretch}.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}.scroll-auto{scroll-behavior:auto}.scroll-smooth{scroll-behavior:smooth}.\!rounded{border-radius:.25rem!important}.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-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.rounded-ss{border-start-start-radius:.25rem}.rounded-e{border-start-end-radius:.25rem;border-end-end-radius:.25rem}.rounded-se{border-start-end-radius:.25rem}.rounded-ee{border-end-end-radius:.25rem}.rounded-es{border-end-start-radius:.25rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-double{--tw-border-style:double;border-style:double}.border-hidden{--tw-border-style:hidden;border-style:hidden}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.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-\(--my_variable\){background-color:var(--my_variable)}.bg-\(color\:--my-color\){background-color:var(--my-color)}.bg-\[\#0088cc\]{background-color:#08c}.bg-\[color\:var\(--my-color\)\]{background-color:var(--my-color)}.bg-\[var\(--my_variable\)\]{background-color:var(--my_variable)}.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{background-color:var(--color-black)}.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-gray-100{background-color:var(--color-gray-100)}.bg-gray-100\/50{background-color:#f3f4f680}@supports (color:color-mix(in lab, red, red)){.bg-gray-100\/50{background-color:color-mix(in oklab,var(--color-gray-100)50%,transparent)}}.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-red-500{background-color:var(--color-red-500)}.bg-red-500\/50{background-color:#fb2c3680}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/50{background-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.bg-red-500\/\[50\%\]{background-color:#fb2c3680}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/\[50\%\]{background-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.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-conic,.bg-conic{--tw-gradient-position:in oklab;background-image:conic-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-radial{--tw-gradient-position:in oklab;background-image:radial-gradient(var(--tw-gradient-stops))}.bg-none{background-image:none}.via-none{--tw-gradient-via-stops:initial}.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))}.mask-none{-webkit-mask-image:none;mask-image:none}.mask-circle{--tw-mask-radial-shape:circle}.mask-ellipse{--tw-mask-radial-shape:ellipse}.mask-radial-closest-corner{--tw-mask-radial-size:closest-corner}.mask-radial-closest-side{--tw-mask-radial-size:closest-side}.mask-radial-farthest-corner{--tw-mask-radial-size:farthest-corner}.mask-radial-farthest-side{--tw-mask-radial-size:farthest-side}.mask-radial-at-bottom{--tw-mask-radial-position:bottom}.mask-radial-at-bottom-left{--tw-mask-radial-position:bottom left}.mask-radial-at-bottom-right{--tw-mask-radial-position:bottom right}.mask-radial-at-center{--tw-mask-radial-position:center}.mask-radial-at-left{--tw-mask-radial-position:left}.mask-radial-at-right{--tw-mask-radial-position:right}.mask-radial-at-top{--tw-mask-radial-position:top}.mask-radial-at-top-left{--tw-mask-radial-position:top left}.mask-radial-at-top-right{--tw-mask-radial-position:top right}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.box-decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.bg-auto{background-size:auto}.bg-contain{background-size:contain}.bg-cover{background-size:cover}.bg-fixed{background-attachment:fixed}.bg-local{background-attachment:local}.bg-scroll{background-attachment:scroll}.bg-clip-border{background-clip:border-box}.bg-clip-content{background-clip:content-box}.bg-clip-padding{background-clip:padding-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-bottom{background-position:bottom}.bg-bottom-left{background-position:0 100%}.bg-bottom-right{background-position:100% 100%}.bg-center{background-position:50%}.bg-left{background-position:0}.bg-left-bottom{background-position:0 100%}.bg-left-top{background-position:0 0}.bg-right{background-position:100%}.bg-right-bottom{background-position:100% 100%}.bg-right-top{background-position:100% 0}.bg-top{background-position:top}.bg-top-left{background-position:0 0}.bg-top-right{background-position:100% 0}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat{background-repeat:repeat}.bg-repeat-round{background-repeat:round}.bg-repeat-space{background-repeat:space}.bg-repeat-x{background-repeat:repeat-x}.bg-repeat-y{background-repeat:repeat-y}.bg-origin-border{background-origin:border-box}.bg-origin-content{background-origin:content-box}.bg-origin-padding{background-origin:padding-box}.mask-add{-webkit-mask-composite:source-over;-webkit-mask-composite:source-over;-webkit-mask-composite:source-over;mask-composite:add}.mask-exclude{-webkit-mask-composite:xor;-webkit-mask-composite:xor;-webkit-mask-composite:xor;mask-composite:exclude}.mask-intersect{-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;mask-composite:intersect}.mask-subtract{-webkit-mask-composite:source-out;-webkit-mask-composite:source-out;-webkit-mask-composite:source-out;mask-composite:subtract}.mask-alpha{-webkit-mask-source-type:alpha;-webkit-mask-source-type:alpha;-webkit-mask-source-type:alpha;mask-mode:alpha}.mask-luminance{-webkit-mask-source-type:luminance;-webkit-mask-source-type:luminance;-webkit-mask-source-type:luminance;mask-mode:luminance}.mask-match{-webkit-mask-source-type:auto;-webkit-mask-source-type:auto;-webkit-mask-source-type:auto;mask-mode:match-source}.mask-type-alpha{mask-type:alpha}.mask-type-luminance{mask-type:luminance}.mask-auto{-webkit-mask-size:auto;mask-size:auto}.mask-contain{-webkit-mask-size:contain;mask-size:contain}.mask-cover{-webkit-mask-size:cover;mask-size:cover}.mask-clip-border{-webkit-mask-clip:border-box;mask-clip:border-box}.mask-clip-content{-webkit-mask-clip:content-box;mask-clip:content-box}.mask-clip-fill{-webkit-mask-clip:fill-box;mask-clip:fill-box}.mask-clip-padding{-webkit-mask-clip:padding-box;mask-clip:padding-box}.mask-clip-stroke{-webkit-mask-clip:stroke-box;mask-clip:stroke-box}.mask-clip-view{-webkit-mask-clip:view-box;mask-clip:view-box}.mask-no-clip{-webkit-mask-clip:no-clip;mask-clip:no-clip}.mask-bottom{-webkit-mask-position:bottom;mask-position:bottom}.mask-bottom-left{-webkit-mask-position:0 100%;mask-position:0 100%}.mask-bottom-right{-webkit-mask-position:100% 100%;mask-position:100% 100%}.mask-center{-webkit-mask-position:50%;mask-position:50%}.mask-left{-webkit-mask-position:0;mask-position:0}.mask-right{-webkit-mask-position:100%;mask-position:100%}.mask-top{-webkit-mask-position:top;mask-position:top}.mask-top-left{-webkit-mask-position:0 0;mask-position:0 0}.mask-top-right{-webkit-mask-position:100% 0;mask-position:100% 0}.mask-no-repeat{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.mask-repeat-round{-webkit-mask-repeat:round;mask-repeat:round}.mask-repeat-space{-webkit-mask-repeat:space;mask-repeat:space}.mask-repeat-x{-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.mask-repeat-y{-webkit-mask-repeat:repeat-y;mask-repeat:repeat-y}.mask-origin-border{-webkit-mask-origin:border-box;mask-origin:border-box}.mask-origin-content{-webkit-mask-origin:content-box;mask-origin:content-box}.mask-origin-fill{-webkit-mask-origin:fill-box;mask-origin:fill-box}.mask-origin-padding{-webkit-mask-origin:padding-box;mask-origin:padding-box}.mask-origin-stroke{-webkit-mask-origin:stroke-box;mask-origin:stroke-box}.mask-origin-view{-webkit-mask-origin:view-box;mask-origin:view-box}.fill-foreground{fill:var(--foreground)}.fill-none{fill:none}.stroke-none{stroke:none}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-fill{object-fit:fill}.object-none{object-fit:none}.object-scale-down{object-fit:scale-down}.object-left-bottom{object-position:left bottom}.object-left-top{object-position:left top}.object-right-bottom{object-position:right bottom}.object-right-top{object-position:right top}.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{padding-block:calc(var(--spacing)*0)}.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-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-baseline{vertical-align:baseline}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.align-sub{vertical-align:sub}.align-super{vertical-align:super}.align-text-bottom{vertical-align:text-bottom}.align-text-top{vertical-align:text-top}.align-top{vertical-align:top}.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}.text-nowrap{text-wrap:nowrap}.text-pretty{text-wrap:pretty}.text-wrap{text-wrap:wrap}.break-normal{overflow-wrap:normal;word-break:normal}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.wrap-break-word{overflow-wrap:break-word}.wrap-normal{overflow-wrap:normal}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.overflow-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.text-ellipsis{text-overflow:ellipsis}.hyphens-auto{-webkit-hyphens:auto;hyphens:auto}.hyphens-manual{-webkit-hyphens:manual;hyphens:manual}.hyphens-none{-webkit-hyphens:none;hyphens:none}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.\[color\:red\]{color:red}.\[color\:red\]\/50{color:#ff000080;color:lab(54.2905% 80.8048 69.8907/.5)}.\[color\:red\]\/50\!{color:#ff000080!important;color:lab(54.2905% 80.8048 69.8907/.5)!important}.text-amber-700{color:var(--color-amber-700)}.text-background{color:var(--background)}.text-blue-500{color:var(--color-blue-500)}.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)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.font-stretch-condensed{font-stretch:75%}.font-stretch-expanded{font-stretch:125%}.font-stretch-extra-condensed{font-stretch:62.5%}.font-stretch-extra-expanded{font-stretch:150%}.font-stretch-normal{font-stretch:100%}.font-stretch-semi-condensed{font-stretch:87.5%}.font-stretch-semi-expanded{font-stretch:112.5%}.font-stretch-ultra-condensed{font-stretch:50%}.font-stretch-ultra-expanded{font-stretch:200%}.diagonal-fractions{--tw-numeric-fraction:diagonal-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.stacked-fractions{--tw-numeric-fraction:stacked-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.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,)}.normal-nums{font-variant-numeric:normal}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.decoration-dashed{text-decoration-style:dashed}.decoration-dotted{text-decoration-style:dotted}.decoration-double{text-decoration-style:double}.decoration-solid{text-decoration-style:solid}.decoration-wavy{text-decoration-style:wavy}.decoration-auto{text-decoration-thickness:auto}.decoration-from-font{text-decoration-thickness:from-font}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.accent-auto{accent-color:auto}.scheme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.scheme-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.scheme-light-dark{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){.scheme-light-dark{--lightningcss-light: ;--lightningcss-dark:initial}}.scheme-normal{color-scheme:normal}.scheme-only-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only}.scheme-only-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.mix-blend-plus-darker{mix-blend-mode:plus-darker}.mix-blend-plus-lighter{mix-blend-mode:plus-lighter}.shadow{--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-\[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{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + 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)}.inset-ring{--tw-inset-ring-shadow:inset 0 0 0 1px var(--tw-inset-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)}.shadow-initial{--tw-shadow-color:initial}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.inset-shadow-initial{--tw-inset-shadow-color:initial}.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}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);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,)}.drop-shadow-none{--tw-drop-shadow: ;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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.invert{--tw-invert:invert(100%);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,)}.sepia{--tw-sepia:sepia(100%);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,)}.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,)}.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,)!important}.backdrop-blur{--tw-backdrop-blur:blur(8px);-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-\[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,)}.backdrop-grayscale{--tw-backdrop-grayscale:grayscale(100%);-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-invert{--tw-backdrop-invert:invert(100%);-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-sepia{--tw-backdrop-sepia:sepia(100%);-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-filter{-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))}.transition-discrete{transition-behavior:allow-discrete}.transition-normal{transition-behavior:normal}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.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}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-auto{will-change:auto}.will-change-contents{will-change:contents}.will-change-scroll{will-change:scroll-position}.will-change-transform{will-change:transform}.contain-inline-size{--tw-contain-size:inline-size;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-paint{--tw-contain-paint:paint;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-size{--tw-contain-size:size;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-style{--tw-contain-style:style;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-content{contain:content}.contain-none{contain:none}.contain-strict{contain:strict}.content-none{--tw-content:none;content:none}.forced-color-adjust-auto{forced-color-adjust:auto}.forced-color-adjust-none{forced-color-adjust:none}.fade-in-0{--tw-enter-opacity:0}.outline-dashed{--tw-outline-style:dashed;outline-style:dashed}.outline-dotted{--tw-outline-style:dotted;outline-style:dotted}.outline-double{--tw-outline-style:double;outline-style:double}.outline-none{--tw-outline-style:none;outline-style:none}.outline-solid{--tw-outline-style:solid;outline-style:solid}.repeat-1{--tw-animation-iteration-count:1;animation-iteration-count:1}.repeat-2{--tw-animation-iteration-count:2;animation-iteration-count:2}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.backface-hidden{backface-visibility:hidden}.backface-visible{backface-visibility:visible}:where(.divide-x-reverse>:not(:last-child)){--tw-divide-x-reverse:1}.duration-initial{--tw-duration:initial}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.ring-inset{--tw-ring-inset:inset}.running{animation-play-state:running}.text-shadow-initial{--tw-text-shadow-color:initial}.transform-3d{transform-style:preserve-3d}.transform-border{transform-box:border-box}.transform-content{transform-box:content-box}.transform-fill{transform-box:fill-box}.transform-flat{transform-style:flat}.transform-stroke{transform-box:stroke-box}.transform-view{transform-box:view-box}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}.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)}}.hover\:dark\:\!bg-gray-100:hover:is(.dark *){background-color:var(--color-gray-100)!important}.hover\:dark\:bg-gray-100:hover:is(.dark *){background-color:var(--color-gray-100)}}.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-]){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)}.\[\&_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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@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-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}@property --tw-text-shadow-color{syntax:"*";inherits:false}@property --tw-text-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@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-06b59069]{scroll-behavior:smooth} diff --git a/docs/assets/index-DRmrr36X.js b/docs/assets/index-DRmrr36X.js new file mode 100644 index 0000000..acd847f --- /dev/null +++ b/docs/assets/index-DRmrr36X.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./OverviewView-BmFIi4eW.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-DGvz1MHk.js","./vendor-utils-Dg-HLkEU.js","./vendor-pinia-DP9x75p8.js","./CardDescription-BjAei3DC.js","./useGameConfig-CVlwnWOp.js","./game-i18n-DEf7ySVe.js","./BuildingsView-fbXzR4lw.js","./vendor-icons-W6Ny__75.js","./AlertDialog-Bf_xgpJz.js","./CardUnlockOverlay-CVKjkS94.js","./ResearchView-CxV9s7Q0.js","./vendor-vue-router-CWDMmE-U.js","./UnlockRequirement-p2W4t6RX.js","./ShipyardView-7hLJW6aW.js","./DefenseView-BHOUOKOH.js","./FleetView-C_yELhx2.js","./OfficersView-vhUgk-zn.js","./BattleSimulatorView-DyCE8DDk.js","./BattleReportDialog-BxeTjW1s.js","./TooltipProvider-BAp4BAXy.js","./MessagesView-D8V3gkqX.js","./GalaxyView-BxX60NKB.js","./SelectValue-B8Xyt9cq.js","./SettingsView-ByY8npXW.js","./GMView-TnIOhUsC.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-DGvz1MHk.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:`setube`,private:!0,version:`1.1.0`,buildDate:`2025/12/14 13:08:09`,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":`npm run build && go build`,"build:electron":`npm 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}}},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-06b59069`]]),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-BmFIi4eW.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-fbXzR4lw.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-CxV9s7Q0.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-7hLJW6aW.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-BHOUOKOH.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-C_yELhx2.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-vhUgk-zn.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-DyCE8DDk.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-D8V3gkqX.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-BxX60NKB.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-ByY8npXW.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-TnIOhUsC.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/logo-Cz0cNqhe.svg b/docs/assets/logo-Cz0cNqhe.svg new file mode 100644 index 0000000..4e5393d --- /dev/null +++ b/docs/assets/logo-Cz0cNqhe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/rolldown-runtime-tX5UdD3f.js b/docs/assets/rolldown-runtime-tX5UdD3f.js new file mode 100644 index 0000000..d493c23 --- /dev/null +++ b/docs/assets/rolldown-runtime-tX5UdD3f.js @@ -0,0 +1 @@ +var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),c=e=>{let n={};for(var r in e)t(n,r,{get:e[r],enumerable:!0});return n},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),d=e=>l(t({},`__esModule`,{value:!0}),e),f=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function.")});export{d as a,f as i,o as n,u as o,c as r,s as t}; \ No newline at end of file diff --git a/docs/assets/useGameConfig-CVlwnWOp.js b/docs/assets/useGameConfig-CVlwnWOp.js new file mode 100644 index 0000000..eea9f9f --- /dev/null +++ b/docs/assets/useGameConfig-CVlwnWOp.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-DRmrr36X.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-DGvz1MHk.js b/docs/assets/vendor-crypto-DGvz1MHk.js new file mode 100644 index 0000000..3b22da0 --- /dev/null +++ b/docs/assets/vendor-crypto-DGvz1MHk.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:()=>fe,Cipheriv:()=>pe,Decipheriv:()=>me,DiffieHellman:()=>he,DiffieHellmanGroup:()=>ge,ECDH:()=>_e,Hash:()=>ve,Hmac:()=>ye,KeyObject:()=>be,Sign:()=>xe,Verify:()=>Se,X509Certificate:()=>Ce,argon2:()=>s,argon2Sync:()=>c,checkPrime:()=>l,checkPrimeSync:()=>u,constants:()=>Ee,createCipheriv:()=>d,createDecipheriv:()=>f,createDiffieHellman:()=>p,createDiffieHellmanGroup:()=>m,createECDH:()=>h,createHash:()=>g,createHmac:()=>_,createPrivateKey:()=>v,createPublicKey:()=>y,createSecretKey:()=>b,createSign:()=>x,createVerify:()=>S,decapsulate:()=>de,default:()=>je,diffieHellman:()=>C,encapsulate:()=>ue,fips:()=>Te,generateKey:()=>F,generateKeyPair:()=>ee,generateKeyPairSync:()=>te,generateKeySync:()=>I,generatePrime:()=>w,generatePrimeSync:()=>T,getCipherInfo:()=>D,getCiphers:()=>E,getCurves:()=>O,getDiffieHellman:()=>k,getFips:()=>ce,getHashes:()=>A,getRandomValues:()=>q,hash:()=>K,hkdf:()=>j,hkdfSync:()=>M,pbkdf2:()=>N,pbkdf2Sync:()=>P,privateDecrypt:()=>ne,privateEncrypt:()=>L,prng:()=>J,pseudoRandomBytes:()=>ke,publicDecrypt:()=>re,publicEncrypt:()=>R,randomBytes:()=>ie,randomFill:()=>z,randomFillSync:()=>B,randomInt:()=>V,randomUUID:()=>H,rng:()=>Ae,scrypt:()=>ae,scryptSync:()=>oe,secureHeapUsed:()=>we,setEngine:()=>W,setFips:()=>le,sign:()=>U,subtle:()=>Oe,timingSafeEqual:()=>se,verify:()=>G,webcrypto:()=>De}),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,je,Me=n((()=>{o=(Me(),e(a)),s=o.argon2,c=o.argon2Sync,l=o.checkPrime,u=o.checkPrimeSync,d=o.createCipheriv,f=o.createDecipheriv,p=o.createDiffieHellman,m=o.createDiffieHellmanGroup,h=o.createECDH,g=o.createHash,_=o.createHmac,v=o.createPrivateKey,y=o.createPublicKey,b=o.createSecretKey,x=o.createSign,S=o.createVerify,C=o.diffieHellman,w=o.generatePrime,T=o.generatePrimeSync,E=o.getCiphers,D=o.getCipherInfo,O=o.getCurves,k=o.getDiffieHellman,A=o.getHashes,j=o.hkdf,M=o.hkdfSync,N=o.pbkdf2,P=o.pbkdf2Sync,ee=o.generateKeyPair,te=o.generateKeyPairSync,F=o.generateKey,I=o.generateKeySync,ne=o.privateDecrypt,L=o.privateEncrypt,re=o.publicDecrypt,R=o.publicEncrypt,ie=o.randomBytes,z=o.randomFill,B=o.randomFillSync,V=o.randomInt,H=o.randomUUID,ae=o.scrypt,oe=o.scryptSync,U=o.sign,W=o.setEngine,se=o.timingSafeEqual,ce=o.getFips,le=o.setFips,G=o.verify,K=o.hash,ue=o.encapsulate,de=o.decapsulate,fe=o.Certificate,pe=o.Cipheriv,me=o.Decipheriv,he=o.DiffieHellman,ge=o.DiffieHellmanGroup,_e=o.ECDH,ve=o.Hash,ye=o.Hmac,be=o.KeyObject,xe=o.Sign,Se=o.Verify,Ce=o.X509Certificate,we=o.secureHeapUsed,Te=o.fips,Ee=o.constants,De=o.webcrypto,Oe=o.subtle,q=o.getRandomValues,J=o.prng,ke=o.pseudoRandomBytes,Ae=o.rng,je=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=(Me(),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})})),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.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})})),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(){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})})),Le=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})})),Re=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})})),ze=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Re()):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})})),Be=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne()):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})})),Ve=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne(),Be()):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})})),He=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne()):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})})),Ue=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})})),We=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(),Re(),We()):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(),Le(),We()):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)}})}()})})),Ke=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})})),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.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})})),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.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})})),$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.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})})),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 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})})),tt=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})})),nt=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})})),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.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})})),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,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})})),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=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})})),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.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})})),st=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})})),ct=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})})),lt=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne(),Pe(),Fe(),X(),Ie(),Z(),Le(),Re(),ze(),Be(),Ve(),He(),Ue(),We(),Ge(),Q(),$(),Ke(),qe(),Je(),Ye(),Xe(),Ze(),Qe(),$e(),et(),tt(),nt(),rt(),it(),at(),ot(),st(),ct()):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{lt as t}; \ No newline at end of file diff --git a/docs/assets/vendor-icons-W6Ny__75.js b/docs/assets/vendor-icons-W6Ny__75.js new file mode 100644 index 0000000..f3b34ec --- /dev/null +++ b/docs/assets/vendor-icons-W6Ny__75.js @@ -0,0 +1 @@ +import{It as e}from"./game-logic-CfBcTF_c.js";var t=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),n=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),r=e=>{let t=n(e);return t.charAt(0).toUpperCase()+t.slice(1)},i=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),a=e=>e===``,o={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`},s=({name:n,iconNode:s,absoluteStrokeWidth:c,"absolute-stroke-width":l,strokeWidth:u,"stroke-width":d,size:f=o.width,color:p=o.stroke,...m},{slots:h})=>e(`svg`,{...o,...m,width:f,height:f,stroke:p,"stroke-width":a(c)||a(l)||c===!0||l===!0?Number(u||d||o[`stroke-width`])*24/Number(f):u||d||o[`stroke-width`],class:i(`lucide`,m.class,...n?[`lucide-${t(r(n))}-icon`,`lucide-${t(n)}`]:[`lucide-icon`])},[...s.map(t=>e(...t)),...h.default?[h.default()]:[]]),c=(t,n)=>(r,{slots:i,attrs:a})=>e(s,{...a,...r,iconNode:n,name:t},i),l=c(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),u=c(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),d=c(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),f=c(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),p=c(`chevrons-left`,[[`path`,{d:`m11 17-5-5 5-5`,key:`13zhaf`}],[`path`,{d:`m18 17-5-5 5-5`,key:`h8a8et`}]]),m=c(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),h=c(`clock`,[[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),g=c(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),_=c(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),v=c(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),y=c(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),b=c(`fuel`,[[`path`,{d:`M14 13h2a2 2 0 0 1 2 2v2a2 2 0 0 0 4 0v-6.998a2 2 0 0 0-.59-1.42L18 5`,key:`1wtuz0`}],[`path`,{d:`M14 21V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v16`,key:`e09ifn`}],[`path`,{d:`M2 21h13`,key:`1x0fut`}],[`path`,{d:`M3 9h11`,key:`1p7c0w`}]]),x=c(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),S=c(`grid-3x3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),C=c(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),w=c(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),T=c(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),E=c(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),D=c(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),O=c(`mail`,[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]),k=c(`messages-square`,[[`path`,{d:`M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z`,key:`1n2ejm`}],[`path`,{d:`M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1`,key:`1qfcsi`}]]),A=c(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),j=c(`octagon-x`,[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),M=c(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),N=c(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),P=c(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),F=c(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),I=c(`recycle`,[[`path`,{d:`M7 19H4.815a1.83 1.83 0 0 1-1.57-.881 1.785 1.785 0 0 1-.004-1.784L7.196 9.5`,key:`x6z5xu`}],[`path`,{d:`M11 19h8.203a1.83 1.83 0 0 0 1.556-.89 1.784 1.784 0 0 0 0-1.775l-1.226-2.12`,key:`1x4zh5`}],[`path`,{d:`m14 16-3 3 3 3`,key:`f6jyew`}],[`path`,{d:`M8.293 13.596 7.196 9.5 3.1 10.598`,key:`wf1obh`}],[`path`,{d:`m9.344 5.811 1.093-1.892A1.83 1.83 0 0 1 11.985 3a1.784 1.784 0 0 1 1.546.888l3.943 6.843`,key:`9tzpgr`}],[`path`,{d:`m13.378 9.633 4.096 1.098 1.097-4.096`,key:`1oe83g`}]]),L=c(`rocket`,[[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z`,key:`m3kijz`}],[`path`,{d:`m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z`,key:`1fmvmk`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0`,key:`1f8sc4`}],[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}]]),R=c(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),z=c(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),B=c(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),V=c(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),H=c(`ship`,[[`path`,{d:`M12 10.189V14`,key:`1p8cqu`}],[`path`,{d:`M12 2v3`,key:`qbqxhf`}],[`path`,{d:`M19 13V7a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v6`,key:`qpkstq`}],[`path`,{d:`M19.38 20A11.6 11.6 0 0 0 21 14l-8.188-3.639a2 2 0 0 0-1.624 0L3 14a11.6 11.6 0 0 0 2.81 7.76`,key:`7tigtc`}],[`path`,{d:`M2 21c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`1924j5`}]]),U=c(`skull`,[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]),W=c(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),G=c(`swords`,[[`polyline`,{points:`14.5 17.5 3 6 3 3 6 3 17.5 14.5`,key:`1hfsw2`}],[`line`,{x1:`13`,x2:`19`,y1:`19`,y2:`13`,key:`1vrmhu`}],[`line`,{x1:`16`,x2:`20`,y1:`16`,y2:`20`,key:`1bron3`}],[`line`,{x1:`19`,x2:`21`,y1:`21`,y2:`19`,key:`13pww6`}],[`polyline`,{points:`14.5 6.5 18 3 21 3 21 6 17.5 9.5`,key:`hbey2j`}],[`line`,{x1:`5`,x2:`9`,y1:`14`,y2:`18`,key:`1hf58s`}],[`line`,{x1:`7`,x2:`4`,y1:`17`,y2:`20`,key:`pidxm4`}],[`line`,{x1:`3`,x2:`5`,y1:`19`,y2:`21`,key:`1pehsh`}]]),K=c(`sword`,[[`path`,{d:`m11 19-6-6`,key:`s7kpr`}],[`path`,{d:`m5 21-2-2`,key:`1kw20b`}],[`path`,{d:`m8 16-4 4`,key:`1oqv8h`}],[`path`,{d:`M9.5 17.5 21 6V3h-3L6.5 14.5`,key:`pkxemp`}]]),q=c(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),J=c(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Y=c(`trophy`,[[`path`,{d:`M10 14.66v1.626a2 2 0 0 1-.976 1.696A5 5 0 0 0 7 21.978`,key:`1n3hpd`}],[`path`,{d:`M14 14.66v1.626a2 2 0 0 0 .976 1.696A5 5 0 0 1 17 21.978`,key:`rfe1zi`}],[`path`,{d:`M18 9h1.5a1 1 0 0 0 0-5H18`,key:`7xy6bh`}],[`path`,{d:`M4 22h16`,key:`57wxv0`}],[`path`,{d:`M6 9a6 6 0 0 0 12 0V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z`,key:`1mhfuq`}],[`path`,{d:`M6 9H4.5a1 1 0 0 1 0-5H6`,key:`tex48p`}]]),X=c(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),Z=c(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Q=c(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),$=c(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);export{w as A,m as B,j as C,D,O as E,y as F,l as G,f as H,v as I,_ as L,S as M,x as N,E as O,b as P,g as R,M as S,k as T,d as U,p as V,u as W,L as _,Y as a,P as b,K as c,U as d,H as f,R as g,z as h,X as i,C as j,T as k,G as l,B as m,Q as n,J as o,V as p,Z as r,q as s,$ as t,W as u,I as v,A as w,N as x,F as y,h as z}; \ No newline at end of file diff --git a/docs/assets/vendor-others-BMPyaZWq.css b/docs/assets/vendor-others-BMPyaZWq.css new file mode 100644 index 0000000..59f2389 --- /dev/null +++ b/docs/assets/vendor-others-BMPyaZWq.css @@ -0,0 +1 @@ +html[dir=ltr],[data-sonner-toaster][dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0}html[dir=rtl],[data-sonner-toaster][dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto}[data-sonner-toaster]{width:var(--width);--gray1:#fcfcfc;--gray2:#f8f8f8;--gray3:#f3f3f3;--gray4:#ededed;--gray5:#e8e8e8;--gray6:#e2e2e2;--gray7:#dbdbdb;--gray8:#c7c7c7;--gray9:#8f8f8f;--gray10:#858585;--gray11:#6f6f6f;--gray12:#171717;--border-radius:8px;box-sizing:border-box;z-index:999999999;outline:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;list-style:none;transition:transform .4s;position:fixed}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translate(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift)*var(--gap));z-index:var(--z-index);opacity:0;transform:var(--y);touch-action:none;box-sizing:border-box;overflow-wrap:anywhere;outline:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;position:absolute}[data-sonner-toast][data-styled=true]{background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);width:var(--width);align-items:center;gap:6px;padding:16px;font-size:13px;display:flex;box-shadow:0 4px 12px #0000001a}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-y-position=top]{--y:translateY(-100%);--lift:1;--lift-amount:calc(1*var(--gap));top:0}[data-sonner-toast][data-y-position=bottom]{--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift)*var(--gap));bottom:0}[data-sonner-toast][data-styled=true] [data-description]{color:#3f3f3f;font-weight:400;line-height:1.4}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{color:inherit;font-weight:500;line-height:1.5}[data-sonner-toast][data-styled=true] [data-icon]{width:16px;height:16px;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end);flex-shrink:0;justify-content:flex-start;align-items:center;display:flex;position:relative}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform-origin:50%;animation:.3s forwards sonner-fade-in;transform:scale(.8)}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{flex-direction:column;gap:2px;display:flex}[data-sonner-toast][data-styled=true] [data-button]{height:24px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);cursor:pointer;border:none;border-radius:4px;outline:none;flex-shrink:0;align-items:center;padding-left:8px;padding-right:8px;font-size:12px;font-weight:500;transition:opacity .4s,box-shadow .2s;display:flex}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px #0006}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:#00000014}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:#ffffff4d}[data-sonner-toaster] [data-close-button-position=top-left]{--toast-close-button-left:0;--toast-close-button-right:unset;--toast-close-button-top:0;--toast-close-button-bottom:unset;--toast-close-button-transform:translate(-35%,-35%)}[data-sonner-toaster] [data-close-button-position=top-right]{--toast-close-button-left:unset;--toast-close-button-right:0;--toast-close-button-top:0;--toast-close-button-bottom:unset;--toast-close-button-transform:translate(35%,-35%)}[data-sonner-toaster] [data-close-button-position=bottom-left]{--toast-close-button-left:0;--toast-close-button-right:unset;--toast-close-button-top:unset;--toast-close-button-bottom:0;--toast-close-button-transform:translate(-35%,35%)}[data-sonner-toaster] [data-close-button-position=bottom-right]{--toast-close-button-left:unset;--toast-close-button-right:0;--toast-close-button-top:unset;--toast-close-button-bottom:0;--toast-close-button-transform:translate(35%,35%)}[data-sonner-toast][data-styled=true] [data-close-button]{left:var(--toast-close-button-left);right:var(--toast-close-button-right);top:var(--toast-close-button-top);bottom:var(--toast-close-button-bottom);width:20px;height:20px;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .1s,background .2s,border-color .2s;display:flex;position:absolute}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:"";z-index:-1;height:100%;position:absolute;left:-100%;right:-100%}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3)translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3)translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:"";position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]:after{content:"";height:calc(var(--gap) + 1px);width:100%;position:absolute;bottom:100%;left:0}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before)*.05 + 1;--y:translateY(calc(var(--lift-amount)*var(--toasts-before)))scale(calc(-1*var(--toasts-before)*.05 + 1));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset) + var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y)translateY(var(--swipe-amount-y,0px))translateX(var(--swipe-amount-x,0px));transition:none}[data-sonner-toast][data-swiped=true]{-webkit-user-select:none;user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%;position:fixed}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left)*-1)}[data-sonner-toaster] [data-sonner-toast]{width:calc(100% - var(--mobile-offset-left)*2);left:0;right:0}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:calc(var(--mobile-offset-bottom) + max(env(safe-area-inset-bottom),0px))}[data-sonner-toaster][data-y-position=top]{top:calc(var(--mobile-offset-top) + max(env(safe-area-inset-top),0px))}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:#ecfdf3;--success-border:#bffcd9;--success-text:#008a2e;--info-bg:#f0f8ff;--info-border:#dde7fd;--info-text:#0973dc;--warning-bg:#fffcf0;--warning-border:#fbeeb1;--warning-text:#dc7609;--error-bg:#fff0f0;--error-border:#ffe0e1;--error-text:#e60000}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:#333;--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:#1f1f1f;--normal-border:#333;--normal-border-hover:#404040;--normal-text:var(--gray1);--success-bg:#001f0f;--success-border:#003d1c;--success-text:#59f3a6;--info-bg:#000d1f;--info-border:#19233e;--info-text:#5896f3;--warning-bg:#1d1f00;--warning-border:#2e2e00;--warning-text:#f3cf58;--error-bg:#2d0607;--error-border:#4d0408;--error-text:#ff9ea1}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);z-index:10;position:absolute;inset:0}.sonner-loading-wrapper[data-visible=false]{transform-origin:50%;animation:.2s forwards sonner-fade-out}.sonner-spinner{height:var(--size);width:var(--size);position:relative;top:50%;left:50%}.sonner-loading-bar{background:var(--gray11);border-radius:6px;width:24%;height:8%;animation:1.2s linear infinite sonner-spin;position:absolute;top:-3.9%;left:-10%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg)translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg)translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg)translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg)translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg)translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg)translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg)translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg)translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg)translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg)translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg)translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg)translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{transform-origin:50%;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8)translate(-50%,-50%)} diff --git a/docs/assets/vendor-others-CUjrprN5.js b/docs/assets/vendor-others-CUjrprN5.js new file mode 100644 index 0000000..e9bcd4d --- /dev/null +++ b/docs/assets/vendor-others-CUjrprN5.js @@ -0,0 +1 @@ +import{At as e,Cn as t,Ct as n,Dn as r,Dt as i,En as a,Et as o,Ht as s,Jt as c,Kt as l,Lt as u,Mt as d,Nt as f,On as p,Ot as m,Pt as h,Qt as g,Rt as _,Sn as v,Tn as y,Ut as b,Vt as x,Wt as S,Xt as C,Yt as w,_n as T,cn as E,fn as D,hn as O,in as k,jt as A,kt as j,mn as M,nn as N,on as ee,pn as te,sn as P,tn as ne,un as F,vn as re,xn as I,zt as L}from"./game-logic-CfBcTF_c.js";function ie(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;ttypeof e==`boolean`?`${e}`:e===0?`0`:e;const se=ae,ce=(e,t)=>n=>{if(t?.variants==null)return se(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=oe(t)||oe(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return se(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)};function le(e){return typeof e==`string`?`'${e}'`:new ue().serialize(e)}var ue=function(){class e{#e=new Map;compare(e,t){let n=typeof e,r=typeof t;return n===`string`&&r===`string`?e.localeCompare(t):n===`number`&&r===`number`?e-t:String.prototype.localeCompare.call(this.serialize(e,!0),this.serialize(t,!0))}serialize(e,t){if(e===null)return`null`;switch(typeof e){case`string`:return t?e:`'${e}'`;case`bigint`:return`${e}n`;case`object`:return this.$object(e);case`function`:return this.$function(e)}return String(e)}serializeObject(e){let t=Object.prototype.toString.call(e);if(t!==`[object Object]`)return this.serializeBuiltInType(t.length<10?`unknown:${t}`:t.slice(8,-1),e);let n=e.constructor,r=n===Object||n===void 0?``:n.name;if(r!==``&&globalThis[r]===n)return this.serializeBuiltInType(r,e);if(typeof e.toJSON==`function`){let t=e.toJSON();return r+(typeof t==`object`&&t?this.$object(t):`(${this.serialize(t)})`)}return this.serializeObjectEntries(r,Object.entries(e))}serializeBuiltInType(e,t){let n=this[`$`+e];if(n)return n.call(this,t);if(typeof t?.entries==`function`)return this.serializeObjectEntries(e,t.entries());throw Error(`Cannot serialize ${e}`)}serializeObjectEntries(e,t){let n=Array.from(t).sort((e,t)=>this.compare(e[0],t[0])),r=`${e}{`;for(let e=0;ethis.compare(e,t)))}`}$Map(e){return this.serializeObjectEntries(`Map`,e.entries())}}for(let t of[`Error`,`RegExp`,`URL`])e.prototype[`$`+t]=function(e){return`${t}(${e})`};for(let t of[`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`,`)}]`};for(let t of[`BigInt64Array`,`BigUint64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`n,`)}${e.length>0?`n`:``}]`};return e}();function de(e,t){return e===t||le(e)===le(t)}function fe(e,t){let n=re();return N(()=>{n.value=e()},{...t,flush:t?.flush??`sync`}),M(n)}function R(e){return E()?(D(e),!0):!1}function pe(){let e=new Set,t=t=>{e.delete(t)};return{on:n=>{e.add(n);let r=()=>t(n);return R(r),{off:r}},off:t,trigger:(...t)=>Promise.all(Array.from(e).map(e=>e(...t))),clear:()=>{e.clear()}}}function me(e){let t=!1,n,r=P(!0);return(...i)=>(t||=(n=r.run(()=>e(...i)),!0),n)}function he(e){let t=0,n,r,i=()=>{--t,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return(...a)=>(t+=1,r||(r=P(!0),n=r.run(()=>e(...a))),R(i),n)}function ge(e){return F(e)?te(new Proxy({},{get(n,r,i){return t(Reflect.get(e.value,r,i))},set(t,n,r){return F(e.value[n])&&!F(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}})):te(e)}function _e(e){return ge(o(e))}function ve(e,...t){let n=t.flat(),r=n[0];return _e(()=>typeof r==`function`?Object.fromEntries(Object.entries(I(e)).filter(([e,t])=>!r(v(t),e))):Object.fromEntries(Object.entries(I(e)).filter(e=>!n.includes(e[0]))))}var ye=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var z=e=>e!==void 0,be=Object.prototype.toString,xe=e=>be.call(e)===`[object Object]`,Se=Ce();function Ce(){return ye&&(window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function we(e){return e||h()}function Te(e){return Array.isArray(e)?e:[e]}function Ee(e,t=1e4){return ee((n,r)=>{let i=v(e),a,o=()=>setTimeout(()=>{i=v(e),r()},v(t));return R(()=>{clearTimeout(a)}),{get(){return n(),i},set(e){i=e,r(),clearTimeout(a),a=o()}}})}function De(e,t){we(t)&&b(e,t)}function Oe(e,t,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,a=re(!1),o=null;function s(){o&&=(clearTimeout(o),null)}function c(){a.value=!1,s()}function l(...n){i&&e(),s(),a.value=!0,o=setTimeout(()=>{a.value=!1,o=null,e(...n)},v(t))}return r&&(a.value=!0,ye&&l()),R(c),{isPending:M(a),start:l,stop:c}}function ke(e,t,n){return ne(e,t,{...n,immediate:!0})}function Ae(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function je(e,t,n=`.`,r){if(!Ae(t))return je(e,{},n,r);let i=Object.assign({},t);for(let t in e){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(Array.isArray(a)&&Array.isArray(i[t])?i[t]=[...a,...i[t]]:Ae(a)&&Ae(i[t])?i[t]=je(a,i[t],(n?`${n}.`:``)+t.toString(),r):i[t]=a))}return i}function Me(e){return(...t)=>t.reduce((t,n)=>je(t,n,``,e),{})}var Ne=Me(),Pe=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Fe=new WeakMap,Ie=new WeakMap,Le={},Re=0,ze=function(e){return e&&(e.host||ze(e.parentNode))},Be=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=ze(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},Ve=function(e,t,n,r){var i=Be(t,Array.isArray(e)?e:[e]);Le[n]||(Le[n]=new WeakMap);var a=Le[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Fe.get(e)||0)+1,l=(a.get(e)||0)+1;Fe.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Ie.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Re++,function(){o.forEach(function(e){var t=Fe.get(e)-1,i=a.get(e)-1;Fe.set(e,t),a.set(e,i),t||(Ie.has(e)||e.removeAttribute(r),Ie.delete(e)),i||e.removeAttribute(n)}),Re--,Re||(Fe=new WeakMap,Fe=new WeakMap,Ie=new WeakMap,Le={})}},He=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Pe(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),Ve(r,i,n,`aria-hidden`)):function(){return null}},Ue=[`top`,`right`,`bottom`,`left`],B=Math.min,V=Math.max,We=Math.round,Ge=Math.floor,H=e=>({x:e,y:e}),Ke={left:`right`,right:`left`,bottom:`top`,top:`bottom`},qe={start:`end`,end:`start`};function Je(e,t,n){return V(e,B(t,n))}function U(e,t){return typeof e==`function`?e(t):e}function W(e){return e.split(`-`)[0]}function Ye(e){return e.split(`-`)[1]}function Xe(e){return e===`x`?`y`:`x`}function Ze(e){return e===`y`?`height`:`width`}var Qe=new Set([`top`,`bottom`]);function G(e){return Qe.has(W(e))?`y`:`x`}function $e(e){return Xe(G(e))}function et(e,t,n){n===void 0&&(n=!1);let r=Ye(e),i=$e(e),a=Ze(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=lt(o)),[o,lt(o)]}function tt(e){let t=lt(e);return[nt(e),t,nt(t)]}function nt(e){return e.replace(/start|end/g,e=>qe[e])}var rt=[`left`,`right`],it=[`right`,`left`],at=[`top`,`bottom`],ot=[`bottom`,`top`];function st(e,t,n){switch(e){case`top`:case`bottom`:return n?t?it:rt:t?rt:it;case`left`:case`right`:return t?at:ot;default:return[]}}function ct(e,t,n,r){let i=Ye(e),a=st(W(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(nt)))),a}function lt(e){return e.replace(/left|right|bottom|top/g,e=>Ke[e])}function ut(e){return{top:0,right:0,bottom:0,left:0,...e}}function dt(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:ut(e)}function ft(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function pt(e,t,n){let{reference:r,floating:i}=e,a=G(t),o=$e(t),s=Ze(o),c=W(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(Ye(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}var mt=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=pt(l,r,c),f=r,p={},m=0;for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=U(e,t)||{};if(l==null)return{};let d=dt(u),f={x:n,y:r},p=$e(i),m=Ze(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=B(d[_],T),D=B(d[v],T),O=E,k=C-h[m]-D,A=C/2-h[m]/2+w,j=Je(O,A,k),M=!c.arrow&&Ye(i)!=null&&A!==j&&a.reference[m]/2-(Ae<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==G(t))||T.every(e=>G(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=G(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function vt(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function yt(e){return Ue.some(t=>e[t]>=0)}var bt=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n}=t,{strategy:r=`referenceHidden`,...i}=U(e,t);switch(r){case`referenceHidden`:{let e=vt(await ht(t,{...i,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:yt(e)}}}case`escaped`:{let e=vt(await ht(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:yt(e)}}}default:return{}}}}},xt=new Set([`left`,`top`]);async function St(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=W(n),s=Ye(n),c=G(n)===`y`,l=xt.has(o)?-1:1,u=a&&c?-1:1,d=U(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Ct=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await St(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},wt=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=U(e,t),l={x:n,y:r},u=await ht(t,c),d=G(W(i)),f=Xe(d),p=l[f],m=l[d];if(a){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=p+u[e],r=p-u[t];p=Je(n,p,r)}if(o){let e=d===`y`?`top`:`left`,t=d===`y`?`bottom`:`right`,n=m+u[e],r=m-u[t];m=Je(n,m,r)}let h=s.fn({...t,[f]:p,[d]:m});return{...h,data:{x:h.x-n,y:h.y-r,enabled:{[f]:a,[d]:o}}}}}},Tt=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=U(e,t),u={x:n,y:r},d=G(i),f=Xe(d),p=u[f],m=u[d],h=U(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;pn&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=xt.has(W(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);mr&&(m=r)}return{[f]:p,[d]:m}}}},Et=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=U(e,t),u=await ht(t,l),d=W(i),f=Ye(i),p=G(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=B(h-u[g],v),x=B(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=V(u.left,0),t=V(u.right,0),n=V(u.top,0),r=V(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:V(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:V(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function Dt(){return typeof window<`u`}function Ot(e){return kt(e)?(e.nodeName||``).toLowerCase():`#document`}function K(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function q(e){return((kt(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function kt(e){return Dt()?e instanceof Node||e instanceof K(e).Node:!1}function J(e){return Dt()?e instanceof Element||e instanceof K(e).Element:!1}function Y(e){return Dt()?e instanceof HTMLElement||e instanceof K(e).HTMLElement:!1}function At(e){return!Dt()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof K(e).ShadowRoot}var jt=new Set([`inline`,`contents`]);function Mt(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=X(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!jt.has(i)}var Nt=new Set([`table`,`td`,`th`]);function Pt(e){return Nt.has(Ot(e))}var Ft=[`:popover-open`,`:modal`];function It(e){return Ft.some(t=>{try{return e.matches(t)}catch{return!1}})}var Lt=[`transform`,`translate`,`scale`,`rotate`,`perspective`],Rt=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],zt=[`paint`,`layout`,`strict`,`content`];function Bt(e){let t=Ht(),n=J(e)?X(e):e;return Lt.some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||Rt.some(e=>(n.willChange||``).includes(e))||zt.some(e=>(n.contain||``).includes(e))}function Vt(e){let t=Z(e);for(;Y(t)&&!Wt(t);){if(Bt(t))return t;if(It(t))return null;t=Z(t)}return null}function Ht(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var Ut=new Set([`html`,`body`,`#document`]);function Wt(e){return Ut.has(Ot(e))}function X(e){return K(e).getComputedStyle(e)}function Gt(e){return J(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Z(e){if(Ot(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||At(e)&&e.host||q(e);return At(t)?t.host:t}function Kt(e){let t=Z(e);return Wt(t)?e.ownerDocument?e.ownerDocument.body:e.body:Y(t)&&Mt(t)?t:Kt(t)}function qt(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Kt(e),i=r===e.ownerDocument?.body,a=K(r);if(i){let e=Jt(a);return t.concat(a,a.visualViewport||[],Mt(r)?r:[],e&&n?qt(e):[])}return t.concat(r,qt(r,[],n))}function Jt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Yt(e){let t=X(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=Y(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=We(n)!==a||We(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Xt(e){return J(e)?e:e.contextElement}function Zt(e){let t=Xt(e);if(!Y(t))return H(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Yt(t),o=(a?We(n.width):n.width)/r,s=(a?We(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Qt=H(0);function $t(e){let t=K(e);return!Ht()||!t.visualViewport?Qt:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function en(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==K(e)?!1:t}function tn(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Xt(e),o=H(1);t&&(r?J(r)&&(o=Zt(r)):o=Zt(e));let s=en(a,n,r)?$t(a):H(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=K(a),t=r&&J(r)?K(r):r,n=e,i=Jt(n);for(;i&&r&&t!==n;){let e=Zt(i),t=i.getBoundingClientRect(),r=X(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=K(i),i=Jt(n)}}return ft({width:u,height:d,x:c,y:l})}function nn(e,t){let n=Gt(e).scrollLeft;return t?t.left+n:tn(q(e)).left+n}function rn(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-nn(e,n),y:n.top+t.scrollTop}}function an(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=q(r),s=t?It(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=H(1),u=H(0),d=Y(r);if((d||!d&&!a)&&((Ot(r)!==`body`||Mt(o))&&(c=Gt(r)),Y(r))){let e=tn(r);l=Zt(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?rn(o,c):H(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function on(e){return Array.from(e.getClientRects())}function sn(e){let t=q(e),n=Gt(e),r=e.ownerDocument.body,i=V(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=V(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+nn(e),s=-n.scrollTop;return X(r).direction===`rtl`&&(o+=V(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var cn=25;function ln(e,t){let n=K(e),r=q(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=Ht();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=nn(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=cn&&(a-=o)}else l<=cn&&(a+=l);return{width:a,height:o,x:s,y:c}}var un=new Set([`absolute`,`fixed`]);function dn(e,t){let n=tn(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Y(e)?Zt(e):H(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function fn(e,t,n){let r;if(t===`viewport`)r=ln(e,n);else if(t===`document`)r=sn(q(e));else if(J(t))r=dn(t,n);else{let n=$t(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ft(r)}function pn(e,t){let n=Z(e);return n===t||!J(n)||Wt(n)?!1:X(n).position===`fixed`||pn(n,t)}function mn(e,t){let n=t.get(e);if(n)return n;let r=qt(e,[],!1).filter(e=>J(e)&&Ot(e)!==`body`),i=null,a=X(e).position===`fixed`,o=a?Z(e):e;for(;J(o)&&!Wt(o);){let t=X(o),n=Bt(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&un.has(i.position)||Mt(o)&&!n&&pn(e,o))?r=r.filter(e=>e!==o):i=t,o=Z(o)}return t.set(e,r),r}function hn(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?It(t)?[]:mn(t,this._c):[].concat(n),r],o=a[0],s=a.reduce((e,n)=>{let r=fn(t,n,i);return e.top=V(r.top,e.top),e.right=B(r.right,e.right),e.bottom=B(r.bottom,e.bottom),e.left=V(r.left,e.left),e},fn(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function gn(e){let{width:t,height:n}=Yt(e);return{width:t,height:n}}function _n(e,t,n){let r=Y(t),i=q(t),a=n===`fixed`,o=tn(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=H(0);function l(){c.x=nn(i)}if(r||!r&&!a)if((Ot(t)!==`body`||Mt(i))&&(s=Gt(t)),r){let e=tn(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?rn(i,s):H(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function vn(e){return X(e).position===`static`}function yn(e,t){if(!Y(e)||X(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return q(e)===n&&(n=n.ownerDocument.body),n}function bn(e,t){let n=K(e);if(It(e))return n;if(!Y(e)){let t=Z(e);for(;t&&!Wt(t);){if(J(t)&&!vn(t))return t;t=Z(t)}return n}let r=yn(e,t);for(;r&&Pt(r)&&vn(r);)r=yn(r,t);return r&&Wt(r)&&vn(r)&&!Bt(r)?n:r||Vt(e)||n}var xn=async function(e){let t=this.getOffsetParent||bn,n=this.getDimensions,r=await n(e.floating);return{reference:_n(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Sn(e){return X(e).direction===`rtl`}var Cn={convertOffsetParentRelativeRectToViewportRelativeRect:an,getDocumentElement:q,getClippingRect:hn,getOffsetParent:bn,getElementRects:xn,getClientRects:on,getDimensions:gn,getScale:Zt,isElement:J,isRTL:Sn};function wn(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Tn(e,t){let n=null,r,i=q(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=Ge(d),h=Ge(i.clientWidth-(u+f)),g=Ge(i.clientHeight-(d+p)),_=Ge(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:V(0,B(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!wn(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function En(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Xt(e),u=i||a?[...l?qt(l):[],...qt(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?Tn(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?tn(e):null;c&&g();function g(){let t=tn(e);h&&!wn(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var Dn=Ct,On=wt,kn=_t,An=Et,jn=bt,Mn=gt,Nn=Tt,Pn=(e,t,n)=>{let r=new Map,i={platform:Cn,...n},a={...i.platform,_c:r};return mt(e,t,{...i,platform:a})};function Fn(e){return typeof e==`object`&&!!e&&`$el`in e}function In(e){if(Fn(e)){let t=e.$el;return kt(t)&&Ot(t)===`#comment`?null:t}return e}function Ln(e){return typeof e==`function`?e():t(e)}function Rn(e){return{name:`arrow`,options:e,fn(t){let n=In(Ln(e.element));return n==null?{}:Mn({element:n,padding:e.padding}).fn(t)}}}function zn(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Bn(e,t){let n=zn(e);return Math.round(t*n)/n}function Vn(e,t,n){n===void 0&&(n={});let r=n.whileElementsMounted,i=o(()=>Ln(n.open)??!0),a=o(()=>Ln(n.middleware)),s=o(()=>Ln(n.placement)??`bottom`),c=o(()=>Ln(n.strategy)??`absolute`),l=o(()=>Ln(n.transform)??!0),u=o(()=>In(e.value)),d=o(()=>In(t.value)),f=O(0),p=O(0),m=O(c.value),h=O(s.value),g=re({}),_=O(!1),v=o(()=>{let e={position:m.value,left:`0`,top:`0`};if(!d.value)return e;let t=Bn(d.value,f.value),n=Bn(d.value,p.value);return l.value?{...e,transform:`translate(`+t+`px, `+n+`px)`,...zn(d.value)>=1.5&&{willChange:`transform`}}:{position:m.value,left:t+`px`,top:n+`px`}}),y;function b(){if(u.value==null||d.value==null)return;let e=i.value;Pn(u.value,d.value,{middleware:a.value,placement:s.value,strategy:c.value}).then(t=>{f.value=t.x,p.value=t.y,m.value=t.strategy,h.value=t.placement,g.value=t.middlewareData,_.value=e!==!1})}function x(){typeof y==`function`&&(y(),y=void 0)}function S(){if(x(),r===void 0){b();return}if(u.value!=null&&d.value!=null){y=r(u.value,d.value,b);return}}function C(){i.value||(_.value=!1)}return ne([a,s,c,i],b,{flush:`sync`}),ne([u,d],S,{flush:`sync`}),ne(i,C,{flush:`sync`}),E()&&D(x),{x:T(f),y:T(p),strategy:T(m),placement:T(h),middlewareData:T(g),isPositioned:T(_),floatingStyles:v,update:b}}var Hn=new WeakMap,Un=(...e)=>{let t=e[0],n=h()?.proxy??E();if(n==null&&!u())throw Error(`injectLocal must be called in setup`);return n&&Hn.has(n)&&t in Hn.get(n)?Hn.get(n)[t]:_(...e)},Wn=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var Gn=e=>e!==void 0,Kn=Object.prototype.toString,qn=e=>Kn.call(e)===`[object Object]`;function Jn(e){return e.endsWith(`rem`)?Number.parseFloat(e)*16:Number.parseFloat(e)}function Yn(e){return Array.isArray(e)?e:[e]}function Xn(e){return F(e)?te(new Proxy({},{get(n,r,i){return t(Reflect.get(e.value,r,i))},set(t,n,r){return F(e.value[n])&&!F(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}})):te(e)}function Zn(e){return Xn(o(e))}function Qn(e,...t){let n=t.flat(),r=n[0];return Zn(()=>typeof r==`function`?Object.fromEntries(Object.entries(I(e)).filter(([e,t])=>!r(v(t),e))):Object.fromEntries(Object.entries(I(e)).filter(e=>!n.includes(e[0]))))}function $n(e,t,n){return ne(e,t,{...n,immediate:!0})}var er=1,Q=new class{subscribers;toasts;dismissedToasts;constructor(){this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)});publish=e=>{this.subscribers.forEach(t=>t(e))};addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]};create=e=>{let{message:t,...n}=e,r=typeof e.id==`number`||e.id&&e.id?.length>0?e.id:er++,i=this.toasts.find(e=>e.id===r),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),i?this.toasts=this.toasts.map(n=>n.id===r?(this.publish({...n,...e,id:r,title:t}),{...n,...e,id:r,dismissible:a,title:t}):n):this.addToast({title:t,...n,dismissible:a,id:r}),r};dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(t=>t({id:e,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(t=>t({id:e.id,dismiss:!0}))}),e);message=(e,t)=>this.create({...t,message:e,type:`default`});error=(e,t)=>this.create({...t,type:`error`,message:e});success=(e,t)=>this.create({...t,type:`success`,message:e});info=(e,t)=>this.create({...t,type:`info`,message:e});warning=(e,t)=>this.create({...t,type:`warning`,message:e});loading=(e,t)=>this.create({...t,type:`loading`,message:e});promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:`loading`,message:t.loading,description:typeof t.description==`function`?void 0:t.description}));let r=Promise.resolve(e instanceof Function?e():e),i=n!==void 0,a,o=r.then(async e=>{if(a=[`resolve`,e],L(e))i=!1,this.create({id:n,type:`default`,message:e});else if(nr(e)&&!e.ok){i=!1;let r=typeof t.error==`function`?await t.error(`HTTP error! status: ${e.status}`):t.error,a=typeof t.description==`function`?await t.description(`HTTP error! status: ${e.status}`):t.description,o=typeof r==`object`&&!L(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}else if(e instanceof Error){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!L(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}else if(t.success!==void 0){i=!1;let r=typeof t.success==`function`?await t.success(e):t.success,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!L(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`success`,description:a,...o})}}).catch(async e=>{if(a=[`reject`,e],t.error!==void 0){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!L(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}}).finally(()=>{i&&(this.dismiss(n),n=void 0),t.finally?.()}),s=()=>new Promise((e,t)=>o.then(()=>a[0]===`reject`?t(a[1]):e(a[1])).catch(t));return typeof n!=`string`&&typeof n!=`number`?{unwrap:s}:Object.assign(n,{unwrap:s})};custom=(e,t)=>{let n=t?.id||er++,r=this.toasts.find(e=>e.id===n),i=t?.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(n)&&this.dismissedToasts.delete(n),r?this.toasts=this.toasts.map(r=>r.id===n?(this.publish({...r,component:e,dismissible:i,id:n,...t}),{...r,component:e,dismissible:i,id:n,...t}):r):this.addToast({component:e,dismissible:i,id:n,...t}),n};getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id))};function tr(e,t){let n=t?.id||er++;return Q.create({message:e,id:n,type:`default`,...t}),n}var nr=e=>e&&typeof e==`object`&&`ok`in e&&typeof e.ok==`boolean`&&`status`in e&&typeof e.status==`number`,rr=tr,ir=Object.assign(rr,{success:Q.success,info:Q.info,warning:Q.warning,error:Q.error,custom:Q.custom,message:Q.message,promise:Q.promise,dismiss:Q.dismiss,loading:Q.loading},{getHistory:()=>Q.toasts,getToasts:()=>Q.getActiveToasts()});function ar(e){return e.label!==void 0}var or=3,sr=`24px`,cr=`16px`,lr=4e3,ur=356,dr=14,fr=45,pr=200;function mr(){let e=O(!1);return N(()=>{let t=()=>{e.value=document.hidden};return document.addEventListener(`visibilitychange`,t),()=>window.removeEventListener(`visibilitychange`,t)}),{isDocumentHidden:e}}function $(...e){return e.filter(Boolean).join(` `)}function hr(e){let[t,n]=e.split(`-`),r=[];return t&&r.push(t),n&&r.push(n),r}function gr(e,t){let n={};return[e,t].forEach((e,t)=>{let r=t===1,i=r?`--mobile-offset`:`--offset`,a=r?cr:sr;function o(e){[`top`,`right`,`bottom`,`left`].forEach(t=>{n[`${i}-${t}`]=typeof e==`number`?`${e}px`:e})}typeof e==`number`||typeof e==`string`?o(e):typeof e==`object`?[`top`,`right`,`bottom`,`left`].forEach(t=>{e[t]===void 0?n[`${i}-${t}`]=a:n[`${i}-${t}`]=typeof e[t]==`number`?`${e[t]}px`:e[t]}):o(a)}),n}var _r=[`data-rich-colors`,`data-styled`,`data-mounted`,`data-promise`,`data-swiped`,`data-removed`,`data-visible`,`data-y-position`,`data-x-position`,`data-index`,`data-front`,`data-swiping`,`data-dismissible`,`data-type`,`data-invert`,`data-swipe-out`,`data-swipe-direction`,`data-expanded`,`data-testid`],vr=[`aria-label`,`data-disabled`,`data-close-button-position`],yr=f({__name:`Toast`,props:{toast:{},toasts:{},index:{},swipeDirections:{},expanded:{type:Boolean},invert:{type:Boolean},heights:{},gap:{},position:{},closeButtonPosition:{},visibleToasts:{},expandByDefault:{type:Boolean},closeButton:{type:Boolean},interacting:{type:Boolean},style:{},cancelButtonStyle:{},actionButtonStyle:{},duration:{},class:{},unstyled:{type:Boolean},descriptionClass:{},loadingIcon:{},classes:{},icons:{},closeButtonAriaLabel:{},defaultRichColors:{type:Boolean}},emits:[`update:heights`,`update:height`,`removeToast`],setup(c,{emit:u}){let d=c,f=u,h=O(null),g=O(null),_=O(!1),v=O(!1),T=O(!1),E=O(!1),D=O(!1),k=O(0),M=O(0),ee=O(d.toast.duration||d.duration||lr),te=O(null),P=O(null),F=o(()=>d.index===0),re=o(()=>d.index+1<=d.visibleToasts),I=o(()=>d.toast.type),L=o(()=>d.toast.dismissible!==!1),ie=o(()=>d.toast.class||``),ae=o(()=>d.descriptionClass||``),oe=o(()=>{let e=d.toast.position||d.position,t=d.heights.filter(t=>t.position===e).findIndex(e=>e.toastId===d.toast.id);return t>=0?t:0}),se=o(()=>{let e=d.toast.position||d.position;return d.heights.filter(t=>t.position===e).reduce((e,t,n)=>n>=oe.value?e:e+t.height,0)}),ce=o(()=>oe.value*d.gap+se.value||0),le=o(()=>d.toast.closeButton??d.closeButton),ue=o(()=>d.toast.duration||d.duration||lr),de=O(0),fe=O(0),R=O(null),pe=o(()=>d.position.split(`-`)),me=o(()=>pe.value[0]),he=o(()=>pe.value[1]),ge=o(()=>typeof d.toast.title!=`string`),_e=o(()=>typeof d.toast.description!=`string`),{isDocumentHidden:ve}=mr(),ye=o(()=>I.value&&I.value===`loading`);S(()=>{_.value=!0,ee.value=ue.value}),N(async()=>{if(!_.value||!P.value)return;await s();let e=P.value,t=e.style.height;e.style.height=`auto`;let n=e.getBoundingClientRect().height;e.style.height=t,M.value=n,f(`update:height`,{toastId:d.toast.id,height:n,position:d.toast.position||d.position})});function z(){v.value=!0,k.value=ce.value,setTimeout(()=>{f(`removeToast`,d.toast)},pr)}function be(){if(ye.value||!L.value)return{};z(),d.toast.onDismiss?.(d.toast)}function xe(e){e.button!==2&&(ye.value||!L.value||(te.value=new Date,k.value=ce.value,e.target.setPointerCapture(e.pointerId),e.target.tagName!==`BUTTON`&&(T.value=!0,R.value={x:e.clientX,y:e.clientY})))}function Se(){if(E.value||!L.value)return;R.value=null;let e=Number(P.value?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),t=Number(P.value?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),n=new Date().getTime()-(te.value?.getTime()||0),r=h.value===`x`?e:t,i=Math.abs(r)/n;if(Math.abs(r)>=fr||i>.11){k.value=ce.value,d.toast.onDismiss?.(d.toast),h.value===`x`?g.value=e>0?`right`:`left`:g.value=t>0?`down`:`up`,z(),E.value=!0;return}else P.value?.style.setProperty(`--swipe-amount-x`,`0px`),P.value?.style.setProperty(`--swipe-amount-y`,`0px`);D.value=!1,T.value=!1,h.value=null}function Ce(e){if(!R.value||!L.value||(window?.getSelection()?.toString()?.length??!1))return;let t=e.clientY-R.value.y,n=e.clientX-R.value.x,r=d.swipeDirections??hr(d.position);!h.value&&(Math.abs(n)>1||Math.abs(t)>1)&&(h.value=Math.abs(n)>Math.abs(t)?`x`:`y`);let i={x:0,y:0},a=e=>1/(1.5+Math.abs(e)/20);if(h.value===`y`){if(r.includes(`top`)||r.includes(`bottom`))if(r.includes(`top`)&&t<0||r.includes(`bottom`)&&t>0)i.y=t;else{let e=t*a(t);i.y=Math.abs(e)0)i.x=n;else{let e=n*a(n);i.x=Math.abs(e)0||Math.abs(i.y)>0)&&(D.value=!0),P.value?.style.setProperty(`--swipe-amount-x`,`${i.x}px`),P.value?.style.setProperty(`--swipe-amount-y`,`${i.y}px`)}S(()=>{if(_.value=!0,!P.value)return;let e=P.value.getBoundingClientRect().height;M.value=e,f(`update:heights`,[{toastId:d.toast.id,height:e,position:d.toast.position},...d.heights])}),b(()=>{P.value&&f(`removeToast`,d.toast)}),N(e=>{if(d.toast.promise&&I.value===`loading`||d.toast.duration===1/0||d.toast.type===`loading`)return;let t;d.expanded||d.interacting||ve.value?(()=>{if(fe.value{d.toast.onAutoClose?.(d.toast),z()},ee.value)),e(()=>{clearTimeout(t)})}),ne(()=>d.toast.delete,e=>{e!==void 0&&e&&(z(),d.toast.onDismiss?.(d.toast))},{deep:!0});function we(){T.value=!1,h.value=null,R.value=null}return(o,s)=>(l(),e(`li`,{tabindex:`0`,ref_key:`toastRef`,ref:P,class:y(t($)(d.class,ie.value,o.classes?.toast,o.toast.classes?.toast,o.classes?.[I.value],o.toast?.classes?.[I.value])),"data-sonner-toast":``,"data-rich-colors":o.toast.richColors??o.defaultRichColors,"data-styled":!(o.toast.component||o.toast?.unstyled||o.unstyled),"data-mounted":_.value,"data-promise":!!o.toast.promise,"data-swiped":D.value,"data-removed":v.value,"data-visible":re.value,"data-y-position":me.value,"data-x-position":he.value,"data-index":o.index,"data-front":F.value,"data-swiping":T.value,"data-dismissible":L.value,"data-type":I.value,"data-invert":o.toast.invert||o.invert,"data-swipe-out":E.value,"data-swipe-direction":g.value,"data-expanded":!!(o.expanded||o.expandByDefault&&_.value),"data-testid":o.toast.testId,style:r({"--index":o.index,"--toasts-before":o.index,"--z-index":o.toasts.length-o.index,"--offset":`${v.value?k.value:ce.value}px`,"--initial-height":o.expandByDefault?`auto`:`${M.value}px`,...o.style,...d.toast.style}),onDragend:we,onPointerdown:xe,onPointerup:Se,onPointermove:Ce},[le.value&&!o.toast.component&&I.value!==`loading`?(l(),e(`button`,{key:0,"aria-label":o.closeButtonAriaLabel||`Close toast`,"data-disabled":ye.value,"data-close-button":`true`,"data-close-button-position":o.closeButtonPosition,class:y(t($)(o.classes?.closeButton,o.toast?.classes?.closeButton)),onClick:be},[o.icons?.close?(l(),m(C(o.icons?.close),{key:0})):w(o.$slots,`close-icon`,{key:1})],10,vr)):j(`v-if`,!0),o.toast.component?(l(),m(C(o.toast.component),x({key:1},o.toast.componentProps,{onCloseToast:be,isPaused:o.$props.expanded||o.$props.interacting||t(ve)}),null,16,[`isPaused`])):(l(),e(n,{key:2},[I.value!==`default`||o.toast.icon||o.toast.promise?(l(),e(`div`,{key:0,"data-icon":``,class:y(t($)(o.classes?.icon,o.toast?.classes?.icon))},[o.toast.icon?(l(),m(C(o.toast.icon),{key:0})):(l(),e(n,{key:1},[I.value===`loading`?w(o.$slots,`loading-icon`,{key:0}):I.value===`success`?w(o.$slots,`success-icon`,{key:1}):I.value===`error`?w(o.$slots,`error-icon`,{key:2}):I.value===`warning`?w(o.$slots,`warning-icon`,{key:3}):I.value===`info`?w(o.$slots,`info-icon`,{key:4}):j(`v-if`,!0)],64))],2)):j(`v-if`,!0),i(`div`,{"data-content":``,class:y(t($)(o.classes?.content,o.toast?.classes?.content))},[i(`div`,{"data-title":``,class:y(t($)(o.classes?.title,o.toast.classes?.title))},[ge.value?(l(),m(C(o.toast.title),a(x({key:0},o.toast.componentProps)),null,16)):(l(),e(n,{key:1},[A(p(o.toast.title),1)],64))],2),o.toast.description?(l(),e(`div`,{key:0,"data-description":``,class:y(t($)(o.descriptionClass,ae.value,o.classes?.description,o.toast.classes?.description))},[_e.value?(l(),m(C(o.toast.description),a(x({key:0},o.toast.componentProps)),null,16)):(l(),e(n,{key:1},[A(p(o.toast.description),1)],64))],2)):j(`v-if`,!0)],2),o.toast.cancel?(l(),e(`button`,{key:1,style:r(o.toast.cancelButtonStyle||o.cancelButtonStyle),class:y(t($)(o.classes?.cancelButton,o.toast.classes?.cancelButton)),"data-button":``,"data-cancel":``,onClick:s[0]||=e=>{t(ar)(o.toast.cancel)&&L.value&&(o.toast.cancel.onClick?.(e),z())}},p(t(ar)(o.toast.cancel)?o.toast.cancel?.label:o.toast.cancel),7)):j(`v-if`,!0),o.toast.action?(l(),e(`button`,{key:2,style:r(o.toast.actionButtonStyle||o.actionButtonStyle),class:y(t($)(o.classes?.actionButton,o.toast.classes?.actionButton)),"data-button":``,"data-action":``,onClick:s[1]||=e=>{t(ar)(o.toast.action)&&(o.toast.action.onClick?.(e),!e.defaultPrevented&&z())}},p(t(ar)(o.toast.action)?o.toast.action?.label:o.toast.action),7)):j(`v-if`,!0)],64))],46,_r))}}),br=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},xr={},Sr={xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stoke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Cr(t,n){return l(),e(`svg`,Sr,n[0]||=[i(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1),i(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1)])}var wr=br(xr,[[`render`,Cr]]),Tr=[`data-visible`],Er={class:`sonner-spinner`},Dr=f({__name:`Loader`,props:{visible:{type:Boolean}},setup(r){let a=Array(12).fill(0);return(r,o)=>(l(),e(`div`,{class:`sonner-loading-wrapper`,"data-visible":r.visible},[i(`div`,Er,[(l(!0),e(n,null,c(t(a),t=>(l(),e(`div`,{key:`spinner-bar-${t}`,class:`sonner-loading-bar`}))),128))])],8,Tr))}}),Or={},kr={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function Ar(t,n){return l(),e(`svg`,kr,n[0]||=[i(`path`,{"fill-rule":`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,"clip-rule":`evenodd`},null,-1)])}var jr=br(Or,[[`render`,Ar]]),Mr={},Nr={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function Pr(t,n){return l(),e(`svg`,Nr,n[0]||=[i(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,"clip-rule":`evenodd`},null,-1)])}var Fr=br(Mr,[[`render`,Pr]]),Ir={},Lr={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`};function Rr(t,n){return l(),e(`svg`,Lr,n[0]||=[i(`path`,{"fill-rule":`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,"clip-rule":`evenodd`},null,-1)])}var zr=br(Ir,[[`render`,Rr]]),Br={},Vr={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function Hr(t,n){return l(),e(`svg`,Vr,n[0]||=[i(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,"clip-rule":`evenodd`},null,-1)])}var Ur=br(Br,[[`render`,Hr]]),Wr=[`aria-label`],Gr=[`data-sonner-theme`,`dir`,`data-theme`,`data-rich-colors`,`data-y-position`,`data-x-position`],Kr=typeof window<`u`&&typeof document<`u`;function qr(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let e=document.documentElement.getAttribute(`dir`);return e===`auto`||!e?window.getComputedStyle(document.documentElement).direction:e}var Jr=f({name:`Toaster`,inheritAttrs:!1,__name:`Toaster`,props:{id:{},invert:{type:Boolean,default:!1},theme:{default:`light`},position:{default:`bottom-right`},closeButtonPosition:{default:`top-left`},hotkey:{default:()=>[`altKey`,`KeyT`]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},duration:{},gap:{default:dr},visibleToasts:{default:or},closeButton:{type:Boolean,default:!1},toastOptions:{default:()=>({})},class:{default:``},style:{},offset:{default:sr},mobileOffset:{default:cr},dir:{default:`auto`},swipeDirections:{},icons:{},containerAriaLabel:{default:`Notifications`}},setup(a){let u=a,f=g(),p=O([]),h=o(()=>u.id?p.value.filter(e=>e.toasterId===u.id):p.value.filter(e=>!e.toasterId));function _(e,t){return h.value.filter(n=>!n.position&&t===0||n.position===e)}let v=o(()=>{let e=h.value.filter(e=>e.position).map(e=>e.position);return e.length>0?Array.from(new Set([u.position].concat(e))):[u.position]}),b=o(()=>{let e={};return v.value.forEach(t=>{e[t]=p.value.filter(e=>e.position===t)}),e}),S=O([]),C=O({}),T=O(!1);N(()=>{v.value.forEach(e=>{e in C.value||(C.value[e]=!1)})});let E=O(u.theme===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:u.theme),D=O(null),A=O(null),M=O(!1),ee=u.hotkey.join(`+`).replace(/Key/g,``).replace(/Digit/g,``);function te(e){p.value.find(t=>t.id===e.id)?.delete||Q.dismiss(e.id),p.value=p.value.filter(({id:t})=>t!==e.id),setTimeout(()=>{p.value.find(t=>t.id===e.id)||(S.value=S.value.filter(t=>t.toastId!==e.id))},pr+50)}function P(e){M.value&&!e.currentTarget?.contains?.(e.relatedTarget)&&(M.value=!1,A.value&&=(A.value.focus({preventScroll:!0}),null))}function ne(e){e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||M.value||(M.value=!0,A.value=e.relatedTarget)}function F(e){e.target&&e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||(T.value=!0)}N(e=>{e(Q.subscribe(e=>{if(e.dismiss){requestAnimationFrame(()=>{p.value=p.value.map(t=>t.id===e.id?{...t,delete:!0}:t)});return}s(()=>{let t=p.value.findIndex(t=>t.id===e.id);t===-1?p.value=[e,...p.value]:p.value=[...p.value.slice(0,t),{...p.value[t],...e},...p.value.slice(t+1)]})}))}),N(e=>{if(typeof window>`u`)return;if(u.theme!==`system`){E.value=u.theme;return}let t=window.matchMedia(`(prefers-color-scheme: dark)`),n=e=>{E.value=e?`dark`:`light`};n(t.matches);let r=e=>{n(e.matches)};try{t.addEventListener(`change`,r)}catch{t.addListener(r)}e(()=>{try{t.removeEventListener(`change`,r)}catch{t.removeListener(r)}})}),N(()=>{D.value&&A.value&&(A.value.focus({preventScroll:!0}),A.value=null,M.value=!1)}),N(()=>{p.value.length<=1&&Object.keys(C.value).forEach(e=>{C.value[e]=!1})}),N(e=>{function t(e){let t=u.hotkey.every(t=>e[t]||e.code===t),n=Array.isArray(D.value)?D.value[0]:D.value;t&&(v.value.forEach(e=>{C.value[e]=!0}),n?.focus());let r=document.activeElement===D.value||n?.contains(document.activeElement);e.code===`Escape`&&r&&v.value.forEach(e=>{C.value[e]=!1})}Kr&&(document.addEventListener(`keydown`,t),e(()=>{document.removeEventListener(`keydown`,t)}))});function re(e){let t=e.currentTarget,n=t.getAttribute(`data-y-position`)+`-`+t.getAttribute(`data-x-position`);C.value[n]=!0}function I(e){if(!T.value){let t=e.currentTarget,n=t.getAttribute(`data-y-position`)+`-`+t.getAttribute(`data-x-position`);C.value[n]=!1}}function L(){Object.keys(C.value).forEach(e=>{C.value[e]=!1})}function ie(){T.value=!1}function ae(e){S.value=e}function oe(e){let t=S.value.findIndex(t=>t.toastId===e.toastId);if(t!==-1)S.value[t]=e;else{let t=S.value.findIndex(t=>t.position===e.position);t===-1?S.value.unshift(e):S.value.splice(t,0,e)}}return(a,o)=>(l(),e(n,null,[j(` Remove item from normal navigation flow, only available via hotkey `),i(`section`,{"aria-label":`${a.containerAriaLabel} ${t(ee)}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`},[(l(!0),e(n,null,c(v.value,(i,o)=>(l(),e(`ol`,x({key:i,ref_for:!0,ref_key:`listRef`,ref:D,"data-sonner-toaster":``,"data-sonner-theme":E.value,class:u.class,dir:a.dir===`auto`?qr():a.dir,tabIndex:-1,"data-theme":a.theme,"data-rich-colors":a.richColors,"data-y-position":i.split(`-`)[0],"data-x-position":i.split(`-`)[1],style:{"--front-toast-height":`${S.value[0]?.height||0}px`,"--width":`${t(ur)}px`,"--gap":`${a.gap}px`,...a.style,...t(f).style,...t(gr)(a.offset,a.mobileOffset)}},{ref_for:!0},a.$attrs,{onBlur:P,onFocus:ne,onMouseenter:re,onMousemove:re,onMouseleave:I,onDragend:L,onPointerdown:F,onPointerup:ie}),[(l(!0),e(n,null,c(_(i,o),(e,t)=>(l(),m(yr,{key:e.id,heights:S.value,icons:a.icons,index:t,toast:e,defaultRichColors:a.richColors,duration:a.toastOptions?.duration??a.duration,class:y(a.toastOptions?.class??``),descriptionClass:a.toastOptions?.descriptionClass,invert:a.invert,visibleToasts:a.visibleToasts,closeButton:a.toastOptions?.closeButton??a.closeButton,interacting:T.value,position:i,closeButtonPosition:a.toastOptions?.closeButtonPosition??a.closeButtonPosition,style:r(a.toastOptions?.style),unstyled:a.toastOptions?.unstyled,classes:a.toastOptions?.classes,cancelButtonStyle:a.toastOptions?.cancelButtonStyle,actionButtonStyle:a.toastOptions?.actionButtonStyle,"close-button-aria-label":a.toastOptions?.closeButtonAriaLabel,toasts:b.value[i],expandByDefault:a.expand,gap:a.gap,expanded:C.value[i]||!1,swipeDirections:u.swipeDirections,"onUpdate:heights":ae,"onUpdate:height":oe,onRemoveToast:te},{"close-icon":k(()=>[w(a.$slots,`close-icon`,{},()=>[d(wr)])]),"loading-icon":k(()=>[w(a.$slots,`loading-icon`,{},()=>[d(Dr,{visible:e.type===`loading`},null,8,[`visible`])])]),"success-icon":k(()=>[w(a.$slots,`success-icon`,{},()=>[d(jr)])]),"error-icon":k(()=>[w(a.$slots,`error-icon`,{},()=>[d(Ur)])]),"warning-icon":k(()=>[w(a.$slots,`warning-icon`,{},()=>[d(zr)])]),"info-icon":k(()=>[w(a.$slots,`info-icon`,{},()=>[d(Fr)])]),_:2},1032,[`heights`,`icons`,`index`,`toast`,`defaultRichColors`,`duration`,`class`,`descriptionClass`,`invert`,`visibleToasts`,`closeButton`,`interacting`,`position`,`closeButtonPosition`,`style`,`unstyled`,`classes`,`cancelButtonStyle`,`actionButtonStyle`,`close-button-aria-label`,`toasts`,`expandByDefault`,`gap`,`expanded`,`swipeDirections`]))),128))],16,Gr))),128))],8,Wr)],2112))}});export{ve as A,pe as C,z as D,ye as E,Oe as F,ke as I,de as L,Te as M,De as N,Se as O,R as P,ce as R,fe as S,he as T,Dn as _,Gn as a,He as b,Qn as c,Rn as d,Vn as f,Nn as g,jn as h,Wn as i,Ee as j,xe as k,Yn as l,kn as m,ir as n,qn as o,En as p,Un as r,Jn as s,Jr as t,$n as u,On as v,me as w,Ne as x,An as y,ae as z}; \ No newline at end of file diff --git a/docs/assets/vendor-pinia-DP9x75p8.js b/docs/assets/vendor-pinia-DP9x75p8.js new file mode 100644 index 0000000..62f9313 --- /dev/null +++ b/docs/assets/vendor-pinia-DP9x75p8.js @@ -0,0 +1 @@ +import{Et as e,Ht as t,Lt as n,Rt as r,cn as i,dn as a,fn as o,hn as s,ln as c,pn as l,sn as u,tn as d,un as f,xn as p,yn as m}from"./game-logic-CfBcTF_c.js";var h=typeof window<`u`,g,_=e=>g=e,v=Symbol();function y(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var b;(function(e){e.direct=`direct`,e.patchObject=`patch object`,e.patchFunction=`patch function`})(b||={});var x=(()=>typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null})();function S(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function C(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){O(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function w(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function T(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var E=typeof navigator==`object`?navigator:{userAgent:``},D=(()=>/Macintosh/.test(E.userAgent)&&/AppleWebKit/.test(E.userAgent)&&!/Safari/.test(E.userAgent))(),O=h?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!D?k:`msSaveOrOpenBlob`in E?A:j:()=>{};function k(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?T(r):w(r.href)?C(e,t,n):(r.target=`_blank`,T(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){T(r)},0))}function A(e,t=`download`,n){if(typeof e==`string`)if(w(e))C(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){T(t)})}else navigator.msSaveOrOpenBlob(S(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return C(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(x.HTMLElement))||`safari`in x,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||D)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ee}=Object;function M(){let e=u(!0),t=e.run(()=>s({})),n=[],r=[],i=a({install(e){_(i),i._a=e,e.provide(v,i),e.config.globalProperties.$pinia=i,r.forEach(e=>n.push(e)),r=[]},use(e){return this._a?n.push(e):r.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return i}var N=()=>{};function P(e,t,n,r=N){e.add(t);let a=()=>{e.delete(t)&&r()};return!n&&i()&&o(a),a}function F(e,...t){e.forEach(e=>{e(...t)})}var I=e=>e(),L=Symbol(),R=Symbol();function z(e,t){for(let n in e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e),t){if(!t.hasOwnProperty(n))continue;let r=t[n],i=e[n];y(i)&&y(r)&&e.hasOwnProperty(n)&&!f(r)&&!c(r)?e[n]=z(i,r):e[n]=r}return e}var B=Symbol();function V(e){return!y(e)||!Object.prototype.hasOwnProperty.call(e,B)}var{assign:H}=Object;function U(e){return!!(f(e)&&e.effect)}function W(t,n,r,i){let{state:o,actions:s,getters:c}=n,l=r.state.value[t],u;function d(){return l||(r.state.value[t]=o?o():{}),H(p(r.state.value[t]),s,Object.keys(c||{}).reduce((n,i)=>(n[i]=a(e(()=>{_(r);let e=r._s.get(t);return c[i].call(e,e)})),n),{}))}return u=G(t,d,n,r,i,!0),u}function G(e,n,r={},i,a,o){let p,h=H({actions:{}},r),g={deep:!0},v,y,x=new Set,S=new Set,C=i.state.value[e];!o&&!C&&(i.state.value[e]={}),s({});let w;function T(n){let r;v=y=!1,typeof n==`function`?(n(i.state.value[e]),r={type:b.patchFunction,storeId:e,events:void 0}):(z(i.state.value[e],n),r={type:b.patchObject,payload:n,storeId:e,events:void 0});let a=w=Symbol();t().then(()=>{w===a&&(v=!0)}),y=!0,F(x,r,i.state.value[e])}let E=o?function(){let{state:e}=r,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function D(){p.stop(),x.clear(),S.clear(),i._s.delete(e)}let O=(t,n=``)=>{if(L in t)return t[R]=n,t;let r=function(){_(i);let n=Array.from(arguments),a=new Set,o=new Set;function s(e){a.add(e)}function c(e){o.add(e)}F(S,{args:n,name:r[R],store:k,after:s,onError:c});let l;try{l=t.apply(this&&this.$id===e?this:k,n)}catch(e){throw F(o,e),e}return l instanceof Promise?l.then(e=>(F(a,e),e)).catch(e=>(F(o,e),Promise.reject(e))):(F(a,l),l)};return r[L]=!0,r[R]=n,r},k=l({_p:i,$id:e,$onAction:P.bind(null,S),$patch:T,$reset:E,$subscribe(t,n={}){let r=P(x,t,n.detached,()=>a()),a=p.run(()=>d(()=>i.state.value[e],r=>{(n.flush===`sync`?y:v)&&t({storeId:e,type:b.direct,events:void 0},r)},H({},g,n)));return r},$dispose:D});i._s.set(e,k);let A=(i._a&&i._a.runWithContext||I)(()=>i._e.run(()=>(p=u()).run(()=>n({action:O}))));for(let t in A){let n=A[t];f(n)&&!U(n)||c(n)?o||(C&&V(n)&&(f(n)?n.value=C[t]:z(n,C[t])),i.state.value[e][t]=n):typeof n==`function`&&(A[t]=O(n,t),h.actions[t]=n)}return H(k,A),H(m(k),A),Object.defineProperty(k,`$state`,{get:()=>i.state.value[e],set:e=>{T(t=>{H(t,e)})}}),i._p.forEach(e=>{H(k,p.run(()=>e({store:k,app:i._a,pinia:i,options:h})))}),C&&o&&r.hydrate&&r.hydrate(k.$state,C),v=!0,y=!0,k}function K(e,t,i){let a,o=typeof t==`function`;a=o?i:t;function s(i,s){let c=n();return i||=c?r(v,null):null,i&&_(i),i=g,i._s.has(e)||(o?G(e,t,a,i):W(e,a,i)),i._s.get(e)}return s.$id=e,s}function q(e,t){if(e==null)return;let n=e;for(let e=0;e1&&(t=J(typeof e!=`object`||!e||!Object.prototype.hasOwnProperty.call(e,r)?Number.isInteger(Number(n[1]))?[]:{}:e[r],t,Array.prototype.slice.call(n,1))),Number.isInteger(Number(r))&&Array.isArray(e)?e.slice()[r]:Object.assign({},e,{[r]:t})}function Y(e,t){if(e==null||t.length===0)return e;if(t.length===1){if(e==null)return e;if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.slice.call(e,0).splice(t[0],1);let n={};for(let t in e)n[t]=e[t];return delete n[t[0]],n}if(e[t[0]]==null){if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.concat.call([],e);let n={};for(let t in e)n[t]=e[t];return n}return J(e,Y(e[t[0]],Array.prototype.slice.call(t,1)),[t[0]])}function X(e,t){return t.map(e=>e.split(`.`)).map(t=>[t,q(e,t)]).filter(e=>e[1]!==void 0).reduce((e,t)=>J(e,t[1],t[0]),{})}function Z(e,t){return t.map(e=>e.split(`.`)).reduce((e,t)=>Y(e,t),e)}function Q(e,{storage:t,serializer:n,key:r,debug:i,pick:a,omit:o,beforeHydrate:s,afterHydrate:c},l,u=!0){try{u&&s?.(l);let i=t.getItem(r);if(i){let t=n.deserialize(i),r=a?X(t,a):t,s=o?Z(r,o):r;e.$patch(s)}u&&c?.(l)}catch(e){i&&console.error(`[pinia-plugin-persistedstate]`,e)}}function $(e,{storage:t,serializer:n,key:r,debug:i,pick:a,omit:o}){try{let i=a?X(e,a):e,s=o?Z(i,o):i,c=n.serialize(s);t.setItem(r,c)}catch(e){i&&console.error(`[pinia-plugin-persistedstate]`,e)}}function te(e,t){return typeof e==`function`?e(t):typeof e==`string`?e:t}function ne(e,t,n){let{pinia:r,store:i,options:{persist:a=n}}=e;if(!a)return;if(!(i.$id in r.state.value)){let e=r._s.get(i.$id.replace(`__hot:`,``));e&&Promise.resolve().then(()=>e.$persist());return}let o=(Array.isArray(a)?a:a===!0?[{}]:[a]).map(t);i.$hydrate=({runHooks:t=!0}={})=>{o.forEach(n=>{Q(i,n,e,t)})},i.$persist=()=>{o.forEach(e=>{$(i.$state,e)})},o.forEach(t=>{Q(i,t,e),i.$subscribe((e,n)=>$(n,t),{detached:!0})})}function re(e={}){return function(t){ne(t,n=>{let r=te(n.key,t.store.$id);return{key:(e.key?e.key:e=>e)(r),debug:n.debug??e.debug??!1,serializer:n.serializer??e.serializer??{serialize:e=>JSON.stringify(e),deserialize:e=>JSON.parse(e)},storage:n.storage??e.storage??window.localStorage,beforeHydrate:n.beforeHydrate??e.beforeHydrate,afterHydrate:n.afterHydrate??e.afterHydrate,pick:n.pick,omit:n.omit}},e.auto??!1)}}var ie=re();export{M as n,K as r,ie as t}; \ No newline at end of file diff --git a/docs/assets/vendor-reka-ui-CZQh7FLl.js b/docs/assets/vendor-reka-ui-CZQh7FLl.js new file mode 100644 index 0000000..8e2f5c7 --- /dev/null +++ b/docs/assets/vendor-reka-ui-CZQh7FLl.js @@ -0,0 +1,8 @@ +import{$t as e,At as t,Bt as n,Cn as r,Ct as i,Dn as a,Dt as o,En as s,Et as c,Ft as l,Gt as u,Ht as d,It as f,Jt as p,Kt as m,Mt as h,Nt as g,On as _,Ot as v,Pt as y,Rt as b,Sn as x,St as S,Tt as C,Ut as w,Vt as T,Wt as E,Xt as D,Yt as O,Zt as ee,bn as k,dn as te,en as ne,hn as A,in as j,jt as M,kn as re,kt as N,nn as P,pn as ie,qt as ae,rn as oe,tn as F,vn as se,vt as ce,wn as le,wt as ue,xn as I,xt as L}from"./game-logic-CfBcTF_c.js";import{A as de,C as fe,D as pe,E as R,F as me,I as he,L as ge,M as _e,N as ve,O as ye,P as be,S as xe,T as Se,_ as Ce,b as we,d as Te,f as Ee,g as De,h as Oe,j as ke,k as Ae,m as je,p as Me,v as Ne,w as Pe,x as Fe,y as Ie}from"./vendor-others-CUjrprN5.js";function Le(e,t=-1/0,n=1/0){return Math.min(n,Math.max(t,e))}function z(e,t){let n=typeof e==`string`&&!t?`${e}Context`:t,r=Symbol(n);return[t=>{let n=b(r,t);if(n||n===null)return n;throw Error(`Injection \`${r.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(`, `)}`:`\`${e}\``}`)},e=>(ae(r,e),e)]}function B(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}function Re(e,t,n){let r=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function ze(e){return e==null}function Be(e){return e?e.flatMap(e=>e.type===i?Be(e.children):[e]):[]}var[Ve,He]=z(`ConfigProvider`),Ue=R?window:void 0;R&&window.document,R&&window.navigator,R&&window.location;function V(e){let t=x(e);return t?.$el??t}function We(...e){let t=[],n=()=>{t.forEach(e=>e()),t.length=0},i=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),a=c(()=>{let t=_e(x(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0}),o=he(()=>[a.value?.map(e=>V(e))??[Ue].filter(e=>e!=null),_e(x(a.value?e[1]:e[0])),_e(r(a.value?e[2]:e[1])),x(a.value?e[3]:e[2])],([e,r,a,o])=>{if(n(),!e?.length||!r?.length||!a?.length)return;let s=Ae(o)?{...o}:o;t.push(...e.flatMap(e=>r.flatMap(t=>a.map(n=>i(e,t,n,s)))))},{flush:`post`});return be(n),()=>{o(),n()}}function Ge(){let e=se(!1),t=y();return t&&E(()=>{e.value=!0},t),e}function Ke(e){let t=Ge();return c(()=>(t.value,!!e()))}function qe(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Je(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=Ue,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=qe(t);return We(i,a,e=>{e.repeat&&x(s)||c(e)&&n(e)},o)}function Ye(e){return JSON.parse(JSON.stringify(e))}function Xe(e,t,n={}){let{window:r=Ue,...i}=n,a,o=Ke(()=>r&&`ResizeObserver`in r),s=()=>{a&&=(a.disconnect(),void 0)},l=F(c(()=>{let t=x(e);return Array.isArray(t)?t.map(e=>V(e)):[V(t)]}),e=>{if(s(),o.value&&r){a=new ResizeObserver(t);for(let t of e)t&&a.observe(t,i)}},{immediate:!0,flush:`post`}),u=()=>{s(),l()};return be(u),{isSupported:o,stop:u}}function H(e,t,n,r={}){let{clone:i=!1,passive:a=!1,eventName:o,deep:s=!1,defaultValue:l,shouldEmit:u}=r,f=y(),p=n||f?.emit||(f?.$emit)?.bind(f)||(f?.proxy?.$emit)?.bind(f?.proxy),m=o;t||=`modelValue`,m||=`update:${t.toString()}`;let h=e=>i?typeof i==`function`?i(e):Ye(e):e,g=()=>pe(e[t])?h(e[t]):l,_=e=>{u?u(e)&&p(m,e):p(m,e)};if(a){let n=A(g()),r=!1;return F(()=>e[t],e=>{r||(r=!0,n.value=h(e),d(()=>r=!1))}),F(n,n=>{!r&&(n!==e[t]||s)&&_(n)},{deep:s}),n}else return c({get(){return g()},set(e){_(e)}})}var Ze=Se(()=>{let e=A(new Map),t=A(),n=c(()=>{for(let t of e.value.values())if(t)return!0;return!1}),r=Ve({scrollBody:A(!0)}),i=null,a=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.documentElement.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=t.value??``,ye&&i?.(),t.value=void 0};return F(n,(e,n)=>{if(!R)return;if(!e){n&&a();return}t.value===void 0&&(t.value=document.body.style.overflow);let o=window.innerWidth-document.documentElement.clientWidth,s={padding:o,margin:0},c=r.scrollBody?.value?typeof r.scrollBody.value==`object`?Fe({padding:r.scrollBody.value.padding===!0?o:r.scrollBody.value.padding,margin:r.scrollBody.value.margin===!0?o:r.scrollBody.value.margin},s):s:{padding:0,margin:0};o>0&&(document.body.style.paddingRight=typeof c.padding==`number`?`${c.padding}px`:String(c.padding),document.body.style.marginRight=typeof c.margin==`number`?`${c.margin}px`:String(c.margin),document.documentElement.style.setProperty(`--scrollbar-width`,`${o}px`),document.body.style.overflow=`hidden`),ye&&(i=We(document,`touchmove`,e=>et(e),{passive:!1})),d(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),e});function Qe(e){let t=Math.random().toString(36).substring(2,7),n=Ze();n.value.set(t,e??!1);let r=c({get:()=>n.value.get(t)??!1,set:e=>n.value.set(t,e)});return ve(()=>{n.value.delete(t)}),r}function $e(e){let t=window.getComputedStyle(e);if(t.overflowX===`scroll`||t.overflowY===`scroll`||t.overflowX===`auto`&&e.clientWidth1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}function tt(e){let t=Ve({dir:A(`ltr`)});return c(()=>e?.value||t.dir?.value||`ltr`)}function nt(e){let t=y(),n=t?.type.emits,r={};return n?.length||console.warn(`No emitted event found. Please check component: ${t?.type.__name}`),n?.forEach(t=>{r[re(le(t))]=(...n)=>e(t,...n)}),r}var rt=0;function it(){P(e=>{if(!R)return;let t=document.querySelectorAll(`[data-reka-focus-guard]`);document.body.insertAdjacentElement(`afterbegin`,t[0]??at()),document.body.insertAdjacentElement(`beforeend`,t[1]??at()),rt++,e(()=>{rt===1&&document.querySelectorAll(`[data-reka-focus-guard]`).forEach(e=>e.remove()),rt--})})}function at(){let e=document.createElement(`span`);return e.setAttribute(`data-reka-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}function ot(e){return c(()=>x(e)?!!V(e)?.closest(`form`):!0)}function U(){let e=y(),t=A(),n=c(()=>[`#text`,`#comment`].includes(t.value?.$el.nodeName)?t.value?.$el.nextElementSibling:V(t)),r=Object.assign({},e.exposed),i={};for(let t in e.props)Object.defineProperty(i,t,{enumerable:!0,configurable:!0,get:()=>e.props[t]});if(Object.keys(r).length>0)for(let e in r)Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>r[e]});Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=i;function a(n){t.value=n,n&&(Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>n instanceof Element?n:n.$el}),e.exposed=i)}return{forwardRef:a,currentRef:t,currentElement:n}}function W(e){let t=y(),n=Object.keys(t?.type.props??{}).reduce((e,n)=>{let r=(t?.type.props[n]).default;return r!==void 0&&(e[n]=r),e},{}),r=k(e);return c(()=>{let e={},i=t?.vnode.props??{};return Object.keys(i).forEach(t=>{e[le(t)]=i[t]}),Object.keys({...n,...e}).reduce((e,t)=>(r.value[t]!==void 0&&(e[t]=r.value[t]),e),{})})}function G(e,t){let n=W(e),r=t?nt(t):{};return c(()=>({...n.value,...r}))}function st(e,t){let n=ke(!1,300),r=A(null),i=fe();function a(){r.value=null,n.value=!1}function o(e,t){let i=e.currentTarget,a={x:e.clientX,y:e.clientY},o=lt(a,ct(a,i.getBoundingClientRect())),s=ut(t.getBoundingClientRect());r.value=ft([...o,...s]),n.value=!0}return P(n=>{if(e.value&&t.value){let r=e=>o(e,t.value),i=t=>o(t,e.value);e.value.addEventListener(`pointerleave`,r),t.value.addEventListener(`pointerleave`,i),n(()=>{e.value?.removeEventListener(`pointerleave`,r),t.value?.removeEventListener(`pointerleave`,i)})}}),P(n=>{if(r.value){let o=n=>{if(!r.value||!(n.target instanceof Element))return;let o=n.target,s={x:n.clientX,y:n.clientY},c=e.value?.contains(o)||t.value?.contains(o),l=!dt(s,r.value),u=!!o.closest(`[data-grace-area-trigger]`);c?a():(l||u)&&(a(),i.trigger())};e.value?.ownerDocument.addEventListener(`pointermove`,o),n(()=>e.value?.ownerDocument.removeEventListener(`pointermove`,o))}}),{isPointerInTransit:n,onPointerExit:i.on}}function ct(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function lt(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function ut(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function dt(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function ft(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y?1:0),pt(t)}function pt(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}function mt(e){let t;F(()=>V(e),e=>{e?t=we(e):t&&t()}),u(()=>{t&&t()})}var ht=0;function K(t,n=`reka`){if(t)return t;if(`useId`in ce)return`${n}-${e?.()}`;let r=Ve({useId:void 0});return r.useId?`${n}-${r.useId()}`:`${n}-${++ht}`}function gt(e){let t=A(),n=c(()=>t.value?.width??0),r=c(()=>t.value?.height??0);return E(()=>{let n=V(e);if(n){t.value={width:n.offsetWidth,height:n.offsetHeight};let e=new ResizeObserver(e=>{if(!Array.isArray(e)||!e.length)return;let r=e[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=n.offsetWidth,a=n.offsetHeight;t.value={width:i,height:a}});return e.observe(n,{box:`border-box`}),()=>e.unobserve(n)}else t.value=void 0}),{width:n,height:r}}function _t(e,t){let n=A(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}function vt(e){let t=ke(``,1e3);return{search:t,handleTypeaheadSearch:(n,r)=>{if(t.value+=n,e)e(n);else{let e=B(),n=r.map(e=>({...e,textValue:e.value?.textValue??e.ref.textContent?.trim()??``})),i=n.find(t=>t.ref===e),a=bt(n.map(e=>e.textValue),t.value,i?.textValue),o=n.find(e=>e.textValue===a);return o&&o.ref.focus(),o?.ref}},resetTypeahead:()=>{t.value=``}}}function yt(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function bt(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=yt(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function xt(e,t){let n=A({}),r=A(`none`),i=A(e),a=e.value?`mounted`:`unmounted`,o,s=t.value?.ownerDocument.defaultView??Ue,{state:l,dispatch:f}=_t(a,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),p=e=>{if(R){let n=new CustomEvent(e,{bubbles:!1,cancelable:!1});t.value?.dispatchEvent(n)}};F(e,async(e,i)=>{let a=i!==e;if(await d(),a){let a=r.value,o=St(t.value);e?(f(`MOUNT`),p(`enter`),o===`none`&&p(`after-enter`)):o===`none`||o===`undefined`||n.value?.display===`none`?(f(`UNMOUNT`),p(`leave`),p(`after-leave`)):i&&a!==o?(f(`ANIMATION_OUT`),p(`leave`)):(f(`UNMOUNT`),p(`after-leave`))}},{immediate:!0});let m=e=>{let n=St(t.value),r=n.includes(CSS.escape(e.animationName)),a=l.value===`mounted`?`enter`:`leave`;if(e.target===t.value&&r&&(p(`after-${a}`),f(`ANIMATION_END`),!i.value)){let e=t.value.style.animationFillMode;t.value.style.animationFillMode=`forwards`,o=s?.setTimeout(()=>{t.value?.style.animationFillMode===`forwards`&&(t.value.style.animationFillMode=e)})}e.target===t.value&&n===`none`&&f(`ANIMATION_END`)},h=e=>{e.target===t.value&&(r.value=St(t.value))},g=F(t,(e,t)=>{e?(n.value=getComputedStyle(e),e.addEventListener(`animationstart`,h),e.addEventListener(`animationcancel`,m),e.addEventListener(`animationend`,m)):(f(`ANIMATION_END`),o!==void 0&&s?.clearTimeout(o),t?.removeEventListener(`animationstart`,h),t?.removeEventListener(`animationcancel`,m),t?.removeEventListener(`animationend`,m))},{immediate:!0}),_=F(l,()=>{let e=St(t.value);r.value=l.value===`mounted`?e:`none`});return u(()=>{g(),_()}),{isPresent:c(()=>[`mounted`,`unmountSuspended`].includes(l.value))}}function St(e){return e&&getComputedStyle(e).animationName||`none`}var Ct=g({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){let{present:r,forceMount:i}=I(e),a=A(),{isPresent:o}=xt(r,a);n({present:o});let s=t.default({present:o.value});s=Be(s||[]);let c=y();if(s&&s?.length>1){let e=c?.parent?.type.name?`<${c.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${e}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(e=>` - ${e}`).join(` +`)].join(` +`))}return()=>i.value||r.value||o.value?f(t.default({present:o.value})[0],{ref:e=>{let t=V(e);return t?.hasAttribute===void 0||(t?.hasAttribute(`data-reka-popper-content-wrapper`)?a.value=t.firstElementChild:a.value=t),t}}):null}}),wt=g({name:`PrimitiveSlot`,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{if(!n.default)return null;let e=Be(n.default()),r=e.findIndex(e=>e.type!==S);if(r===-1)return e;let i=e[r];delete i.props?.ref;let a=i.props?T(t,i.props):t,o=C({...i,props:{}},a);return e.length===1?o:(e[r]=o,e)}}}),Tt=[`area`,`img`,`input`],q=g({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(e,{attrs:t,slots:n}){let r=e.asChild?`template`:e.as;return typeof r==`string`&&Tt.includes(r)?()=>f(r,t):r===`template`?()=>f(wt,t,{default:n.default}):()=>f(e.as,t,{default:n.default})}});function Et(){let e=A();return{primitiveElement:e,currentElement:c(()=>[`#text`,`#comment`].includes(e.value?.$el.nodeName)?e.value?.$el.nextElementSibling:V(e))}}var[J,Dt]=z(`DialogRoot`),Ot=g({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,i=H(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),a=A(),o=A(),{modal:s}=I(n);return Dt({open:i,modal:s,openModal:()=>{i.value=!0},onOpenChange:e=>{i.value=e},onOpenToggle:()=>{i.value=!i.value},contentId:``,titleId:``,descriptionId:``,triggerElement:a,contentElement:o}),(e,t)=>O(e.$slots,`default`,{open:r(i),close:()=>i.value=!1})}}),kt=g({__name:`DialogClose`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;U();let n=J();return(e,i)=>(m(),v(r(q),T(t,{type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>r(n).onOpenChange(!1)}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`type`]))}}),At=`dismissableLayer.pointerDownOutside`,jt=`dismissableLayer.focusOutside`;function Mt(e,t){let n=t.closest(`[data-dismissable-layer]`),r=e.dataset.dismissableLayer===``?e:e.querySelector(`[data-dismissable-layer]`),i=Array.from(e.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(n&&(r===n||i.indexOf(r){});return P(o=>{if(!R||!x(n))return;let s=async n=>{let o=n.target;if(!(!t?.value||!o)){if(Mt(t.value,o)){i.value=!1;return}if(n.target&&!i.value){let t={originalEvent:n};function i(){Re(At,e,t)}n.pointerType===`touch`?(r.removeEventListener(`click`,a.value),a.value=i,r.addEventListener(`click`,a.value,{once:!0})):i()}else r.removeEventListener(`click`,a.value);i.value=!1}},c=window.setTimeout(()=>{r.addEventListener(`pointerdown`,s)},0);o(()=>{window.clearTimeout(c),r.removeEventListener(`pointerdown`,s),r.removeEventListener(`click`,a.value)})}),{onPointerDownCapture:()=>{x(n)&&(i.value=!0)}}}function Pt(e,t,n=!0){let r=t?.value?.ownerDocument??globalThis?.document,i=A(!1);return P(a=>{if(!R||!x(n))return;let o=async n=>{if(!t?.value)return;await d(),await d();let r=n.target;!t.value||!r||Mt(t.value,r)||n.target&&!i.value&&Re(jt,e,{originalEvent:n})};r.addEventListener(`focusin`,o),a(()=>r.removeEventListener(`focusin`,o))}),{onFocusCapture:()=>{x(n)&&(i.value=!0)},onBlurCapture:()=>{x(n)&&(i.value=!1)}}}var Y=ie({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Ft=g({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(e,{emit:t}){let n=e,i=t,{forwardRef:o,currentElement:s}=U(),l=c(()=>s.value?.ownerDocument??globalThis.document),u=c(()=>Y.layersRoot),f=c(()=>s.value?Array.from(u.value).indexOf(s.value):-1),p=c(()=>Y.layersWithOutsidePointerEventsDisabled.size>0),h=c(()=>{let e=Array.from(u.value),[t]=[...Y.layersWithOutsidePointerEventsDisabled].slice(-1),n=e.indexOf(t);return f.value>=n}),g=Nt(async e=>{let t=[...Y.branches].some(t=>t?.contains(e.target));!h.value||t||(i(`pointerDownOutside`,e),i(`interactOutside`,e),await d(),e.defaultPrevented||i(`dismiss`))},s),_=Pt(e=>{[...Y.branches].some(t=>t?.contains(e.target))||(i(`focusOutside`,e),i(`interactOutside`,e),e.defaultPrevented||i(`dismiss`))},s);Je(`Escape`,e=>{f.value===u.value.size-1&&(i(`escapeKeyDown`,e),e.defaultPrevented||i(`dismiss`))});let y;return P(e=>{s.value&&(n.disableOutsidePointerEvents&&(Y.layersWithOutsidePointerEventsDisabled.size===0&&(y=l.value.body.style.pointerEvents,l.value.body.style.pointerEvents=`none`),Y.layersWithOutsidePointerEventsDisabled.add(s.value)),u.value.add(s.value),e(()=>{n.disableOutsidePointerEvents&&Y.layersWithOutsidePointerEventsDisabled.size===1&&(l.value.body.style.pointerEvents=y)}))}),P(e=>{e(()=>{s.value&&(u.value.delete(s.value),Y.layersWithOutsidePointerEventsDisabled.delete(s.value))})}),(e,t)=>(m(),v(r(q),{ref:r(o),"as-child":e.asChild,as:e.as,"data-dismissable-layer":``,style:a({pointerEvents:p.value?h.value?`auto`:`none`:void 0}),onFocusCapture:r(_).onFocusCapture,onBlurCapture:r(_).onBlurCapture,onPointerdownCapture:r(g).onPointerDownCapture},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),It=Pe(()=>A([]));function Lt(){let e=It();return{add(t){let n=e.value[0];t!==n&&n?.pause(),e.value=Rt(e.value,t),e.value.unshift(t)},remove(t){e.value=Rt(e.value,t),e.value[0]?.resume()}}}function Rt(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function zt(e){return e.filter(e=>e.tagName!==`A`)}var Bt=`focusScope.autoFocusOnMount`,Vt=`focusScope.autoFocusOnUnmount`,Ht={bubbles:!1,cancelable:!0};function Ut(e,{select:t=!1}={}){let n=B();for(let r of e)if(X(r,{select:t}),B()!==n)return!0}function Wt(e){let t=Gt(e);return[Kt(t,e),Kt(t.reverse(),e)]}function Gt(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Kt(e,t){for(let n of e)if(!qt(n,{upTo:t}))return n}function qt(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Jt(e){return e instanceof HTMLInputElement&&`select`in e}function X(e,{select:t=!1}={}){if(e&&e.focus){let n=B();e.focus({preventScroll:!0}),e!==n&&Jt(e)&&t&&e.select()}}var Yt=g({__name:`FocusScope`,props:{loop:{type:Boolean,required:!1,default:!1},trapped:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(e,{emit:t}){let n=e,i=t,{currentRef:a,currentElement:o}=U(),s=A(null),c=Lt(),l=ie({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});P(e=>{if(!R)return;let t=o.value;if(!n.trapped)return;function r(e){if(l.paused||!t)return;let n=e.target;t.contains(n)?s.value=n:X(s.value,{select:!0})}function i(e){if(l.paused||!t)return;let n=e.relatedTarget;n!==null&&(t.contains(n)||X(s.value,{select:!0}))}function a(e){t.contains(s.value)||X(t)}document.addEventListener(`focusin`,r),document.addEventListener(`focusout`,i);let c=new MutationObserver(a);t&&c.observe(t,{childList:!0,subtree:!0}),e(()=>{document.removeEventListener(`focusin`,r),document.removeEventListener(`focusout`,i),c.disconnect()})}),P(async e=>{let t=o.value;if(await d(),!t)return;c.add(l);let n=B();if(!t.contains(n)){let e=new CustomEvent(Bt,Ht);t.addEventListener(Bt,e=>i(`mountAutoFocus`,e)),t.dispatchEvent(e),e.defaultPrevented||(Ut(zt(Gt(t)),{select:!0}),B()===n&&X(t))}e(()=>{t.removeEventListener(Bt,e=>i(`mountAutoFocus`,e));let e=new CustomEvent(Vt,Ht),r=e=>{i(`unmountAutoFocus`,e)};t.addEventListener(Vt,r),t.dispatchEvent(e),setTimeout(()=>{e.defaultPrevented||X(n??document.body,{select:!0}),t.removeEventListener(Vt,r),c.remove(l)},0)})});function u(e){if(!n.loop&&!n.trapped||l.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=B();if(t&&r){let t=e.currentTarget,[i,a]=Wt(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n.loop&&X(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n.loop&&X(a,{select:!0})):r===t&&e.preventDefault()}}return(e,t)=>(m(),v(r(q),{ref_key:`currentRef`,ref:a,tabindex:`-1`,"as-child":e.asChild,as:e.as,onKeydown:u},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),Xt=[`Enter`,` `],Zt=[`ArrowDown`,`PageUp`,`Home`],Qt=[`ArrowUp`,`PageDown`,`End`];[...Zt,...Qt],[...Xt],[...Xt];function $t(e){return e?`open`:`closed`}function en(e){let t=B();for(let n of e)if(n===t||(n.focus(),B()!==t))return}var tn=g({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),{forwardRef:o,currentElement:s}=U();return a.titleId||=K(void 0,`reka-dialog-title`),a.descriptionId||=K(void 0,`reka-dialog-description`),E(()=>{a.contentElement=s,B()!==document.body&&(a.triggerElement.value=B())}),(e,t)=>(m(),v(r(Yt),{"as-child":``,loop:``,trapped:n.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:j(()=>[h(r(Ft),T({id:r(a).contentId,ref:r(o),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":r(a).descriptionId,"aria-labelledby":r(a).titleId,"data-state":r($t)(r(a).open.value)},e.$attrs,{onDismiss:t[0]||=e=>r(a).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>i(`focusOutside`,e),onInteractOutside:t[3]||=e=>i(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>i(`pointerDownOutside`,e)}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),nn=g({__name:`DialogContentModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),o=nt(i),{forwardRef:s,currentElement:c}=U();return mt(c),(e,t)=>(m(),v(tn,T({...n,...r(o)},{ref:r(s),"trap-focus":r(a).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(e.preventDefault(),r(a).triggerElement.value?.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),rn=g({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=nt(t);U();let a=J(),o=A(!1),s=A(!1);return(e,t)=>(m(),v(tn,T({...n,...r(i)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(o.value||r(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=e=>{e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;r(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),an=g({__name:`DialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),o=nt(i),{forwardRef:s}=U();return(e,t)=>(m(),v(r(Ct),{present:e.forceMount||r(a).open.value},{default:j(()=>[r(a).modal.value?(m(),v(nn,T({key:0,ref:r(s)},{...n,...r(o),...e.$attrs}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16)):(m(),v(rn,T({key:1,ref:r(s)},{...n,...r(o),...e.$attrs}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),on=g({__name:`DialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;U();let n=J();return(e,i)=>(m(),v(r(q),T(t,{id:r(n).descriptionId}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),sn=g({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=J();return Qe(!0),U(),(e,n)=>(m(),v(r(q),{as:e.as,"as-child":e.asChild,"data-state":r(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),cn=g({__name:`DialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=J(),{forwardRef:n}=U();return(e,i)=>r(t)?.modal.value?(m(),v(r(Ct),{key:0,present:e.forceMount||r(t).open.value},{default:j(()=>[h(sn,T(e.$attrs,{ref:r(n),as:e.as,"as-child":e.asChild}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):N(`v-if`,!0)}}),ln=g({__name:`Teleport`,props:{to:{type:null,required:!1,default:`body`},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=Ge();return(e,n)=>r(t)||e.forceMount?(m(),v(ue,{key:0,to:e.to,disabled:e.disabled,defer:e.defer},[O(e.$slots,`default`)],8,[`to`,`disabled`,`defer`])):N(`v-if`,!0)}}),un=g({__name:`DialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(m(),v(r(ln),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),dn=g({__name:`DialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e,n=J();return U(),(e,i)=>(m(),v(r(q),T(t,{id:r(n).titleId}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),fn=g({__name:`AlertDialogAction`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(kt),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),[pn,mn]=z(`AlertDialogContent`),hn=g({__name:`AlertDialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=nt(t);U();let a=A();return mn({onCancelElementChange:e=>{a.value=e}}),(e,t)=>(m(),v(r(an),T({...n,...r(i)},{role:`alertdialog`,onPointerDownOutside:t[0]||=L(()=>{},[`prevent`]),onInteractOutside:t[1]||=L(()=>{},[`prevent`]),onOpenAutoFocus:t[2]||=()=>{d(()=>{a.value?.focus({preventScroll:!0})})}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),gn=g({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=pn(),{forwardRef:i,currentElement:a}=U();return E(()=>{n.onCancelElementChange(a.value)}),(e,n)=>(m(),v(r(kt),T(t,{ref:r(i)}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),_n=g({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(on),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),vn=g({__name:`AlertDialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(cn),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),yn=g({__name:`AlertDialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(m(),v(r(ln),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),bn=g({__name:`AlertDialogRoot`,props:{open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=G(e,t);return U(),(e,t)=>(m(),v(r(Ot),T(r(n),{modal:!0}),{default:j(t=>[O(e.$slots,`default`,s(l(t)))]),_:3},16))}}),xn=g({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(dn),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),Sn=`data-reka-collection-item`;function Z(e={}){let{key:t=``,isProvider:n=!1}=e,r=`${t}CollectionProvider`,i;if(n){let e=A(new Map);i={collectionRef:A(),itemMap:e},ae(r,i)}else i=b(r);let a=(e=!1)=>{let t=i.collectionRef.value;if(!t)return[];let n=Array.from(t.querySelectorAll(`[${Sn}]`)),r=Array.from(i.itemMap.value.values()).sort((e,t)=>n.indexOf(e.ref)-n.indexOf(t.ref));return e?r:r.filter(e=>e.ref.dataset.disabled!==``)},o=g({name:`CollectionSlot`,setup(e,{slots:t}){let{primitiveElement:n,currentElement:r}=Et();return F(r,()=>{i.collectionRef.value=r.value}),()=>f(wt,{ref:n},t)}}),s=g({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:a}=Et();return P(t=>{if(a.value){let n=te(a.value);i.itemMap.value.set(n,{ref:a.value,value:e.value}),t(()=>i.itemMap.value.delete(n))}}),()=>f(wt,{...n,[Sn]:``,ref:r},t)}});return{getItems:a,reactiveItems:c(()=>Array.from(i.itemMap.value.values())),itemMapSize:c(()=>i.itemMap.value.size),CollectionSlot:o,CollectionItem:s}}var Cn=g({__name:`VisuallyHidden`,props:{feature:{type:String,required:!1,default:`focusable`},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){return(e,t)=>(m(),v(r(q),{as:e.as,"as-child":e.asChild,"aria-hidden":e.feature===`focusable`?`true`:void 0,"data-hidden":e.feature===`fully-hidden`?``:void 0,tabindex:e.feature===`fully-hidden`?`-1`:void 0,style:{position:`absolute`,border:0,width:`1px`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,whiteSpace:`nowrap`,wordWrap:`normal`,top:`-1px`,left:`-1px`}},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-hidden`,`data-hidden`,`tabindex`]))}}),[wn,Tn]=z(`PopperRoot`),En=g({inheritAttrs:!1,__name:`PopperRoot`,setup(e){let t=A();return Tn({anchor:t,onAnchorChange:e=>t.value=e}),(e,t)=>O(e.$slots,`default`)}}),Dn=g({__name:`PopperAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n,currentElement:i}=U(),a=wn();return oe(()=>{a.onAnchorChange(t.reference??i.value)}),(e,t)=>(m(),v(r(q),{ref:r(n),as:e.as,"as-child":e.asChild},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),On={key:0,d:`M0 0L6 6L12 0`},kn={key:1,d:`M0 0L4.58579 4.58579C5.36683 5.36683 6.63316 5.36684 7.41421 4.58579L12 0`},An=g({__name:`Arrow`,props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let n=e;return U(),(e,i)=>(m(),v(r(q),T(n,{width:e.width,height:e.height,viewBox:e.asChild?void 0:`0 0 12 6`,preserveAspectRatio:e.asChild?void 0:`none`}),{default:j(()=>[O(e.$slots,`default`,{},()=>[e.rounded?(m(),t(`path`,kn)):(m(),t(`path`,On))])]),_:3},16,[`width`,`height`,`viewBox`,`preserveAspectRatio`]))}});function jn(e){return e!==null}function Mn(e){return{name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=Nn(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}}}function Nn(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var Pn={side:`bottom`,sideOffset:0,sideFlip:!0,align:`center`,alignOffset:0,alignFlip:!0,arrowPadding:0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:`partial`,hideWhenDetached:!1,positionStrategy:`fixed`,updatePositionStrategy:`optimized`,prioritizePosition:!1},[Fn,In]=z(`PopperContent`),Ln=g({inheritAttrs:!1,__name:`PopperContent`,props:n({side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{...Pn}),emits:[`placed`],setup(e,{emit:n}){let i=e,o=n,s=wn(),{forwardRef:l,currentElement:u}=U(),d=A(),f=A(),{width:p,height:g}=gt(f),_=c(()=>i.side+(i.align===`center`?``:`-${i.align}`)),v=c(()=>typeof i.collisionPadding==`number`?i.collisionPadding:{top:0,right:0,bottom:0,left:0,...i.collisionPadding}),y=c(()=>Array.isArray(i.collisionBoundary)?i.collisionBoundary:[i.collisionBoundary]),b=c(()=>({padding:v.value,boundary:y.value.filter(jn),altBoundary:y.value.length>0})),x=c(()=>({mainAxis:i.sideFlip,crossAxis:i.alignFlip})),S=xe(()=>[Ce({mainAxis:i.sideOffset+g.value,alignmentAxis:i.alignOffset}),i.prioritizePosition&&i.avoidCollisions&&je({...b.value,...x.value}),i.avoidCollisions&&Ne({mainAxis:!0,crossAxis:!!i.prioritizePosition,limiter:i.sticky===`partial`?De():void 0,...b.value}),!i.prioritizePosition&&i.avoidCollisions&&je({...b.value,...x.value}),Ie({...b.value,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--reka-popper-available-width`,`${n}px`),o.setProperty(`--reka-popper-available-height`,`${r}px`),o.setProperty(`--reka-popper-anchor-width`,`${i}px`),o.setProperty(`--reka-popper-anchor-height`,`${a}px`)}}),f.value&&Te({element:f.value,padding:i.arrowPadding}),Mn({arrowWidth:p.value,arrowHeight:g.value}),i.hideWhenDetached&&Oe({strategy:`referenceHidden`,...b.value})]),{floatingStyles:C,placement:w,isPositioned:E,middlewareData:D,update:ee}=Ee(c(()=>i.reference??s.anchor.value),d,{strategy:i.positionStrategy,placement:_,whileElementsMounted:(...e)=>Me(...e,{layoutShift:!i.disableUpdateOnLayoutShift,animationFrame:i.updatePositionStrategy===`always`}),middleware:S}),k=c(()=>Nn(w.value)[0]),te=c(()=>Nn(w.value)[1]);oe(()=>{E.value&&o(`placed`)});let ne=c(()=>D.value.arrow?.centerOffset!==0),M=A(``);return P(()=>{u.value&&(M.value=window.getComputedStyle(u.value).zIndex)}),In({placedSide:k,onArrowChange:e=>f.value=e,arrowX:c(()=>D.value.arrow?.x??0),arrowY:c(()=>D.value.arrow?.y??0),shouldHideArrow:ne}),(e,n)=>(m(),t(`div`,{ref_key:`floatingRef`,ref:d,"data-reka-popper-content-wrapper":``,style:a({...r(C),transform:r(E)?r(C).transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:M.value,"--reka-popper-transform-origin":[r(D).transformOrigin?.x,r(D).transformOrigin?.y].join(` `),...r(D).hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}})},[h(r(q),T({ref:r(l)},e.$attrs,{"as-child":i.asChild,as:e.as,"data-side":k.value,"data-align":te.value,style:{animation:r(E)?void 0:`none`}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-side`,`data-align`,`style`])],4))}}),Rn={top:`bottom`,right:`left`,bottom:`top`,left:`right`},zn=g({inheritAttrs:!1,__name:`PopperArrow`,props:{width:{type:Number,required:!1},height:{type:Number,required:!1},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let{forwardRef:n}=U(),i=Fn(),o=c(()=>Rn[i.placedSide.value]);return(e,s)=>(m(),t(`span`,{ref:e=>{r(i).onArrowChange(e)},style:a({position:`absolute`,left:r(i).arrowX?.value?`${r(i).arrowX?.value}px`:void 0,top:r(i).arrowY?.value?`${r(i).arrowY?.value}px`:void 0,[o.value]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[r(i).placedSide.value],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[r(i).placedSide.value],visibility:r(i).shouldHideArrow.value?`hidden`:void 0})},[h(An,T(e.$attrs,{ref:r(n),style:{display:`block`},as:e.as,"as-child":e.asChild,rounded:e.rounded,width:e.width,height:e.height}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`rounded`,`width`,`height`])],4))}});function Bn(e){let t=Ve({nonce:A()});return c(()=>e?.value||t.nonce?.value)}var[Vn,Hn]=z(`PopoverRoot`),Un=g({__name:`PopoverRoot`,props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},modal:{type:Boolean,required:!1,default:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=e,i=t,{modal:a}=I(n),o=H(n,`open`,i,{defaultValue:n.defaultOpen,passive:n.open===void 0});return Hn({contentId:``,triggerId:``,modal:a,open:o,onOpenChange:e=>{o.value=e},onOpenToggle:()=>{o.value=!o.value},triggerElement:A(),hasCustomAnchor:A(!1)}),(e,t)=>(m(),v(r(En),null,{default:j(()=>[O(e.$slots,`default`,{open:r(o),close:()=>o.value=!1})]),_:3}))}}),Wn=g({__name:`PopoverContentImpl`,props:{trapFocus:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=W(de(n,`trapFocus`,`disableOutsidePointerEvents`)),{forwardRef:o}=U(),s=Vn();return it(),(e,t)=>(m(),v(r(Yt),{"as-child":``,loop:``,trapped:e.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:j(()=>[h(r(Ft),{"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onPointerDownOutside:t[0]||=e=>i(`pointerDownOutside`,e),onInteractOutside:t[1]||=e=>i(`interactOutside`,e),onEscapeKeyDown:t[2]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[3]||=e=>i(`focusOutside`,e),onDismiss:t[4]||=e=>r(s).onOpenChange(!1)},{default:j(()=>[h(r(Ln),T(r(a),{id:r(s).contentId,ref:r(o),"data-state":r(s).open.value?`open`:`closed`,"aria-labelledby":r(s).triggerId,style:{"--reka-popover-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-popover-content-available-width":`var(--reka-popper-available-width)`,"--reka-popover-content-available-height":`var(--reka-popper-available-height)`,"--reka-popover-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-popover-trigger-height":`var(--reka-popper-anchor-height)`},role:`dialog`}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`aria-labelledby`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),Gn=g({__name:`PopoverContentModal`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=Vn(),o=A(!1);Qe(!0);let s=G(n,i),{forwardRef:c,currentElement:l}=U();return mt(l),(e,t)=>(m(),v(Wn,T(r(s),{ref:r(c),"trap-focus":r(a).open.value,"disable-outside-pointer-events":``,onCloseAutoFocus:t[0]||=L(e=>{i(`closeAutoFocus`,e),o.value||r(a).triggerElement.value?.focus()},[`prevent`]),onPointerDownOutside:t[1]||=e=>{i(`pointerDownOutside`,e);let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;o.value=t.button===2||n},onFocusOutside:t[2]||=L(()=>{},[`prevent`])}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),Kn=g({__name:`PopoverContentNonModal`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=Vn(),o=A(!1),s=A(!1),c=G(n,i);return(e,t)=>(m(),v(Wn,T(r(c),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{i(`closeAutoFocus`,e),e.defaultPrevented||(o.value||r(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=async e=>{i(`interactOutside`,e),e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;r(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),qn=g({__name:`PopoverContent`,props:{forceMount:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=Vn(),o=G(n,i),{forwardRef:s}=U();return a.contentId||=K(void 0,`reka-popover-content`),(e,t)=>(m(),v(r(Ct),{present:e.forceMount||r(a).open.value},{default:j(()=>[r(a).modal.value?(m(),v(Gn,T({key:0},r(o),{ref:r(s)}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16)):(m(),v(Kn,T({key:1},r(o),{ref:r(s)}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Jn=g({__name:`PopoverPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(m(),v(r(ln),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),Yn=g({__name:`PopoverTrigger`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=Vn(),{forwardRef:i,currentElement:a}=U();return n.triggerId||=K(void 0,`reka-popover-trigger`),E(()=>{n.triggerElement.value=a.value}),(e,a)=>(m(),v(D(r(n).hasCustomAnchor.value?r(q):r(Dn)),{"as-child":``},{default:j(()=>[h(r(q),{id:r(n).triggerId,ref:r(i),type:e.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":r(n).open.value,"aria-controls":r(n).contentId,"data-state":r(n).open.value?`open`:`closed`,as:e.as,"as-child":t.asChild,onClick:r(n).onOpenToggle},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`id`,`type`,`aria-expanded`,`aria-controls`,`data-state`,`as`,`as-child`,`onClick`])]),_:3}))}}),Xn=g({__name:`Label`,props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`label`}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(q),T(t,{onMousedown:n[0]||=e=>{!e.defaultPrevented&&e.detail>1&&e.preventDefault()}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),Zn=100,[Qn,$n]=z(`ProgressRoot`),er=e=>typeof e==`number`;function tr(e,t){return ze(e)||er(e)&&!Number.isNaN(e)&&e<=t&&e>=0?e:(console.error(`Invalid prop \`value\` of value \`${e}\` supplied to \`ProgressRoot\`. The \`value\` prop must be: + - a positive number + - less than the value passed to \`max\` (or ${Zn} if no \`max\` prop is set) + - \`null\` or \`undefined\` if the progress is indeterminate. + +Defaulting to \`null\`.`),null)}function nr(e){return er(e)&&!Number.isNaN(e)&&e>0?e:(console.error(`Invalid prop \`max\` of value \`${e}\` supplied to \`ProgressRoot\`. Only numbers greater than 0 are valid max values. Defaulting to \`${Zn}\`.`),Zn)}var rr=g({__name:`ProgressRoot`,props:{modelValue:{type:[Number,null],required:!1},max:{type:Number,required:!1,default:Zn},getValueLabel:{type:Function,required:!1,default:(e,t)=>er(e)?`${Math.round(e/t*Zn)}%`:void 0},getValueText:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`,`update:max`],setup(e,{emit:t}){let n=e,i=t;U();let a=H(n,`modelValue`,i,{passive:n.modelValue===void 0}),o=H(n,`max`,i,{passive:n.max===void 0});F(()=>a.value,async e=>{let t=tr(e,n.max);t!==e&&(await d(),a.value=t)},{immediate:!0}),F(()=>n.max,e=>{let t=nr(n.max);t!==e&&(o.value=t)},{immediate:!0});let s=c(()=>ze(a.value)?`indeterminate`:a.value===o.value?`complete`:`loading`);return $n({modelValue:a,max:o,progressState:s}),(e,t)=>(m(),v(r(q),{"as-child":e.asChild,as:e.as,"aria-valuemax":r(o),"aria-valuemin":0,"aria-valuenow":er(r(a))?r(a):void 0,"aria-valuetext":e.getValueText?.(r(a),r(o)),"aria-label":e.getValueLabel(r(a),r(o)),role:`progressbar`,"data-state":s.value,"data-value":r(a)??void 0,"data-max":r(o)},{default:j(()=>[O(e.$slots,`default`,{modelValue:r(a)})]),_:3},8,[`as-child`,`as`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-label`,`data-state`,`data-value`,`data-max`]))}}),ir=g({__name:`ProgressIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=Qn();return U(),(e,i)=>(m(),v(r(q),T(t,{"data-state":r(n).progressState.value,"data-value":r(n).modelValue?.value??void 0,"data-max":r(n).max.value}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`data-state`,`data-value`,`data-max`]))}}),ar=[` `,`Enter`,`ArrowUp`,`ArrowDown`],or=[` `,`Enter`];function sr(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>cr(e,t,n)):cr(e,t,n)}function cr(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:ge(e,t)}function lr(e){return e==null||e===``||Array.isArray(e)&&e.length===0}var ur={key:0,value:``},[Q,dr]=z(`SelectRoot`),fr=g({inheritAttrs:!1,__name:`SelectRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`update:open`],setup(e,{emit:n}){let a=e,o=n,{required:s,disabled:l,multiple:u,dir:d}=I(a),f=H(a,`modelValue`,o,{defaultValue:a.defaultValue??(u.value?[]:void 0),passive:a.modelValue===void 0,deep:!0}),h=H(a,`open`,o,{defaultValue:a.defaultOpen,passive:a.open===void 0}),g=A(),_=A(),y=A({x:0,y:0}),b=c(()=>u.value&&Array.isArray(f.value)?f.value?.length===0:ze(f.value));Z({isProvider:!0});let x=tt(d),S=ot(g),C=A(new Set),w=c(()=>Array.from(C.value).map(e=>e.value).join(`;`));function E(e){if(u.value){let t=Array.isArray(f.value)?[...f.value]:[],n=t.findIndex(t=>cr(t,e,a.by));n===-1?t.push(e):t.splice(n,1),f.value=[...t]}else f.value=e}function D(e){return Array.from(C.value).find(t=>sr(e,t.value,a.by))}return dr({triggerElement:g,onTriggerChange:e=>{g.value=e},valueElement:_,onValueElementChange:e=>{_.value=e},contentId:``,modelValue:f,onValueChange:E,by:a.by,open:h,multiple:u,required:s,onOpenChange:e=>{h.value=e},dir:x,triggerPointerDownPosRef:y,disabled:l,isEmptyModelValue:b,optionsSet:C,onOptionAdd:e=>{let t=D(e.value);t&&C.value.delete(t),C.value.add(e)},onOptionRemove:e=>{let t=D(e.value);t&&C.value.delete(t)}}),(e,n)=>(m(),v(r(En),null,{default:j(()=>[O(e.$slots,`default`,{modelValue:r(f),open:r(h)}),r(S)?(m(),v(pr,{key:w.value,"aria-hidden":`true`,tabindex:`-1`,multiple:r(u),required:r(s),name:e.name,autocomplete:e.autocomplete,disabled:r(l),value:r(f)},{default:j(()=>[r(ze)(r(f))?(m(),t(`option`,ur)):N(`v-if`,!0),(m(!0),t(i,null,p(Array.from(C.value),e=>(m(),t(`option`,T({key:e.value??``},{ref_for:!0},e),null,16))),128))]),_:1},8,[`multiple`,`required`,`name`,`autocomplete`,`disabled`,`value`])):N(`v-if`,!0)]),_:3}))}}),pr=g({__name:`BubbleSelect`,props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(e){let t=e,n=A(),i=Q();F(()=>t.value,(e,t)=>{let r=window.HTMLSelectElement.prototype,i=Object.getOwnPropertyDescriptor(r,`value`).set;if(e!==t&&i&&n.value){let t=new Event(`change`,{bubbles:!0});i.call(n.value,e),n.value.dispatchEvent(t)}});function a(e){i.onValueChange(e.target.value)}return(e,i)=>(m(),v(r(Cn),{"as-child":``},{default:j(()=>[o(`select`,T({ref_key:`selectElement`,ref:n},t,{onInput:a}),[O(e.$slots,`default`)],16)]),_:3}))}}),mr=g({__name:`SelectPopperPosition`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:`start`},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1,default:10},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=W(e);return(e,n)=>(m(),v(r(Ln),T(r(t),{style:{boxSizing:`border-box`,"--reka-select-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-select-content-available-width":`var(--reka-popper-available-width)`,"--reka-select-content-available-height":`var(--reka-popper-available-height)`,"--reka-select-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-select-trigger-height":`var(--reka-popper-anchor-height)`}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),hr={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[$,gr]=z(`SelectContent`),_r=g({__name:`SelectContentImpl`,props:{position:{type:String,required:!1,default:`item-aligned`},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:`start`},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,i=t,a=Q();it(),Qe(n.bodyLock);let{CollectionSlot:o,getItems:s}=Z(),l=A();mt(l);let{search:u,handleTypeaheadSearch:d}=vt(),f=A(),p=A(),g=A(),_=A(!1),y=A(!1),b=A(!1);function x(){p.value&&l.value&&en([p.value,l.value])}F(_,()=>{x()});let{onOpenChange:S,triggerPointerDownPosRef:C}=a;P(e=>{if(!l.value)return;let t={x:0,y:0},n=e=>{t={x:Math.abs(Math.round(e.pageX)-(C.value?.x??0)),y:Math.abs(Math.round(e.pageY)-(C.value?.y??0))}},r=e=>{e.pointerType!==`touch`&&(t.x<=10&&t.y<=10?e.preventDefault():l.value?.contains(e.target)||S(!1),document.removeEventListener(`pointermove`,n),C.value=null)};C.value!==null&&(document.addEventListener(`pointermove`,n),document.addEventListener(`pointerup`,r,{capture:!0,once:!0})),e(()=>{document.removeEventListener(`pointermove`,n),document.removeEventListener(`pointerup`,r,{capture:!0})})});function w(e){let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&d(e.key,s()),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=[...s().map(e=>e.ref)];if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>en(t)),e.preventDefault()}}let E=W(c(()=>n.position===`popper`?n:{}).value);return gr({content:l,viewport:f,onViewportChange:e=>{f.value=e},itemRefCallback:(e,t,n)=>{let r=!y.value&&!n,i=sr(a.modelValue.value,t,a.by);if(a.multiple.value){if(b.value)return;(i||r)&&(p.value=e,i&&(b.value=!0))}else (i||r)&&(p.value=e);r&&(y.value=!0)},selectedItem:p,selectedItemText:g,onItemLeave:()=>{l.value?.focus()},itemTextRefCallback:(e,t,n)=>{let r=!y.value&&!n;(sr(a.modelValue.value,t,a.by)||r)&&(g.value=e)},focusSelectedItem:x,position:n.position,isPositioned:_,searchRef:u}),(e,t)=>(m(),v(r(o),null,{default:j(()=>[h(r(Yt),{"as-child":``,onMountAutoFocus:t[6]||=L(()=>{},[`prevent`]),onUnmountAutoFocus:t[7]||=e=>{i(`closeAutoFocus`,e),!e.defaultPrevented&&(r(a).triggerElement.value?.focus({preventScroll:!0}),e.preventDefault())}},{default:j(()=>[h(r(Ft),{"as-child":``,"disable-outside-pointer-events":``,onFocusOutside:t[2]||=L(()=>{},[`prevent`]),onDismiss:t[3]||=e=>r(a).onOpenChange(!1),onEscapeKeyDown:t[4]||=e=>i(`escapeKeyDown`,e),onPointerDownOutside:t[5]||=e=>i(`pointerDownOutside`,e)},{default:j(()=>[(m(),v(D(e.position===`popper`?mr:br),T({...e.$attrs,...r(E)},{id:r(a).contentId,ref:e=>{let t=r(V)(e);t?.hasAttribute(`data-reka-popper-content-wrapper`)?l.value=t.firstElementChild:l.value=t},role:`listbox`,"data-state":r(a).open.value?`open`:`closed`,dir:r(a).dir.value,style:{display:`flex`,flexDirection:`column`,outline:`none`},onContextmenu:t[0]||=L(()=>{},[`prevent`]),onPlaced:t[1]||=e=>_.value=!0,onKeydown:w}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`dir`,`onKeydown`]))]),_:3})]),_:3})]),_:3}))}}),[vr,yr]=z(`SelectItemAlignedPosition`),br=g({inheritAttrs:!1,__name:`SelectItemAlignedPosition`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`placed`],setup(e,{emit:n}){let i=e,o=n,{getItems:s}=Z(),c=Q(),l=$(),u=A(!1),f=A(!0),p=A(),{forwardRef:g,currentElement:_}=U(),{viewport:v,selectedItem:y,selectedItemText:b,focusSelectedItem:x}=l;function S(){if(c.triggerElement.value&&c.valueElement.value&&p.value&&_.value&&v?.value&&y?.value&&b?.value){let e=c.triggerElement.value.getBoundingClientRect(),t=_.value.getBoundingClientRect(),n=c.valueElement.value.getBoundingClientRect(),r=b.value.getBoundingClientRect();if(c.dir.value!==`rtl`){let i=r.left-t.left,a=n.left-i,o=e.left-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-10,u=Le(a,10,Math.max(10,l-c));p.value.style.minWidth=`${s}px`,p.value.style.left=`${u}px`}else{let i=t.right-r.right,a=window.innerWidth-n.right-i,o=window.innerWidth-e.right-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-10,u=Le(a,10,Math.max(10,l-c));p.value.style.minWidth=`${s}px`,p.value.style.right=`${u}px`}let i=s().map(e=>e.ref),a=window.innerHeight-20,l=v.value.scrollHeight,d=window.getComputedStyle(_.value),f=Number.parseInt(d.borderTopWidth,10),m=Number.parseInt(d.paddingTop,10),h=Number.parseInt(d.borderBottomWidth,10),g=Number.parseInt(d.paddingBottom,10),x=f+m+l+g+h,S=Math.min(y.value.offsetHeight*5,x),C=window.getComputedStyle(v.value),w=Number.parseInt(C.paddingTop,10),T=Number.parseInt(C.paddingBottom,10),E=e.top+e.height/2-10,D=a-E,O=y.value.offsetHeight/2,ee=y.value.offsetTop+O,k=f+m+ee,te=x-k;if(k<=E){let e=y.value===i[i.length-1];p.value.style.bottom=`0px`;let t=_.value.clientHeight-v.value.offsetTop-v.value.offsetHeight,n=k+Math.max(D,O+(e?T:0)+t+h);p.value.style.height=`${n}px`}else{let e=y.value===i[0];p.value.style.top=`0px`;let t=Math.max(E,f+v.value.offsetTop+(e?w:0)+O)+te;p.value.style.height=`${t}px`,v.value.scrollTop=k-E+v.value.offsetTop}p.value.style.margin=`10px 0`,p.value.style.minHeight=`${S}px`,p.value.style.maxHeight=`${a}px`,o(`placed`),requestAnimationFrame(()=>u.value=!0)}}let C=A(``);E(async()=>{await d(),S(),_.value&&(C.value=window.getComputedStyle(_.value).zIndex)});function w(e){e&&f.value===!0&&(S(),x?.(),f.value=!1)}return Xe(c.triggerElement,()=>{S()}),yr({contentWrapper:p,shouldExpandOnScrollRef:u,onScrollButtonChange:w}),(e,n)=>(m(),t(`div`,{ref_key:`contentWrapperElement`,ref:p,style:a({display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:C.value})},[h(r(q),T({ref:r(g),style:{boxSizing:`border-box`,maxHeight:`100%`}},{...e.$attrs,...i}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16)],4))}}),xr=g({inheritAttrs:!1,__name:`SelectProvider`,props:{context:{type:Object,required:!0}},setup(e){return dr(e.context),gr(hr),(e,t)=>O(e.$slots,`default`)}}),Sr={key:1},Cr=g({inheritAttrs:!1,__name:`SelectContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:n}){let i=e,a=G(i,n),o=Q(),u=A();E(()=>{u.value=new DocumentFragment});let d=A(),f=c(()=>i.forceMount||o.open.value),p=A(f.value);return F(f,()=>{setTimeout(()=>p.value=f.value)}),(e,n)=>f.value||p.value||d.value?.present?(m(),v(r(Ct),{key:0,ref_key:`presenceRef`,ref:d,present:f.value},{default:j(()=>[h(_r,s(l({...r(a),...e.$attrs})),{default:j(()=>[O(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`])):u.value?(m(),t(`div`,Sr,[(m(),v(ue,{to:u.value},[h(xr,{context:r(o)},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`context`])],8,[`to`]))])):N(`v-if`,!0)}}),wr=g({__name:`SelectIcon`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){return(e,t)=>(m(),v(r(q),{"aria-hidden":`true`,as:e.as,"as-child":e.asChild},{default:j(()=>[O(e.$slots,`default`,{},()=>[t[0]||=M(`▼`)])]),_:3},8,[`as`,`as-child`]))}}),[Tr,Er]=z(`SelectItem`),Dr=g({__name:`SelectItem`,props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`select`],setup(e,{emit:t}){let n=e,i=t,{disabled:a}=I(n),o=Q(),s=$(),{forwardRef:l,currentElement:u}=U(),{CollectionItem:f}=Z(),p=c(()=>sr(o.modelValue?.value,n.value,o.by)),g=A(!1),_=A(n.textValue??``),y=K(void 0,`reka-select-item-text`);async function b(e){e.defaultPrevented||Re(`select.select`,x,{originalEvent:e,value:n.value})}async function x(e){await d(),i(`select`,e),!e.defaultPrevented&&(a.value||(o.onValueChange(n.value),o.multiple.value||o.onOpenChange(!1)))}async function S(e){await d(),!e.defaultPrevented&&(a.value?s.onItemLeave?.():e.currentTarget?.focus({preventScroll:!0}))}async function C(e){await d(),!e.defaultPrevented&&e.currentTarget===B()&&s.onItemLeave?.()}async function w(e){await d(),!e.defaultPrevented&&(s.searchRef?.value!==``&&e.key===` `||(or.includes(e.key)&&b(e),e.key===` `&&e.preventDefault()))}if(n.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return E(()=>{u.value&&s.itemRefCallback(u.value,n.value,n.disabled)}),Er({value:n.value,disabled:a,textId:y,isSelected:p,onItemTextChange:e=>{_.value=((_.value||e?.textContent)??``).trim()}}),(e,t)=>(m(),v(r(f),{value:{textValue:_.value}},{default:j(()=>[h(r(q),{ref:r(l),role:`option`,"aria-labelledby":r(y),"data-highlighted":g.value?``:void 0,"aria-selected":p.value,"data-state":p.value?`checked`:`unchecked`,"aria-disabled":r(a)||void 0,"data-disabled":r(a)?``:void 0,tabindex:r(a)?void 0:-1,as:e.as,"as-child":e.asChild,onFocus:t[0]||=e=>g.value=!0,onBlur:t[1]||=e=>g.value=!1,onPointerup:b,onPointerdown:t[2]||=e=>{e.currentTarget.focus({preventScroll:!0})},onTouchend:t[3]||=L(()=>{},[`prevent`,`stop`]),onPointermove:S,onPointerleave:C,onKeydown:w},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`tabindex`,`as`,`as-child`])]),_:3},8,[`value`]))}}),Or=g({__name:`SelectItemIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=Tr();return(e,i)=>r(n).isSelected.value?(m(),v(r(q),T({key:0,"aria-hidden":`true`},t),{default:j(()=>[O(e.$slots,`default`)]),_:3},16)):N(`v-if`,!0)}}),kr=g({inheritAttrs:!1,__name:`SelectItemText`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=Q(),i=$(),a=Tr(),{forwardRef:o,currentElement:s}=U(),l=c(()=>({value:a.value,disabled:a.disabled.value,textContent:s.value?.textContent??a.value?.toString()??``}));return E(()=>{s.value&&(a.onItemTextChange(s.value),i.itemTextRefCallback(s.value,a.value,a.disabled.value),n.onOptionAdd(l.value))}),u(()=>{n.onOptionRemove(l.value)}),(e,n)=>(m(),v(r(q),T({id:r(a).textId,ref:r(o)},{...t,...e.$attrs}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),Ar=g({__name:`SelectPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(m(),v(r(ln),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),jr=g({__name:`SelectScrollButtonImpl`,emits:[`autoScroll`],setup(e,{emit:t}){let n=t,{getItems:i}=Z(),a=$(),o=A(null);function s(){o.value!==null&&(window.clearInterval(o.value),o.value=null)}P(()=>{i().map(e=>e.ref).find(e=>e===B())?.scrollIntoView({block:`nearest`})});function c(){o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}function l(){a.onItemLeave?.(),o.value===null&&(o.value=window.setInterval(()=>{n(`autoScroll`)},50))}return w(()=>s()),(e,t)=>(m(),v(r(q),T({"aria-hidden":`true`,style:{flexShrink:0}},e.$parent?.$props,{onPointerdown:c,onPointermove:l,onPointerleave:t[0]||=()=>{s()}}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),Mr=g({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=$(),n=t.position===`item-aligned`?vr():void 0,{forwardRef:i,currentElement:a}=U(),o=A(!1);return P(e=>{if(t.viewport?.value&&t.isPositioned?.value){let n=t.viewport.value;function r(){let e=n.scrollHeight-n.clientHeight;o.value=Math.ceil(n.scrollTop)n.removeEventListener(`scroll`,r))}}),F(a,()=>{a.value&&n?.onScrollButtonChange(a.value)}),(e,n)=>o.value?(m(),v(jr,{key:0,ref:r(i),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=r(t);e?.value&&n?.value&&(e.value.scrollTop=e.value.scrollTop+n.value.offsetHeight)}},{default:j(()=>[O(e.$slots,`default`)]),_:3},512)):N(`v-if`,!0)}}),Nr=g({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=$(),n=t.position===`item-aligned`?vr():void 0,{forwardRef:i,currentElement:a}=U(),o=A(!1);return P(e=>{if(t.viewport?.value&&t.isPositioned?.value){let n=t.viewport.value;function r(){o.value=n.scrollTop>0}r(),n.addEventListener(`scroll`,r),e(()=>n.removeEventListener(`scroll`,r))}}),F(a,()=>{a.value&&n?.onScrollButtonChange(a.value)}),(e,n)=>o.value?(m(),v(jr,{key:0,ref:r(i),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=r(t);e?.value&&n?.value&&(e.value.scrollTop=e.value.scrollTop-n.value.offsetHeight)}},{default:j(()=>[O(e.$slots,`default`)]),_:3},512)):N(`v-if`,!0)}}),Pr=g({__name:`SelectTrigger`,props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=Q(),{forwardRef:i,currentElement:a}=U(),o=c(()=>n.disabled?.value||t.disabled);n.contentId||=K(void 0,`reka-select-content`),E(()=>{n.onTriggerChange(a.value)});let{getItems:s}=Z(),{search:l,handleTypeaheadSearch:u,resetTypeahead:d}=vt();function f(){o.value||(n.onOpenChange(!0),d())}function p(e){f(),n.triggerPointerDownPosRef.value={x:Math.round(e.pageX),y:Math.round(e.pageY)}}return(e,t)=>(m(),v(r(Dn),{"as-child":``,reference:e.reference},{default:j(()=>[h(r(q),{ref:r(i),role:`combobox`,type:e.as===`button`?`button`:void 0,"aria-controls":r(n).contentId,"aria-expanded":r(n).open.value||!1,"aria-required":r(n).required?.value,"aria-autocomplete":`none`,disabled:o.value,dir:r(n)?.dir.value,"data-state":r(n)?.open.value?`open`:`closed`,"data-disabled":o.value?``:void 0,"data-placeholder":r(lr)(r(n).modelValue?.value)?``:void 0,"as-child":e.asChild,as:e.as,onClick:t[0]||=e=>{(e?.currentTarget)?.focus()},onPointerdown:t[1]||=e=>{if(e.pointerType===`touch`)return e.preventDefault();let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&(p(e),e.preventDefault())},onPointerup:t[2]||=L(e=>{e.pointerType===`touch`&&p(e)},[`prevent`]),onKeydown:t[3]||=e=>{let t=r(l)!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&t&&e.key===` `||(r(u)(e.key,r(s)()),r(ar).includes(e.key)&&(f(),e.preventDefault()))}},{default:j(()=>[O(e.$slots,`default`)]),_:3},8,[`type`,`aria-controls`,`aria-expanded`,`aria-required`,`disabled`,`dir`,`data-state`,`data-disabled`,`data-placeholder`,`as-child`,`as`])]),_:3},8,[`reference`]))}}),Fr=g({__name:`SelectValue`,props:{placeholder:{type:String,required:!1,default:``},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,{forwardRef:n,currentElement:i}=U(),a=Q();E(()=>{a.valueElement=i});let o=c(()=>{let e=[],t=Array.from(a.optionsSet.value),n=e=>t.find(t=>sr(e,t.value,a.by));return e=Array.isArray(a.modelValue.value)?a.modelValue.value.map(e=>n(e)?.textContent??``):[n(a.modelValue.value)?.textContent??``],e.filter(Boolean)}),s=c(()=>o.value.length?o.value.join(`, `):t.placeholder);return(e,i)=>(m(),v(r(q),{ref:r(n),as:e.as,"as-child":e.asChild,style:{pointerEvents:`none`},"data-placeholder":o.value.length?void 0:t.placeholder},{default:j(()=>[O(e.$slots,`default`,{selectedLabel:o.value,modelValue:r(a).modelValue.value},()=>[M(_(s.value),1)])]),_:3},8,[`as`,`as-child`,`data-placeholder`]))}}),Ir=g({__name:`SelectViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let n=e,{nonce:a}=I(n),o=Bn(a),s=$(),c=s.position===`item-aligned`?vr():void 0,{forwardRef:l,currentElement:u}=U();E(()=>{s?.onViewportChange(u.value)});let d=A(0);function f(e){let t=e.currentTarget,{shouldExpandOnScrollRef:n,contentWrapper:r}=c??{};if(n?.value&&r?.value){let e=Math.abs(d.value-t.scrollTop);if(e>0){let n=window.innerHeight-20,i=Number.parseFloat(r.value.style.minHeight),a=Number.parseFloat(r.value.style.height),o=Math.max(i,a);if(o0?s:0,r.value.style.justifyContent=`flex-end`)}}}d.value=t.scrollTop}return(e,a)=>(m(),t(i,null,[h(r(q),T({ref:r(l),"data-reka-select-viewport":``,role:`presentation`},{...e.$attrs,...n},{style:{position:`relative`,flex:1,overflow:`hidden auto`},onScroll:f}),{default:j(()=>[O(e.$slots,`default`)]),_:3},16),h(r(q),{as:`style`,nonce:r(o)},{default:j(()=>a[0]||=[M(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-select-viewport]::-webkit-scrollbar { display: none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),Lr=g({__name:`TooltipArrow`,props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let t=e;return U(),(e,n)=>(m(),v(r(zn),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),[Rr,zr]=z(`TooltipProvider`),Br=g({inheritAttrs:!1,__name:`TooltipProvider`,props:{delayDuration:{type:Number,required:!1,default:700},skipDelayDuration:{type:Number,required:!1,default:300},disableHoverableContent:{type:Boolean,required:!1,default:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:!1}},setup(e){let{delayDuration:t,skipDelayDuration:n,disableHoverableContent:r,disableClosingTrigger:i,ignoreNonKeyboardFocus:a,disabled:o}=I(e);U();let s=A(!0),c=A(!1),{start:l,stop:u}=me(()=>{s.value=!0},n,{immediate:!1});return zr({isOpenDelayed:s,delayDuration:t,onOpen(){u(),s.value=!1},onClose(){l()},isPointerInTransitRef:c,disableHoverableContent:r,disableClosingTrigger:i,disabled:o,ignoreNonKeyboardFocus:a}),(e,t)=>O(e.$slots,`default`)}}),Vr=`tooltip.open`,[Hr,Ur]=z(`TooltipRoot`),Wr=g({__name:`TooltipRoot`,props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,i=t;U();let a=Rr(),o=c(()=>n.disableHoverableContent??a.disableHoverableContent.value),s=c(()=>n.disableClosingTrigger??a.disableClosingTrigger.value),l=c(()=>n.disabled??a.disabled.value),u=c(()=>n.delayDuration??a.delayDuration.value),d=c(()=>n.ignoreNonKeyboardFocus??a.ignoreNonKeyboardFocus.value),f=H(n,`open`,i,{defaultValue:n.defaultOpen,passive:n.open===void 0});F(f,e=>{a.onClose&&(e?(a.onOpen(),document.dispatchEvent(new CustomEvent(Vr))):a.onClose())});let p=A(!1),h=A(),g=c(()=>f.value?p.value?`delayed-open`:`instant-open`:`closed`),{start:_,stop:y}=me(()=>{p.value=!0,f.value=!0},u,{immediate:!1});function b(){y(),p.value=!1,f.value=!0}function x(){y(),f.value=!1}function S(){_()}return Ur({contentId:``,open:f,stateAttribute:g,trigger:h,onTriggerChange(e){h.value=e},onTriggerEnter(){a.isOpenDelayed.value?S():b()},onTriggerLeave(){o.value?x():y()},onOpen:b,onClose:x,disableHoverableContent:o,disableClosingTrigger:s,disabled:l,ignoreNonKeyboardFocus:d}),(e,t)=>(m(),v(r(En),null,{default:j(()=>[O(e.$slots,`default`,{open:r(f)})]),_:3}))}}),Gr=g({__name:`TooltipContentImpl`,props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:`top`},sideOffset:{type:Number,required:!1,default:0},align:{type:null,required:!1,default:`center`},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},arrowPadding:{type:Number,required:!1,default:0},sticky:{type:String,required:!1,default:`partial`},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,i=t,a=Hr(),{forwardRef:o}=U(),s=ne(),l=c(()=>s.default?.({})),u=c(()=>{if(n.ariaLabel)return n.ariaLabel;let e=``;function t(n){typeof n.children==`string`&&n.type!==S?e+=n.children:Array.isArray(n.children)&&n.children.forEach(e=>t(e))}return l.value?.forEach(e=>t(e)),e}),d=c(()=>{let{ariaLabel:e,...t}=n;return t});return E(()=>{We(window,`scroll`,e=>{e.target?.contains(a.trigger.value)&&a.onClose()}),We(window,Vr,a.onClose)}),(e,t)=>(m(),v(r(Ft),{"as-child":``,"disable-outside-pointer-events":!1,onEscapeKeyDown:t[0]||=e=>i(`escapeKeyDown`,e),onPointerDownOutside:t[1]||=e=>{r(a).disableClosingTrigger.value&&r(a).trigger.value?.contains(e.target)&&e.preventDefault(),i(`pointerDownOutside`,e)},onFocusOutside:t[2]||=L(()=>{},[`prevent`]),onDismiss:t[3]||=e=>r(a).onClose()},{default:j(()=>[h(r(Ln),T({ref:r(o),"data-state":r(a).stateAttribute.value},{...e.$attrs,...d.value},{style:{"--reka-tooltip-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-tooltip-content-available-width":`var(--reka-popper-available-width)`,"--reka-tooltip-content-available-height":`var(--reka-popper-available-height)`,"--reka-tooltip-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-tooltip-trigger-height":`var(--reka-popper-anchor-height)`}}),{default:j(()=>[O(e.$slots,`default`),h(r(Cn),{id:r(a).contentId,role:`tooltip`},{default:j(()=>[M(_(u.value),1)]),_:1},8,[`id`])]),_:3},16,[`data-state`])]),_:3}))}}),Kr=g({__name:`TooltipContentHoverable`,props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(e){let t=W(e),{forwardRef:n,currentElement:i}=U(),{trigger:a,onClose:o}=Hr(),s=Rr(),{isPointerInTransit:c,onPointerExit:l}=st(a,i);return s.isPointerInTransitRef=c,l(()=>{o()}),(e,i)=>(m(),v(Gr,T({ref:r(n)},r(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),qr=g({__name:`TooltipContent`,props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:`top`},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,i=t,a=Hr(),o=G(n,i),{forwardRef:s}=U();return(e,t)=>(m(),v(r(Ct),{present:e.forceMount||r(a).open.value},{default:j(()=>[(m(),v(D(r(a).disableHoverableContent.value?Gr:Kr),T({ref:r(s)},r(o)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Jr=g({__name:`TooltipPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(m(),v(r(ln),s(l(t)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16))}}),Yr=g({__name:`TooltipTrigger`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=Hr(),i=Rr();n.contentId||=K(void 0,`reka-tooltip-content`);let{forwardRef:a,currentElement:o}=U(),s=A(!1),l=A(!1),u=c(()=>n.disabled.value?{}:{click:b,focus:_,pointermove:p,pointerleave:g,pointerdown:f,blur:y});E(()=>{n.onTriggerChange(o.value)});function d(){setTimeout(()=>{s.value=!1},1)}function f(){n.open&&!n.disableClosingTrigger.value&&n.onClose(),s.value=!0,document.addEventListener(`pointerup`,d,{once:!0})}function p(e){e.pointerType!==`touch`&&!l.value&&!i.isPointerInTransitRef.value&&(n.onTriggerEnter(),l.value=!0)}function g(){n.onTriggerLeave(),l.value=!1}function _(e){s.value||n.ignoreNonKeyboardFocus.value&&!e.target.matches?.(`:focus-visible`)||n.onOpen()}function y(){n.onClose()}function b(){n.disableClosingTrigger.value||n.onClose()}return(e,i)=>(m(),v(r(Dn),{"as-child":``,reference:e.reference},{default:j(()=>[h(r(q),T({ref:r(a),"aria-describedby":r(n).open.value?r(n).contentId:void 0,"data-state":r(n).stateAttribute.value,as:e.as,"as-child":t.asChild,"data-grace-area-trigger":``},ee(u.value)),{default:j(()=>[O(e.$slots,`default`)]),_:3},16,[`aria-describedby`,`data-state`,`as`,`as-child`])]),_:3},8,[`reference`]))}});export{_n as A,Ot as B,Jn as C,bn as D,xn as E,un as F,G as H,cn as I,on as L,hn as M,fn as N,yn as O,dn as P,an as R,Yn as S,Un as T,W as U,q as V,z as W,Cr as _,Br as a,rr as b,Fr as c,Mr as d,Ar as f,wr as g,Dr as h,Wr as i,gn as j,vn as k,Pr as l,Or as m,Jr as n,Lr as o,kr as p,qr as r,Ir as s,Yr as t,Nr as u,fr as v,qn as w,Xn as x,ir as y,kt as z}; \ No newline at end of file diff --git a/docs/assets/vendor-utils-Dg-HLkEU.js b/docs/assets/vendor-utils-Dg-HLkEU.js new file mode 100644 index 0000000..886f93b --- /dev/null +++ b/docs/assets/vendor-utils-Dg-HLkEU.js @@ -0,0 +1 @@ +import{t as e}from"./rolldown-runtime-tX5UdD3f.js";var t=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),r=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),i=`-`,a=[],o=`arbitrary..`,s=e=>{let n=u(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return l(e);let t=e.split(i);return c(t,t[0]===``&&t.length>1?1:0,n)},getConflictingClassGroupIds:(e,n)=>{if(n){let n=o[e],i=r[e];return n?i?t(i,n):n:i||a}return r[e]||a}}},c=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=c(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(i):e.slice(t).join(i),l=o.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?o+r:void 0})(),u=e=>{let{theme:t,classGroups:n}=e;return d(n,t)},d=(e,t)=>{let n=r();for(let r in e){let i=e[r];f(i,n,r,t)}return n},f=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){m(e,t,n);return}if(typeof e==`function`){h(e,t,n,r);return}g(e,t,n,r)},m=(e,t,n)=>{let r=e===``?t:_(t,e);r.classGroupId=n},h=(e,t,r,i)=>{if(v(e)){f(e(i),t,r,i);return}t.validators===null&&(t.validators=[]),t.validators.push(n(r,e))},g=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,a=t.split(i),o=a.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,y=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},b=`!`,x=`:`,S=[],C=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),w=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return C(t,l,c,u)};if(t){let e=t+x,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):C(S,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},T=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},ee=e=>({cache:y(e.cacheSize),parseClassName:w(e),sortModifiers:T(e),...s(e)}),te=/\s+/,E=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(te),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+b:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e0?` `+c:c)}return c},ne=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=ee(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=E(e,n);return i(e,a),a};return a=o,(...e)=>a(ne(...e))},k=[],A=e=>{let t=t=>t[e]||k;return t.isThemeGetter=!0,t},j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,M=/^\((?:(\w[\w-]*):)?(.+)\)$/i,re=/^\d+\/\d+$/,N=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ie=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,P=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,F=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,I=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,L=e=>re.test(e),R=e=>!!e&&!Number.isNaN(Number(e)),z=e=>!!e&&Number.isInteger(Number(e)),ae=e=>e.endsWith(`%`)&&R(e.slice(0,-1)),B=e=>N.test(e),oe=()=>!0,V=e=>ie.test(e)&&!P.test(e),H=()=>!1,U=e=>F.test(e),se=e=>I.test(e),ce=e=>!W(e)&&!q(e),le=e=>X(e,_e,H),W=e=>j.test(e),G=e=>X(e,ve,V),ue=e=>X(e,ye,R),de=e=>X(e,Q,H),fe=e=>X(e,$,se),K=e=>X(e,xe,U),q=e=>M.test(e),J=e=>Z(e,ve),pe=e=>Z(e,be),me=e=>Z(e,Q),he=e=>Z(e,_e),ge=e=>Z(e,$),Y=e=>Z(e,xe,!0),X=(e,t,n)=>{let r=j.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Z=(e,t,n=!1)=>{let r=M.exec(e);return r?r[1]?t(r[1]):n:!1},Q=e=>e===`position`||e===`percentage`,$=e=>e===`image`||e===`url`,_e=e=>e===`length`||e===`size`||e===`bg-size`,ve=e=>e===`length`,ye=e=>e===`number`,be=e=>e===`family-name`,xe=e=>e===`shadow`,Se=O(()=>{let e=A(`color`),t=A(`font`),n=A(`text`),r=A(`font-weight`),i=A(`tracking`),a=A(`leading`),o=A(`breakpoint`),s=A(`container`),c=A(`spacing`),l=A(`radius`),u=A(`shadow`),d=A(`inset-shadow`),f=A(`text-shadow`),p=A(`drop-shadow`),m=A(`blur`),h=A(`perspective`),g=A(`aspect`),_=A(`ease`),v=A(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),q,W],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[q,W,c],T=()=>[L,`full`,`auto`,...w()],ee=()=>[z,`none`,`subgrid`,q,W],te=()=>[`auto`,{span:[`full`,z,q,W]},z,q,W],E=()=>[z,`auto`,q,W],ne=()=>[`auto`,`min`,`max`,`fr`,q,W],D=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],O=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],k=()=>[`auto`,...w()],j=()=>[L,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[e,q,W],re=()=>[...b(),me,de,{position:[q,W]}],N=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ie=()=>[`auto`,`cover`,`contain`,he,le,{size:[q,W]}],P=()=>[ae,J,G],F=()=>[``,`none`,`full`,l,q,W],I=()=>[``,R,J,G],V=()=>[`solid`,`dashed`,`dotted`,`double`],H=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],U=()=>[R,ae,me,de],se=()=>[``,`none`,m,q,W],X=()=>[`none`,R,q,W],Z=()=>[`none`,R,q,W],Q=()=>[R,q,W],$=()=>[L,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[B],breakpoint:[B],color:[oe],container:[B],"drop-shadow":[B],ease:[`in`,`out`,`in-out`],font:[ce],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[B],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[B],shadow:[B],spacing:[`px`,R],text:[B],"text-shadow":[B],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,L,W,q,g]}],container:[`container`],columns:[{columns:[R,W,q,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[z,`auto`,q,W]}],basis:[{basis:[L,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[R,L,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,R,q,W]}],shrink:[{shrink:[``,R,q,W]}],order:[{order:[z,`first`,`last`,`none`,q,W]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":E()}],"row-end":[{"row-end":E()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ne()}],"auto-rows":[{"auto-rows":ne()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...D(),`normal`]}],"justify-items":[{"justify-items":[...O(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...O()]}],"align-content":[{content:[`normal`,...D()]}],"align-items":[{items:[...O(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...O(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...O(),`baseline`]}],"place-self":[{"place-self":[`auto`,...O()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:k()}],mx:[{mx:k()}],my:[{my:k()}],ms:[{ms:k()}],me:[{me:k()}],mt:[{mt:k()}],mr:[{mr:k()}],mb:[{mb:k()}],ml:[{ml:k()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:j()}],w:[{w:[s,`screen`,...j()]}],"min-w":[{"min-w":[s,`screen`,`none`,...j()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...j()]}],h:[{h:[`screen`,`lh`,...j()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...j()]}],"max-h":[{"max-h":[`screen`,`lh`,...j()]}],"font-size":[{text:[`base`,n,J,G]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,q,ue]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,ae,W]}],"font-family":[{font:[pe,W,t]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,q,W]}],"line-clamp":[{"line-clamp":[R,`none`,q,ue]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,q,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,q,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...V(),`wavy`]}],"text-decoration-thickness":[{decoration:[R,`from-font`,`auto`,q,G]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[R,`auto`,q,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,q,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,q,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:re()}],"bg-repeat":[{bg:N()}],"bg-size":[{bg:ie()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},z,q,W],radial:[``,q,W],conic:[z,q,W]},ge,fe]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:F()}],"rounded-s":[{"rounded-s":F()}],"rounded-e":[{"rounded-e":F()}],"rounded-t":[{"rounded-t":F()}],"rounded-r":[{"rounded-r":F()}],"rounded-b":[{"rounded-b":F()}],"rounded-l":[{"rounded-l":F()}],"rounded-ss":[{"rounded-ss":F()}],"rounded-se":[{"rounded-se":F()}],"rounded-ee":[{"rounded-ee":F()}],"rounded-es":[{"rounded-es":F()}],"rounded-tl":[{"rounded-tl":F()}],"rounded-tr":[{"rounded-tr":F()}],"rounded-br":[{"rounded-br":F()}],"rounded-bl":[{"rounded-bl":F()}],"border-w":[{border:I()}],"border-w-x":[{"border-x":I()}],"border-w-y":[{"border-y":I()}],"border-w-s":[{"border-s":I()}],"border-w-e":[{"border-e":I()}],"border-w-t":[{"border-t":I()}],"border-w-r":[{"border-r":I()}],"border-w-b":[{"border-b":I()}],"border-w-l":[{"border-l":I()}],"divide-x":[{"divide-x":I()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":I()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...V(),`hidden`,`none`]}],"divide-style":[{divide:[...V(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...V(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[R,q,W]}],"outline-w":[{outline:[``,R,J,G]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Y,K]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Y,K]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:I()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[R,G]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":I()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,f,Y,K]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[R,q,W]}],"mix-blend":[{"mix-blend":[...H(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":H()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[R]}],"mask-image-linear-from-pos":[{"mask-linear-from":U()}],"mask-image-linear-to-pos":[{"mask-linear-to":U()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":U()}],"mask-image-t-to-pos":[{"mask-t-to":U()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":U()}],"mask-image-r-to-pos":[{"mask-r-to":U()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":U()}],"mask-image-b-to-pos":[{"mask-b-to":U()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":U()}],"mask-image-l-to-pos":[{"mask-l-to":U()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":U()}],"mask-image-x-to-pos":[{"mask-x-to":U()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":U()}],"mask-image-y-to-pos":[{"mask-y-to":U()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[q,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":U()}],"mask-image-radial-to-pos":[{"mask-radial-to":U()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[R]}],"mask-image-conic-from-pos":[{"mask-conic-from":U()}],"mask-image-conic-to-pos":[{"mask-conic-to":U()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:re()}],"mask-repeat":[{mask:N()}],"mask-size":[{mask:ie()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,q,W]}],filter:[{filter:[``,`none`,q,W]}],blur:[{blur:se()}],brightness:[{brightness:[R,q,W]}],contrast:[{contrast:[R,q,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Y,K]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,R,q,W]}],"hue-rotate":[{"hue-rotate":[R,q,W]}],invert:[{invert:[``,R,q,W]}],saturate:[{saturate:[R,q,W]}],sepia:[{sepia:[``,R,q,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,q,W]}],"backdrop-blur":[{"backdrop-blur":se()}],"backdrop-brightness":[{"backdrop-brightness":[R,q,W]}],"backdrop-contrast":[{"backdrop-contrast":[R,q,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,R,q,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[R,q,W]}],"backdrop-invert":[{"backdrop-invert":[``,R,q,W]}],"backdrop-opacity":[{"backdrop-opacity":[R,q,W]}],"backdrop-saturate":[{"backdrop-saturate":[R,q,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,R,q,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,q,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[R,`initial`,q,W]}],ease:[{ease:[`linear`,`initial`,_,q,W]}],delay:[{delay:[R,q,W]}],animate:[{animate:[`none`,v,q,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,q,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:X()}],"rotate-x":[{"rotate-x":X()}],"rotate-y":[{"rotate-y":X()}],"rotate-z":[{"rotate-z":X()}],scale:[{scale:Z()}],"scale-x":[{"scale-x":Z()}],"scale-y":[{"scale-y":Z()}],"scale-z":[{"scale-z":Z()}],"scale-3d":[`scale-3d`],skew:[{skew:Q()}],"skew-x":[{"skew-x":Q()}],"skew-y":[{"skew-y":Q()}],transform:[{transform:[q,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:$()}],"translate-x":[{"translate-x":$()}],"translate-y":[{"translate-y":$()}],"translate-z":[{"translate-z":$()}],"translate-none":[`translate-none`],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,q,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,q,W]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[R,J,G,ue]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}}),Ce=e(((e,t)=>{(function(t,n){typeof define==`function`&&define.amd?define([],n):e===void 0?(n(),t.FileSaver={exports:{}}.exports):n()})(e,function(){function e(e,t){return t===void 0?t={autoBom:!1}:typeof t!=`object`&&(console.warn(`Deprecated: Expected third argument to be a object`),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function n(e,t,n){var r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){s(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function r(e){var t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function i(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{var t=document.createEvent(`MouseEvents`);t.initMouseEvent(`click`,!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:void 0,o=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=a.saveAs||(typeof window!=`object`||window!==a?function(){}:`download`in HTMLAnchorElement.prototype&&!o?function(e,t,o){var s=a.URL||a.webkitURL,c=document.createElement(`a`);t=t||e.name||`download`,c.download=t,c.rel=`noopener`,typeof e==`string`?(c.href=e,c.origin===location.origin?i(c):r(c.href)?n(e,t,o):i(c,c.target=`_blank`)):(c.href=s.createObjectURL(e),setTimeout(function(){s.revokeObjectURL(c.href)},4e4),setTimeout(function(){i(c)},0))}:`msSaveOrOpenBlob`in navigator?function(t,a,o){if(a=a||t.name||`download`,typeof t!=`string`)navigator.msSaveOrOpenBlob(e(t,o),a);else if(r(t))n(t,a,o);else{var s=document.createElement(`a`);s.href=t,s.target=`_blank`,setTimeout(function(){i(s)})}}:function(e,t,r,i){if(i||=open(``,`_blank`),i&&(i.document.title=i.document.body.innerText=`downloading...`),typeof e==`string`)return n(e,t,r);var s=e.type===`application/octet-stream`,c=/constructor/i.test(a.HTMLElement)||a.safari,l=/CriOS\/[\d]+/.test(navigator.userAgent);if((l||s&&c||o)&&typeof FileReader<`u`){var u=new FileReader;u.onloadend=function(){var e=u.result;e=l?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),i?i.location.href=e:location=e,i=null},u.readAsDataURL(e)}else{var d=a.URL||a.webkitURL,f=d.createObjectURL(e);i?i.location=f:location.href=f,i=null,setTimeout(function(){d.revokeObjectURL(f)},4e4)}});a.saveAs=s.saveAs=s,t!==void 0&&(t.exports=s)})}));export{Se as n,Ce as t}; \ No newline at end of file diff --git a/docs/assets/vendor-vue-router-CWDMmE-U.js b/docs/assets/vendor-vue-router-CWDMmE-U.js new file mode 100644 index 0000000..baaa94d --- /dev/null +++ b/docs/assets/vendor-vue-router-CWDMmE-U.js @@ -0,0 +1 @@ +import{Cn as e,Et as t,Ht as n,It as r,Nt as i,Rt as a,gn as o,hn as s,pn as c,qt as l,tn as u,vn as d}from"./game-logic-CfBcTF_c.js";var f=typeof document<`u`;function p(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function m(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&p(e.default)}var h=Object.assign;function g(e,t){let n={};for(let r in t){let i=t[r];n[r]=v(i)?i.map(e):e(i)}return n}var _=()=>{},v=Array.isArray;function y(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var b=/#/g,ee=/&/g,te=/\//g,ne=/=/g,re=/\?/g,ie=/\+/g,x=/%5B/g,S=/%5D/g,C=/%5E/g,w=/%60/g,ae=/%7B/g,oe=/%7C/g,T=/%7D/g,se=/%20/g;function E(e){return e==null?``:encodeURI(``+e).replace(oe,`|`).replace(x,`[`).replace(S,`]`)}function ce(e){return E(e).replace(ae,`{`).replace(T,`}`).replace(C,`^`)}function D(e){return E(e).replace(ie,`%2B`).replace(se,`+`).replace(b,`%23`).replace(ee,`%26`).replace(w,"`").replace(ae,`{`).replace(T,`}`).replace(C,`^`)}function le(e){return D(e).replace(ne,`%3D`)}function ue(e){return E(e).replace(b,`%23`).replace(re,`%3F`)}function de(e){return ue(e).replace(te,`%2F`)}function O(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var k=/\/$/,fe=e=>e.replace(k,``);function pe(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=F(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:O(o)}}function me(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function A(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function he(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&j(t.matched[r],n.matched[i])&&M(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function j(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function M(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(!N(e[n],t[n]))return!1;return!0}function N(e,t){return v(e)?P(e,t):v(t)?P(t,e):e===t}function P(e,t){return v(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function F(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var I={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0},L=function(e){return e.pop=`pop`,e.push=`push`,e}({}),R=function(e){return e.back=`back`,e.forward=`forward`,e.unknown=``,e}({});function z(e){if(!e)if(f){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^\/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),fe(e)}var B=/^[^#]+#/;function V(e,t){return e.replace(B,`#`)+t}function H(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var U=()=>({left:window.scrollX,top:window.scrollY});function ge(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=H(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function _e(e,t){return(history.state?history.state.position-t:-1)+e}var W=new Map;function ve(e,t){W.set(e,t)}function ye(e){let t=W.get(e);return W.delete(e),t}function be(e){return typeof e==`string`||e&&typeof e==`object`}function xe(e){return typeof e==`string`||typeof e==`symbol`}var G=function(e){return e[e.MATCHER_NOT_FOUND=1]=`MATCHER_NOT_FOUND`,e[e.NAVIGATION_GUARD_REDIRECT=2]=`NAVIGATION_GUARD_REDIRECT`,e[e.NAVIGATION_ABORTED=4]=`NAVIGATION_ABORTED`,e[e.NAVIGATION_CANCELLED=8]=`NAVIGATION_CANCELLED`,e[e.NAVIGATION_DUPLICATED=16]=`NAVIGATION_DUPLICATED`,e}({}),Se=Symbol(``);G.MATCHER_NOT_FOUND,G.NAVIGATION_GUARD_REDIRECT,G.NAVIGATION_ABORTED,G.NAVIGATION_CANCELLED,G.NAVIGATION_DUPLICATED;function K(e,t){return h(Error(),{type:e,[Se]:!0},t)}function q(e,t){return e instanceof Error&&Se in e&&(t==null||!!(e.type&t))}function Ce(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&D(e)):[r&&D(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Te(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=v(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}var Ee=Symbol(``),De=Symbol(``),J=Symbol(``),Oe=Symbol(``),ke=Symbol(``);function Y(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function X(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(K(G.NAVIGATION_ABORTED,{from:n,to:t})):e instanceof Error?c(e):be(e)?c(K(G.NAVIGATION_GUARD_REDIRECT,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ae(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(p(s)){let c=(s.__vccOpts||s)[t];c&&a.push(X(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=m(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&X(c,n,r,o,e,i)()}))}}return a}function je(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oj(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>j(e,s))||i.push(s))}return[n,r,i]}var Me=()=>location.protocol+`//`+location.host;function Ne(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),A(n,``)}return A(n,e)+r+i}function Pe(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Ne(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:L.pop,direction:u?u>0?R.forward:R.back:R.unknown})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(h({},e.state,{scroll:U()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Fe(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?U():null}}function Ie(e){let{history:t,location:n}=window,r={value:Ne(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Me()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,h({},t.state,Fe(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=h({},i.value,t.state,{forward:e,scroll:U()});a(o.current,o,!0),a(e,h({},Fe(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Le(e){e=z(e);let t=Ie(e),n=Pe(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=h({location:``,base:e,go:r,createHref:V.bind(null,e)},t,n);return Object.defineProperty(i,`location`,{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,`state`,{enumerable:!0,get:()=>t.state.value}),i}function Re(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),Le(e)}var Z=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.Group=2]=`Group`,e}({}),Q=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.ParamRegExp=2]=`ParamRegExp`,e[e.ParamRegExpEnd=3]=`ParamRegExpEnd`,e[e.EscapeNext=4]=`EscapeNext`,e}(Q||{}),ze={type:Z.Static,value:``},Be=/[a-zA-Z0-9_]/;function Ve(e){if(!e)return[[]];if(e===`/`)return[[ze]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=Q.Static,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===Q.Static?a.push({type:Z.Static,value:l}):n===Q.Param||n===Q.ParamRegExp||n===Q.ParamRegExpEnd?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:Z.Param,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===$.Static+$.Segment?1:-1:0}function qe(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Ye={strict:!1,end:!0,sensitive:!1};function Xe(e,t,n){let r=h(Ge(Ve(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Ze(e,t){let n=[],r=new Map;t=y(Ye,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=$e(e);s.aliasOf=r&&r.record;let l=y(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push($e(h({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Xe(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!tt(d)&&o(e.name)),at(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:_}function o(e){if(xe(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=rt(e,n);n.splice(t,0,e),e.record.name&&!tt(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw K(G.MATCHER_NOT_FOUND,{location:e});s=i.record.name,a=h(Qe(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Qe(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name);else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw K(G.MATCHER_NOT_FOUND,{location:e,currentLocation:t});s=i.record.name,a=h({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:nt(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function Qe(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function $e(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:et(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,`mods`,{value:{}}),t}function et(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function tt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function nt(e){return e.reduce((e,t)=>h(e,t.meta),{})}function rt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;qe(e,t[i])<0?r=i:n=i+1}let i=it(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function it(e){let t=e;for(;t=t.parent;)if(at(t)&&qe(e,t)===0)return t}function at({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function ot(n){let r=a(J),i=a(Oe),o=t(()=>{let t=e(n.to);return r.resolve(t)}),s=t(()=>{let{matched:e}=o.value,{length:t}=e,n=e[t-1],r=i.matched;if(!n||!r.length)return-1;let a=r.findIndex(j.bind(null,n));if(a>-1)return a;let s=dt(e[t-2]);return t>1&&dt(n)===s&&r[r.length-1].path!==s?r.findIndex(j.bind(null,e[t-2])):a}),c=t(()=>s.value>-1&&ut(i.params,o.value.params)),l=t(()=>s.value>-1&&s.value===i.matched.length-1&&M(i.params,o.value.params));function u(t={}){if(lt(t)){let t=r[e(n.replace)?`replace`:`push`](e(n.to)).catch(_);return n.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>t),t}return Promise.resolve()}return{route:o,href:t(()=>o.value.href),isActive:c,isExactActive:l,navigate:u}}function st(e){return e.length===1?e[0]:e}var ct=i({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:ot,setup(e,{slots:n}){let i=c(ot(e)),{options:o}=a(J),s=t(()=>({[ft(e.activeClass,o.linkActiveClass,`router-link-active`)]:i.isActive,[ft(e.exactActiveClass,o.linkExactActiveClass,`router-link-exact-active`)]:i.isExactActive}));return()=>{let t=n.default&&st(n.default(i));return e.custom?t:r(`a`,{"aria-current":i.isExactActive?e.ariaCurrentValue:null,href:i.href,onClick:i.navigate,class:s.value},t)}}});function lt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ut(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!v(i)||i.length!==r.length||r.some((e,t)=>e!==i[t]))return!1}return!0}function dt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var ft=(e,t,n)=>e??t??n,pt=i({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(n,{attrs:i,slots:o}){let c=a(ke),d=t(()=>n.route||c.value),f=a(De,0),p=t(()=>{let t=e(f),{matched:n}=d.value,r;for(;(r=n[t])&&!r.components;)t++;return t}),m=t(()=>d.value.matched[p.value]);l(De,t(()=>p.value+1)),l(Ee,m),l(ke,d);let g=s();return u(()=>[g.value,m.value,n.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!j(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=d.value,t=n.name,a=m.value,s=a&&a.components[t];if(!s)return mt(o.default,{Component:s,route:e});let c=a.props[t],l=r(s,h({},c?c===!0?e.params:typeof c==`function`?c(e):c:null,i,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[t]=null)},ref:g}));return mt(o.default,{Component:l,route:e})||l}}});function mt(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var ht=pt;function gt(t){let r=Ze(t.routes,t),i=t.parseQuery||Ce,a=t.stringifyQuery||we,s=t.history,c=Y(),l=Y(),u=Y(),p=d(I),m=I;f&&t.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let y=g.bind(null,e=>``+e),b=g.bind(null,de),ee=g.bind(null,O);function te(e,t){let n,i;return xe(e)?(n=r.getRecordMatcher(e),i=t):i=e,r.addRoute(i,n)}function ne(e){let t=r.getRecordMatcher(e);t&&r.removeRoute(t)}function re(){return r.getRoutes().map(e=>e.record)}function ie(e){return!!r.getRecordMatcher(e)}function x(e,t){if(t=h({},t||p.value),typeof e==`string`){let n=pe(i,e,t.path),a=r.resolve({path:n.path},t),o=s.createHref(n.fullPath);return h(n,a,{params:ee(a.params),hash:O(n.hash),redirectedFrom:void 0,href:o})}let n;if(e.path!=null)n=h({},e,{path:pe(i,e.path,t.path).path});else{let r=h({},e.params);for(let e in r)r[e]??delete r[e];n=h({},e,{params:b(r)}),t.params=b(t.params)}let o=r.resolve(n,t),c=e.hash||``;o.params=y(ee(o.params));let l=me(a,h({},e,{hash:ce(c),path:o.path})),u=s.createHref(l);return h({fullPath:l,hash:c,query:a===we?Te(e.query):e.query||{}},o,{redirectedFrom:void 0,href:u})}function S(e){return typeof e==`string`?pe(i,e,p.value.path):h({},e)}function C(e,t){if(m!==e)return K(G.NAVIGATION_CANCELLED,{from:t,to:e})}function w(e){return T(e)}function ae(e){return w(h(S(e),{replace:!0}))}function oe(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=S(i):{path:i},i.params={}),h({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=m=x(e),r=p.value,i=e.state,o=e.force,s=e.replace===!0,c=oe(n,r);if(c)return T(h(S(c),{state:typeof c==`object`?h({},i,c.state):i,force:o,replace:s}),t||n);let l=n;l.redirectedFrom=t;let u;return!o&&he(a,r,n)&&(u=K(G.NAVIGATION_DUPLICATED,{to:l,from:r}),R(r,r,!0,!1)),(u?Promise.resolve(u):D(l,r)).catch(e=>q(e)?q(e,G.NAVIGATION_GUARD_REDIRECT)?e:F(e):N(e,l,r)).then(e=>{if(e){if(q(e,G.NAVIGATION_GUARD_REDIRECT))return T(h({replace:s},S(e.to),{state:typeof e.to==`object`?h({},i,e.to.state):i,force:o}),t||l)}else e=ue(l,r,!0,s,i);return le(l,r,e),e})}function se(e,t){let n=C(e,t);return n?Promise.reject(n):Promise.resolve()}function E(e){let t=V.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function D(e,t){let n,[r,i,a]=je(e,t);n=Ae(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(X(r,e,t))});let o=se.bind(null,e,t);return n.push(o),W(n).then(()=>{n=[];for(let r of c.list())n.push(X(r,e,t));return n.push(o),W(n)}).then(()=>{n=Ae(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(X(r,e,t))});return n.push(o),W(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(v(r.beforeEnter))for(let i of r.beforeEnter)n.push(X(i,e,t));else n.push(X(r.beforeEnter,e,t));return n.push(o),W(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ae(a,`beforeRouteEnter`,e,t,E),n.push(o),W(n))).then(()=>{n=[];for(let r of l.list())n.push(X(r,e,t));return n.push(o),W(n)}).catch(e=>q(e,G.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function le(e,t,n){u.list().forEach(r=>E(()=>r(e,t,n)))}function ue(e,t,n,r,i){let a=C(e,t);if(a)return a;let o=t===I,c=f?history.state:{};n&&(r||o?s.replace(e.fullPath,h({scroll:o&&c&&c.scroll},i)):s.push(e.fullPath,i)),p.value=e,R(e,t,n,o),F()}let k;function fe(){k||=s.listen((e,t,n)=>{if(!H.listening)return;let r=x(e),i=oe(r,H.currentRoute.value);if(i){T(h(i,{replace:!0,force:!0}),r).catch(_);return}m=r;let a=p.value;f&&ve(_e(a.fullPath,n.delta),U()),D(r,a).catch(e=>q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_CANCELLED)?e:q(e,G.NAVIGATION_GUARD_REDIRECT)?(T(h(S(e.to),{force:!0}),r).then(e=>{q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===L.pop&&s.go(-1,!1)}).catch(_),Promise.reject()):(n.delta&&s.go(-n.delta,!1),N(e,r,a))).then(e=>{e||=ue(r,a,!1),e&&(n.delta&&!q(e,G.NAVIGATION_CANCELLED)?s.go(-n.delta,!1):n.type===L.pop&&q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_DUPLICATED)&&s.go(-1,!1)),le(r,a,e)}).catch(_)})}let A=Y(),j=Y(),M;function N(e,t,n){F(e);let r=j.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function P(){return M&&p.value!==I?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function F(e){return M||(M=!e,fe(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function R(e,r,i,a){let{scrollBehavior:o}=t;if(!f||!o)return Promise.resolve();let s=!i&&ye(_e(e.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return n().then(()=>o(e,r,s)).then(e=>e&&ge(e)).catch(t=>N(t,e,r))}let z=e=>s.go(e),B,V=new Set,H={currentRoute:p,listening:!0,addRoute:te,removeRoute:ne,clearRoutes:r.clearRoutes,hasRoute:ie,getRoutes:re,resolve:x,options:t,push:w,replace:ae,go:z,back:()=>z(-1),forward:()=>z(1),beforeEach:c.add,beforeResolve:l.add,afterEach:u.add,onError:j.add,isReady:P,install(t){t.component(`RouterLink`,ct),t.component(`RouterView`,ht),t.config.globalProperties.$router=H,Object.defineProperty(t.config.globalProperties,`$route`,{enumerable:!0,get:()=>e(p)}),f&&!B&&p.value===I&&(B=!0,w(s.location).catch(e=>{}));let n={};for(let e in I)Object.defineProperty(n,e,{get:()=>p.value[e],enumerable:!0});t.provide(J,H),t.provide(Oe,o(n)),t.provide(ke,p);let r=t.unmount;V.add(t),t.unmount=function(){V.delete(t),V.size<1&&(m=I,k&&k(),k=null,p.value=I,B=!1,M=!1),r()}}};function W(e){return e.reduce((e,t)=>e.then(()=>E(t)),Promise.resolve())}return H}function _t(){return a(J)}function vt(e){return a(Oe)}export{vt as a,Re as i,ht as n,_t as o,gt as r,ct as t}; \ No newline at end of file diff --git a/docs/assets/vendor-vueuse-C7EbLx--.js b/docs/assets/vendor-vueuse-C7EbLx--.js new file mode 100644 index 0000000..3f4f3f0 --- /dev/null +++ b/docs/assets/vendor-vueuse-C7EbLx--.js @@ -0,0 +1 @@ +import{Cn as e,Et as t,Ht as n,Lt as r,Pt as i,Sn as a,Wt as o,hn as s,nn as c,tn as l,vn as u}from"./game-logic-CfBcTF_c.js";import{a as d,i as f,l as p,o as m,r as h,s as g,u as _}from"./vendor-others-CUjrprN5.js";var v=f?window:void 0,y=f?window.document:void 0;f&&window.navigator,f&&window.location;function b(e){let t=a(e);return t?.$el??t}function x(...n){let r=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),i=t(()=>{let e=p(a(n[0])).filter(e=>e!=null);return e.every(e=>typeof e!=`string`)?e:void 0});return _(()=>[i.value?.map(e=>b(e))??[v].filter(e=>e!=null),p(a(i.value?n[1]:n[0])),p(e(i.value?n[2]:n[1])),a(i.value?n[3]:n[2])],([e,t,n,i],a,o)=>{if(!e?.length||!t?.length||!n?.length)return;let s=m(i)?{...i}:i,c=e.flatMap(e=>t.flatMap(t=>n.map(n=>r(e,t,n,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}function S(){let e=u(!1),t=i();return t&&o(()=>{e.value=!0},t),e}function C(e){let n=S();return t(()=>(n.value,!!e()))}var w=Symbol(`vueuse-ssr-width`);function T(){let e=r()?h(w,null):null;return typeof e==`number`?e:void 0}function E(e,n={}){let{window:r=v,ssrWidth:i=T()}=n,o=C(()=>r&&`matchMedia`in r&&typeof r.matchMedia==`function`),s=u(typeof i==`number`),l=u(),d=u(!1);return c(()=>{if(s.value){s.value=!o.value,d.value=a(e).split(`,`).some(e=>{let t=e.includes(`not all`),n=e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),r=e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),a=!!(n||r);return n&&a&&(a=i>=g(n[1])),r&&a&&(a=i<=g(r[1])),t?!a:a});return}o.value&&(l.value=r.matchMedia(a(e)),d.value=l.value.matches)}),x(l,`change`,e=>{d.value=e.matches},{passive:!0}),t(()=>d.value)}function D(e){return JSON.parse(JSON.stringify(e))}function O(e,r,a,o={}){var c,u;let{clone:f=!1,passive:p=!1,eventName:m,deep:h=!1,defaultValue:g,shouldEmit:_}=o,v=i(),y=a||v?.emit||(v==null||(c=v.$emit)==null?void 0:c.bind(v))||(v==null||(u=v.proxy)==null||(u=u.$emit)==null?void 0:u.bind(v?.proxy)),b=m;r||=`modelValue`,b||=`update:${r.toString()}`;let x=e=>f?typeof f==`function`?f(e):D(e):e,S=()=>d(e[r])?x(e[r]):g,C=e=>{_?_(e)&&y(b,e):y(b,e)};if(p){let t=s(S()),i=!1;return l(()=>e[r],e=>{i||(i=!0,t.value=x(e),n(()=>i=!1))}),l(t,t=>{!i&&(t!==e[r]||h)&&C(t)},{deep:h}),t}else return t({get(){return S()},set(e){C(e)}})}export{O as i,x as n,E as r,y as t}; \ No newline at end of file diff --git a/docs/favicon.ico b/docs/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..6b3ead2f4408fecc1aefc222f50d33d0eca7e08c GIT binary patch literal 232564 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

KB1sfWpOw4ZZ&{jV?4f<~Yl|U+<_b44ozStS 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 literal 0 HcmV?d00001 diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..17da821 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,34 @@ + + + + + + + + + OGame-Vue-Ts + + + + + + + + + + + + + + + + + + +

+ + + + + + \ No newline at end of file diff --git a/docs/logo.svg b/docs/logo.svg new file mode 100644 index 0000000..4e5393d --- /dev/null +++ b/docs/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file From 9aa240e335ea8d74b1b2a6dd42a0fc5909682026 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Sun, 14 Dec 2025 16:00:03 +0800 Subject: [PATCH 03/14] =?UTF-8?q?build(workflows):=20=E6=9B=B4=E6=96=B0Doc?= =?UTF-8?q?ker=E6=9E=84=E5=BB=BA=E7=BC=93=E5=AD=98=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在GitHub Actions工作流中启用最大模式缓存 - 添加OCI镜像描述注解支持 - 配置Docker镜像输出元数据 --- .github/workflows/ogame-vue-ts.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ogame-vue-ts.yml b/.github/workflows/ogame-vue-ts.yml index 3aa3a4e..5779926 100644 --- a/.github/workflows/ogame-vue-ts.yml +++ b/.github/workflows/ogame-vue-ts.yml @@ -56,4 +56,5 @@ jobs: ${{ vars.DOCKERHUB_USERNAME != '' && format('docker.io/{0}/ogame-vue-ts:latest', vars.DOCKERHUB_USERNAME) || '' }} ${{ vars.DOCKERHUB_USERNAME != '' && format('docker.io/{0}/ogame-vue-ts:{1}', vars.DOCKERHUB_USERNAME, github.sha) || '' }} cache-from: type=gha - cache-to: type=gha,mode=max \ No newline at end of file + cache-to: type=gha,mode=max + outputs: type=image,name=target,annotation-index.org.opencontainers.image.description=OGame Vue \ No newline at end of file From 3410eeda19f15fa8b7fccd9a668ee40461078fe0 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:23:15 +0800 Subject: [PATCH 04/14] =?UTF-8?q?feat(pwa):=20=E9=9B=86=E6=88=90=20PWA=20?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=B9=B6=E9=85=8D=E7=BD=AE=E7=A6=BB=E7=BA=BF?= =?UTF-8?q?=E7=BC=93=E5=AD=98=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 vite-plugin-pwa 插件依赖 - 配置应用清单(manifest)支持全屏模式 - 设置工作箱(workbox)缓存静态资源 - 实现图片和音频资源的运行时缓存 - 调整缓存大小限制至 5MB 以适应游戏资源 - 更新构建时间戳 --- package.json | 3 +- pnpm-lock.yaml | 2876 +++++++++++++++++++++++++++++++++++++++++++++++- vite.config.ts | 52 +- 3 files changed, 2917 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index f8fddcc..e28483d 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "private": true, "version": "1.2.5", - "buildDate": "2025/12/15 20:03:44", + "buildDate": "2025/12/15 21:21:23", "main": "dist-electron/main.js", "type": "module", "scripts": { @@ -55,6 +55,7 @@ "vite": "npm:rolldown-vite@7.2.5", "vite-plugin-electron": "^0.29.0", "vite-plugin-electron-renderer": "^0.14.6", + "vite-plugin-pwa": "^1.2.0", "vue-tsc": "^3.1.4" }, "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c528e33..df85f50 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -111,6 +111,9 @@ importers: vite-plugin-electron-renderer: specifier: ^0.14.6 version: 0.14.6 + vite-plugin-pwa: + specifier: ^1.2.0 + version: 1.2.0(@vite-pwa/assets-generator@1.0.2)(rolldown-vite@7.2.5(@types/node@24.10.2)(esbuild@0.25.12)(jiti@2.6.1)(terser@5.44.1))(workbox-build@7.4.0)(workbox-window@7.4.0) vue-tsc: specifier: ^3.1.4 version: 3.1.8(typescript@5.9.3) @@ -120,6 +123,12 @@ packages: 7zip-bin@5.2.0: resolution: {integrity: sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==} + '@apideck/better-ajv-errors@0.3.6': + resolution: {integrity: sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==} + engines: {node: '>=10'} + peerDependencies: + ajv: '>=8' + '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} @@ -136,14 +145,39 @@ packages: resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==} engines: {node: '>=6.9.0'} + '@babel/helper-annotate-as-pure@7.27.3': + resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==} + engines: {node: '>=6.9.0'} + '@babel/helper-compilation-targets@7.27.2': resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} engines: {node: '>=6.9.0'} + '@babel/helper-create-class-features-plugin@7.28.5': + resolution: {integrity: sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-create-regexp-features-plugin@7.28.5': + resolution: {integrity: sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-define-polyfill-provider@0.6.5': + resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + '@babel/helper-globals@7.28.0': resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} engines: {node: '>=6.9.0'} + '@babel/helper-member-expression-to-functions@7.28.5': + resolution: {integrity: sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==} + engines: {node: '>=6.9.0'} + '@babel/helper-module-imports@7.27.1': resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} engines: {node: '>=6.9.0'} @@ -154,10 +188,30 @@ packages: peerDependencies: '@babel/core': ^7.0.0 + '@babel/helper-optimise-call-expression@7.27.1': + resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==} + engines: {node: '>=6.9.0'} + '@babel/helper-plugin-utils@7.27.1': resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==} engines: {node: '>=6.9.0'} + '@babel/helper-remap-async-to-generator@7.27.1': + resolution: {integrity: sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-replace-supers@7.27.1': + resolution: {integrity: sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-skip-transparent-expression-wrappers@7.27.1': + resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==} + engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@7.27.1': resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} engines: {node: '>=6.9.0'} @@ -170,6 +224,10 @@ packages: resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} engines: {node: '>=6.9.0'} + '@babel/helper-wrap-function@7.28.3': + resolution: {integrity: sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==} + engines: {node: '>=6.9.0'} + '@babel/helpers@7.28.4': resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} engines: {node: '>=6.9.0'} @@ -179,12 +237,381 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5': + resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1': + resolution: {integrity: sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1': + resolution: {integrity: sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1': + resolution: {integrity: sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.13.0 + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3': + resolution: {integrity: sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': + resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-assertions@7.27.1': + resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-attributes@7.27.1': + resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-unicode-sets-regex@7.18.6': + resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@babel/plugin-transform-arrow-functions@7.27.1': resolution: {integrity: sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-async-generator-functions@7.28.0': + resolution: {integrity: sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-async-to-generator@7.27.1': + resolution: {integrity: sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-block-scoped-functions@7.27.1': + resolution: {integrity: sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-block-scoping@7.28.5': + resolution: {integrity: sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-class-properties@7.27.1': + resolution: {integrity: sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-class-static-block@7.28.3': + resolution: {integrity: sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + + '@babel/plugin-transform-classes@7.28.4': + resolution: {integrity: sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-computed-properties@7.27.1': + resolution: {integrity: sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-destructuring@7.28.5': + resolution: {integrity: sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-dotall-regex@7.27.1': + resolution: {integrity: sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-duplicate-keys@7.27.1': + resolution: {integrity: sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1': + resolution: {integrity: sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-dynamic-import@7.27.1': + resolution: {integrity: sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-explicit-resource-management@7.28.0': + resolution: {integrity: sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-exponentiation-operator@7.28.5': + resolution: {integrity: sha512-D4WIMaFtwa2NizOp+dnoFjRez/ClKiC2BqqImwKd1X28nqBtZEyCYJ2ozQrrzlxAFrcrjxo39S6khe9RNDlGzw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-export-namespace-from@7.27.1': + resolution: {integrity: sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-for-of@7.27.1': + resolution: {integrity: sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-function-name@7.27.1': + resolution: {integrity: sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-json-strings@7.27.1': + resolution: {integrity: sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-literals@7.27.1': + resolution: {integrity: sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-logical-assignment-operators@7.28.5': + resolution: {integrity: sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-member-expression-literals@7.27.1': + resolution: {integrity: sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-amd@7.27.1': + resolution: {integrity: sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-commonjs@7.27.1': + resolution: {integrity: sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-systemjs@7.28.5': + resolution: {integrity: sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-umd@7.27.1': + resolution: {integrity: sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-named-capturing-groups-regex@7.27.1': + resolution: {integrity: sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-new-target@7.27.1': + resolution: {integrity: sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-nullish-coalescing-operator@7.27.1': + resolution: {integrity: sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-numeric-separator@7.27.1': + resolution: {integrity: sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-object-rest-spread@7.28.4': + resolution: {integrity: sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-object-super@7.27.1': + resolution: {integrity: sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-optional-catch-binding@7.27.1': + resolution: {integrity: sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-optional-chaining@7.28.5': + resolution: {integrity: sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-parameters@7.27.7': + resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-private-methods@7.27.1': + resolution: {integrity: sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-private-property-in-object@7.27.1': + resolution: {integrity: sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-property-literals@7.27.1': + resolution: {integrity: sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-regenerator@7.28.4': + resolution: {integrity: sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-regexp-modifiers@7.27.1': + resolution: {integrity: sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-reserved-words@7.27.1': + resolution: {integrity: sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-shorthand-properties@7.27.1': + resolution: {integrity: sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-spread@7.27.1': + resolution: {integrity: sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-sticky-regex@7.27.1': + resolution: {integrity: sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-template-literals@7.27.1': + resolution: {integrity: sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typeof-symbol@7.27.1': + resolution: {integrity: sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-escapes@7.27.1': + resolution: {integrity: sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-property-regex@7.27.1': + resolution: {integrity: sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-regex@7.27.1': + resolution: {integrity: sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-sets-regex@7.27.1': + resolution: {integrity: sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/preset-env@7.28.5': + resolution: {integrity: sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-modules@0.1.6-no-external-plugins': + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} + peerDependencies: + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 + + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} + engines: {node: '>=6.9.0'} + '@babel/template@7.27.2': resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} engines: {node: '>=6.9.0'} @@ -197,6 +624,9 @@ packages: resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} engines: {node: '>=6.9.0'} + '@canvas/image-data@1.1.0': + resolution: {integrity: sha512-QdObRRjRbcXGmM1tmJ+MrHcaz1MftF2+W7YI+MsphnsCrmtyfS0d5qJbk0MeSbUeyM/jCb0hmnkXPsy026L7dA==} + '@develar/schema-utils@2.6.5': resolution: {integrity: sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==} engines: {node: '>= 8.9.0'} @@ -428,6 +858,123 @@ packages: '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} + '@img/sharp-darwin-arm64@0.33.5': + resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.33.5': + resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.0.4': + resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.0.4': + resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.0.4': + resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-arm@1.0.5': + resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-s390x@1.0.4': + resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linux-x64@1.0.4': + resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@img/sharp-linux-arm64@0.33.5': + resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@img/sharp-linux-arm@0.33.5': + resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@img/sharp-linux-s390x@0.33.5': + resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@img/sharp-linux-x64@0.33.5': + resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@img/sharp-linuxmusl-arm64@0.33.5': + resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@img/sharp-linuxmusl-x64@0.33.5': + resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + libc: [musl] + + '@img/sharp-wasm32@0.33.5': + resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-ia32@0.33.5': + resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.33.5': + resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + '@internationalized/date@3.10.0': resolution: {integrity: sha512-oxDR/NTEJ1k+UFVQElaNIk65E/Z83HK1z1WI3lQyhTtnNg4R5oVXaPzK3jcpKG8UHKDVuDQHzn+wsxSz8RP3aw==} @@ -496,6 +1043,9 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + '@quansync/fs@1.0.0': + resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} + '@rolldown/binding-android-arm64@1.0.0-beta.50': resolution: {integrity: sha512-XlEkrOIHLyGT3avOgzfTFSjG+f+dZMw+/qd+Y3HLN86wlndrB/gSimrJCk4gOhr1XtRtEKfszpadI3Md4Z4/Ag==} engines: {node: ^20.19.0 || >=22.12.0} @@ -586,10 +1136,62 @@ packages: '@rolldown/pluginutils@1.0.0-beta.50': resolution: {integrity: sha512-5e76wQiQVeL1ICOZVUg4LSOVYg9jyhGCin+icYozhsUzM+fHE7kddi1bdiE0jwVqTfkjba3jUFbEkoC9WkdvyA==} + '@rollup/plugin-babel@5.3.1': + resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} + engines: {node: '>= 10.0.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@types/babel__core': ^7.1.9 + rollup: ^1.20.0||^2.0.0 + peerDependenciesMeta: + '@types/babel__core': + optional: true + + '@rollup/plugin-node-resolve@15.3.1': + resolution: {integrity: sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.78.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/plugin-replace@2.4.2': + resolution: {integrity: sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==} + peerDependencies: + rollup: ^1.20.0 || ^2.0.0 + + '@rollup/plugin-terser@0.4.4': + resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/pluginutils@3.1.0': + resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} + engines: {node: '>= 8.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0 + + '@rollup/pluginutils@5.3.0': + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + '@sindresorhus/is@4.6.0': resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} + '@surma/rollup-plugin-off-main-thread@2.2.3': + resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} + '@swc/helpers@0.5.17': resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} @@ -725,6 +1327,12 @@ packages: '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + '@types/estree@0.0.39': + resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/file-saver@2.0.7': resolution: {integrity: sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==} @@ -749,9 +1357,15 @@ packages: '@types/plist@3.0.5': resolution: {integrity: sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==} + '@types/resolve@1.20.2': + resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} + '@types/responselike@1.0.3': resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} + '@types/trusted-types@2.0.7': + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} + '@types/verror@1.10.11': resolution: {integrity: sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==} @@ -761,6 +1375,11 @@ packages: '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} + '@vite-pwa/assets-generator@1.0.2': + resolution: {integrity: sha512-MCbrb508JZHqe7bUibmZj/lyojdhLRnfkmyXnkrCM2zVrjTgL89U8UEfInpKTvPeTnxsw2hmyZxnhsdNR6yhwg==} + engines: {node: '>=16.14.0'} + hasBin: true + '@vitejs/plugin-vue@6.0.2': resolution: {integrity: sha512-iHmwV3QcVGGvSC1BG5bZ4z6iwa1SOpAPWmnjOErd4Ske+lZua5K9TtAVdx0gMBClJ28DViCbSmZitjWZsWO3LA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -895,6 +1514,9 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + alien-signals@3.1.1: resolution: {integrity: sha512-ogkIWbVrLwKtHY6oOAXaYkAxP+cTH7V5FZ5+Tm4NZFd8VDZ6uNMDrfzqctTZ42eTMCSR3ne3otpcxmqSnFfPYA==} @@ -931,6 +1553,14 @@ packages: resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==} engines: {node: '>=10'} + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + assert-plus@1.0.0: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} @@ -943,6 +1573,10 @@ packages: resolution: {integrity: sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==} engines: {node: '>=0.12.0'} + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + async@3.2.6: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} @@ -953,6 +1587,25 @@ packages: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + babel-plugin-polyfill-corejs2@0.4.14: + resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-corejs3@0.13.0: + resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-regenerator@0.6.5: + resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -1020,6 +1673,14 @@ packages: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + caniuse-lite@1.0.30001760: resolution: {integrity: sha512-7AAMPcueWELt1p3mi13HR/LHH0TJLT11cnwDJEs3xA4+CK/PLKeO9Kl1oru24htkyUKtkGCvAx4ohB0Ttry8Dw==} @@ -1079,6 +1740,16 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + color-string@1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + + color@4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} + engines: {node: '>=12.5.0'} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} @@ -1094,6 +1765,10 @@ packages: resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} engines: {node: ^12.20.0 || >=14} + common-tags@1.8.2: + resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} + engines: {node: '>=4.0.0'} + compare-version@0.1.2: resolution: {integrity: sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==} engines: {node: '>=0.10.0'} @@ -1104,6 +1779,10 @@ packages: config-file-ts@0.2.8-rc1: resolution: {integrity: sha512-GtNECbVI82bT4RiDIzBSVuTKoSHufnU7Ce7/42bkWZJZFLjmDF2WBpVsvRkhKCfKBnTBb3qZrBwPpFBU/Myvhg==} + consola@3.4.2: + resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==} + engines: {node: ^14.18.0 || >=16.10.0} + convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -1111,6 +1790,9 @@ packages: resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} engines: {node: '>=18'} + core-js-compat@3.47.0: + resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} + core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} @@ -1132,9 +1814,25 @@ packages: crypto-js@4.2.0: resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} + crypto-random-string@2.0.0: + resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} + engines: {node: '>=8'} + csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + debug@4.4.3: resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} engines: {node: '>=6.0'} @@ -1144,10 +1842,22 @@ packages: supports-color: optional: true + decode-bmp@0.2.1: + resolution: {integrity: sha512-NiOaGe+GN0KJqi2STf24hfMkFitDUaIoUU3eKvP/wAbLe8o6FuW5n/x7MHPR0HKvBokp6MQY/j7w8lewEeVCIA==} + engines: {node: '>=8.6.0'} + + decode-ico@0.4.1: + resolution: {integrity: sha512-69NZfbKIzux1vBOd31al3XnMnH+2mqDhEgLdpygErm4d60N+UwA5Sq5WFjmEDQzumgB9fElojGwWG0vybVfFmA==} + engines: {node: '>=8.6'} + decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} @@ -1281,6 +1991,10 @@ packages: err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} + engines: {node: '>= 0.4'} + es-define-property@1.0.1: resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} @@ -1297,6 +2011,10 @@ packages: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + es6-error@4.1.1: resolution: {integrity: sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==} @@ -1316,9 +2034,16 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} + estree-walker@1.0.1: + resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} + estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + etag@1.8.1: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} @@ -1341,6 +2066,9 @@ packages: fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} @@ -1363,6 +2091,10 @@ packages: resolution: {integrity: sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==} engines: {node: '>= 18.0.0'} + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} @@ -1410,6 +2142,17 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -1422,6 +2165,9 @@ packages: resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} engines: {node: '>= 0.4'} + get-own-enumerable-property-symbols@3.0.2: + resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} + get-proto@1.0.1: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} @@ -1430,10 +2176,19 @@ packages: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + glob@10.5.0: resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==} hasBin: true + glob@11.1.0: + resolution: {integrity: sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==} + engines: {node: 20 || >=22} + hasBin: true + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Glob versions prior to v9 are no longer supported @@ -1462,6 +2217,10 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -1469,6 +2228,10 @@ packages: has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + has-symbols@1.1.0: resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} @@ -1518,6 +2281,9 @@ packages: humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + ico-endec@0.1.6: + resolution: {integrity: sha512-ZdLU38ZoED3g1j3iEyzcQj+wAkY2xfWNkymszfJPoxucIUhK7NayQ+/C4Kv0nDFMIsbtbEHldv3V8PU494/ueQ==} + iconv-corefoundation@1.1.7: resolution: {integrity: sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==} engines: {node: ^8.11.2 || >=10} @@ -1527,6 +2293,9 @@ packages: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} + idb@7.1.1: + resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==} + ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} @@ -1548,18 +2317,65 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + ip-address@10.1.0: resolution: {integrity: sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==} engines: {node: '>= 12'} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-arrayish@0.3.4: + resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + is-ci@3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -1567,14 +2383,80 @@ packages: is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-module@1.0.0: + resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-obj@1.0.1: + resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==} + engines: {node: '>=0.10.0'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-regexp@1.0.0: + resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} + engines: {node: '>=0.10.0'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + is-unicode-supported@0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + is-what@5.5.0: resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==} engines: {node: '>=18'} + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + isbinaryfile@4.0.10: resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==} engines: {node: '>= 8.0.0'} @@ -1589,6 +2471,10 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + jackspeak@4.1.1: + resolution: {integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==} + engines: {node: 20 || >=22} + jake@10.9.4: resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==} engines: {node: '>=10'} @@ -1616,6 +2502,12 @@ packages: json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} @@ -1630,12 +2522,20 @@ packages: jsonfile@6.2.0: resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + jsonpointer@5.0.1: + resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} + engines: {node: '>=0.10.0'} + keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} lazy-val@1.0.5: resolution: {integrity: sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==} + leven@3.1.0: + resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} + engines: {node: '>=6'} + lightningcss-android-arm64@1.30.2: resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==} engines: {node: '>= 12.0.0'} @@ -1710,6 +2610,12 @@ packages: resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} engines: {node: '>= 12.0.0'} + lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + + lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -1724,6 +2630,10 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + lru-cache@11.2.4: + resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} + engines: {node: 20 || >=22} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -1740,6 +2650,9 @@ packages: peerDependencies: vue: '>=3.0.1' + magic-string@0.25.9: + resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} + magic-string@0.30.21: resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} @@ -1896,10 +2809,18 @@ packages: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + ohash@2.0.11: resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} @@ -1918,6 +2839,10 @@ packages: resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} engines: {node: '>=10'} + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + p-cancelable@2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} engines: {node: '>=8'} @@ -1948,10 +2873,17 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + path-scurry@1.11.1: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} + path-scurry@2.0.1: + resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} + engines: {node: 20 || >=22} + pe-library@0.4.1: resolution: {integrity: sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==} engines: {node: '>=12', npm: '>=6'} @@ -1965,6 +2897,10 @@ packages: picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + picomatch@4.0.3: resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} engines: {node: '>=12'} @@ -1996,6 +2932,10 @@ packages: resolution: {integrity: sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==} engines: {node: '>=10.4.0'} + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + postcss@8.5.6: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} @@ -2005,6 +2945,14 @@ packages: engines: {node: '>=14.0.0'} hasBin: true + pretty-bytes@5.6.0: + resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} + engines: {node: '>=6'} + + pretty-bytes@6.1.1: + resolution: {integrity: sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==} + engines: {node: ^14.13.1 || >=16.0.0} + proc-log@2.0.1: resolution: {integrity: sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -2032,10 +2980,16 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} + quansync@1.0.0: + resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} + quick-lru@5.1.1: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + range-parser@1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} @@ -2048,6 +3002,32 @@ packages: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regenerate-unicode-properties@10.2.2: + resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==} + engines: {node: '>=4'} + + regenerate@1.4.2: + resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + regexpu-core@6.4.0: + resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==} + engines: {node: '>=4'} + + regjsgen@0.8.0: + resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} + + regjsparser@0.13.0: + resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==} + hasBin: true + reka-ui@2.6.1: resolution: {integrity: sha512-XK7cJDQoNuGXfCNzBBo/81Yg/OgjPwvbabnlzXG2VsdSgNsT6iIkuPBPr+C0Shs+3bb0x0lbPvgQAhMSCKm5Ww==} peerDependencies: @@ -2057,6 +3037,10 @@ packages: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + resedit@1.7.2: resolution: {integrity: sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA==} engines: {node: '>=12', npm: '>=6'} @@ -2064,6 +3048,11 @@ packages: resolve-alpn@1.2.1: resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + responselike@2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} @@ -2137,9 +3126,26 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true + rollup@2.79.2: + resolution: {integrity: sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==} + engines: {node: '>=10.0.0'} + hasBin: true + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} @@ -2173,13 +3179,35 @@ packages: resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} engines: {node: '>=10'} + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + serve-static@2.2.0: resolution: {integrity: sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==} engines: {node: '>= 18'} + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + sharp-ico@0.1.5: + resolution: {integrity: sha512-a3jODQl82NPp1d5OYb0wY+oFaPk7AvyxipIowCHk7pBsZCWgbe0yAkU2OOXdoH0ENyANhyOQbs9xkAiRHcF02Q==} + + sharp@0.33.5: + resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -2188,6 +3216,22 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -2195,6 +3239,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + simple-swizzle@0.2.4: + resolution: {integrity: sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==} + simple-update-notifier@2.0.0: resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==} engines: {node: '>=10'} @@ -2207,6 +3254,9 @@ packages: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + smob@1.5.0: + resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} + socks-proxy-agent@7.0.0: resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} engines: {node: '>= 10'} @@ -2226,6 +3276,15 @@ packages: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} + source-map@0.8.0-beta.0: + resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} + engines: {node: '>= 8'} + deprecated: The work that was done in this beta branch won't be included in future versions + + sourcemap-codec@1.4.8: + resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + deprecated: Please use @jridgewell/sourcemap-codec instead + speakingurl@14.0.1: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} engines: {node: '>=0.10.0'} @@ -2245,6 +3304,10 @@ packages: resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} engines: {node: '>= 0.8'} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -2253,9 +3316,29 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-object@3.3.0: + resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} + engines: {node: '>=4'} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -2264,6 +3347,10 @@ packages: resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} engines: {node: '>=12'} + strip-comments@2.0.1: + resolution: {integrity: sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==} + engines: {node: '>=10'} + sumchecker@3.0.1: resolution: {integrity: sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==} engines: {node: '>= 8.0'} @@ -2276,6 +3363,10 @@ packages: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + tailwind-merge@3.4.0: resolution: {integrity: sha512-uSaO4gnW+b3Y2aWoWfFpX62vn2sR3skfhbjsEnaBI81WD1wBLlHZe5sWf0AqjksNdYTbGBEd0UasQMT3SNV15g==} @@ -2290,6 +3381,10 @@ packages: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} + temp-dir@2.0.0: + resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} + engines: {node: '>=8'} + temp-file@3.4.0: resolution: {integrity: sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==} @@ -2297,6 +3392,10 @@ packages: resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} engines: {node: '>=6.0.0'} + tempy@0.6.0: + resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==} + engines: {node: '>=10'} + terser@5.44.1: resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==} engines: {node: '>=10'} @@ -2316,10 +3415,16 @@ packages: resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} engines: {node: '>=14.14'} + to-data-view@1.1.0: + resolution: {integrity: sha512-1eAdufMg6mwgmlojAx3QeMnzB/BTVp7Tbndi3U7ftcT2zCZadjxkkmLmd97zmaxWi+sgGcgWrokmpEoy0Dn0vQ==} + toidentifier@1.0.1: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} + tr46@1.0.1: + resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + truncate-utf8-bytes@1.0.2: resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==} @@ -2333,17 +3438,63 @@ packages: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} engines: {node: '>=10'} + type-fest@0.16.0: + resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} + engines: {node: '>=10'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + typescript@5.9.3: resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} hasBin: true + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + unconfig-core@7.4.2: + resolution: {integrity: sha512-VgPCvLWugINbXvMQDf8Jh0mlbvNjNC6eSUziHsBCMpxR05OPrNrvDnyatdMjRgcHaaNsCqz+wjNXxNw1kRLHUg==} + + unconfig@7.4.2: + resolution: {integrity: sha512-nrMlWRQ1xdTjSnSUqvYqJzbTBFugoqHobQj58B2bc8qxHKBBHMNNsWQFP3Cd3/JZK907voM2geYPWqD4VK3MPQ==} + undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + unicode-canonical-property-names-ecmascript@2.0.1: + resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} + engines: {node: '>=4'} + + unicode-match-property-ecmascript@2.0.0: + resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} + engines: {node: '>=4'} + + unicode-match-property-value-ecmascript@2.2.1: + resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==} + engines: {node: '>=4'} + + unicode-property-aliases-ecmascript@2.2.0: + resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==} + engines: {node: '>=4'} + unique-filename@2.0.1: resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -2352,6 +3503,10 @@ packages: resolution: {integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + unique-string@2.0.0: + resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} + engines: {node: '>=8'} + universalify@0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} @@ -2360,6 +3515,10 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + upath@1.2.0: + resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} + engines: {node: '>=4'} + update-browserslist-db@1.2.2: resolution: {integrity: sha512-E85pfNzMQ9jpKkA7+TJAi4TJN+tBCuWh5rUcS/sv6cFi+1q9LYDwDI5dpUL0u/73EElyQ8d3TEaeW4sPedBqYA==} hasBin: true @@ -2390,6 +3549,18 @@ packages: vite-plugin-electron-renderer: optional: true + vite-plugin-pwa@1.2.0: + resolution: {integrity: sha512-a2xld+SJshT9Lgcv8Ji4+srFJL4k/1bVbd1x06JIkvecpQkwkvCncD1+gSzcdm3s+owWLpMJerG3aN5jupJEVw==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@vite-pwa/assets-generator': ^1.0.0 + vite: ^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + workbox-build: ^7.4.0 + workbox-window: ^7.4.0 + peerDependenciesMeta: + '@vite-pwa/assets-generator': + optional: true + vscode-uri@3.1.0: resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} @@ -2440,11 +3611,82 @@ packages: wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + webidl-conversions@4.0.2: + resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} + + whatwg-url@7.1.0: + resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.19: + resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + engines: {node: '>= 0.4'} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} hasBin: true + workbox-background-sync@7.4.0: + resolution: {integrity: sha512-8CB9OxKAgKZKyNMwfGZ1XESx89GryWTfI+V5yEj8sHjFH8MFelUwYXEyldEK6M6oKMmn807GoJFUEA1sC4XS9w==} + + workbox-broadcast-update@7.4.0: + resolution: {integrity: sha512-+eZQwoktlvo62cI0b+QBr40v5XjighxPq3Fzo9AWMiAosmpG5gxRHgTbGGhaJv/q/MFVxwFNGh/UwHZ/8K88lA==} + + workbox-build@7.4.0: + resolution: {integrity: sha512-Ntk1pWb0caOFIvwz/hfgrov/OJ45wPEhI5PbTywQcYjyZiVhT3UrwwUPl6TRYbTm4moaFYithYnl1lvZ8UjxcA==} + engines: {node: '>=20.0.0'} + + workbox-cacheable-response@7.4.0: + resolution: {integrity: sha512-0Fb8795zg/x23ISFkAc7lbWes6vbw34DGFIMw31cwuHPgDEC/5EYm6m/ZkylLX0EnEbbOyOCLjKgFS/Z5g0HeQ==} + + workbox-core@7.4.0: + resolution: {integrity: sha512-6BMfd8tYEnN4baG4emG9U0hdXM4gGuDU3ectXuVHnj71vwxTFI7WOpQJC4siTOlVtGqCUtj0ZQNsrvi6kZZTAQ==} + + workbox-expiration@7.4.0: + resolution: {integrity: sha512-V50p4BxYhtA80eOvulu8xVfPBgZbkxJ1Jr8UUn0rvqjGhLDqKNtfrDfjJKnLz2U8fO2xGQJTx/SKXNTzHOjnHw==} + + workbox-google-analytics@7.4.0: + resolution: {integrity: sha512-MVPXQslRF6YHkzGoFw1A4GIB8GrKym/A5+jYDUSL+AeJw4ytQGrozYdiZqUW1TPQHW8isBCBtyFJergUXyNoWQ==} + + workbox-navigation-preload@7.4.0: + resolution: {integrity: sha512-etzftSgdQfjMcfPgbfaZCfM2QuR1P+4o8uCA2s4rf3chtKTq/Om7g/qvEOcZkG6v7JZOSOxVYQiOu6PbAZgU6w==} + + workbox-precaching@7.4.0: + resolution: {integrity: sha512-VQs37T6jDqf1rTxUJZXRl3yjZMf5JX/vDPhmx2CPgDDKXATzEoqyRqhYnRoxl6Kr0rqaQlp32i9rtG5zTzIlNg==} + + workbox-range-requests@7.4.0: + resolution: {integrity: sha512-3Vq854ZNuP6Y0KZOQWLaLC9FfM7ZaE+iuQl4VhADXybwzr4z/sMmnLgTeUZLq5PaDlcJBxYXQ3U91V7dwAIfvw==} + + workbox-recipes@7.4.0: + resolution: {integrity: sha512-kOkWvsAn4H8GvAkwfJTbwINdv4voFoiE9hbezgB1sb/0NLyTG4rE7l6LvS8lLk5QIRIto+DjXLuAuG3Vmt3cxQ==} + + workbox-routing@7.4.0: + resolution: {integrity: sha512-C/ooj5uBWYAhAqwmU8HYQJdOjjDKBp9MzTQ+otpMmd+q0eF59K+NuXUek34wbL0RFrIXe/KKT+tUWcZcBqxbHQ==} + + workbox-strategies@7.4.0: + resolution: {integrity: sha512-T4hVqIi5A4mHi92+5EppMX3cLaVywDp8nsyUgJhOZxcfSV/eQofcOA6/EMo5rnTNmNTpw0rUgjAI6LaVullPpg==} + + workbox-streams@7.4.0: + resolution: {integrity: sha512-QHPBQrey7hQbnTs5GrEVoWz7RhHJXnPT+12qqWM378orDMo5VMJLCkCM1cnCk+8Eq92lccx/VgRZ7WAzZWbSLg==} + + workbox-sw@7.4.0: + resolution: {integrity: sha512-ltU+Kr3qWR6BtbdlMnCjobZKzeV1hN+S6UvDywBrwM19TTyqA03X66dzw1tEIdJvQ4lYKkBFox6IAEhoSEZ8Xw==} + + workbox-window@7.4.0: + resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -2489,6 +3731,13 @@ snapshots: 7zip-bin@5.2.0: {} + '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)': + dependencies: + ajv: 8.17.1 + json-schema: 0.4.0 + jsonpointer: 5.0.1 + leven: 3.1.0 + '@babel/code-frame@7.27.1': dependencies: '@babel/helper-validator-identifier': 7.28.5 @@ -2525,6 +3774,10 @@ snapshots: '@jridgewell/trace-mapping': 0.3.31 jsesc: 3.1.0 + '@babel/helper-annotate-as-pure@7.27.3': + dependencies: + '@babel/types': 7.28.5 + '@babel/helper-compilation-targets@7.27.2': dependencies: '@babel/compat-data': 7.28.5 @@ -2533,8 +3786,46 @@ snapshots: lru-cache: 5.1.1 semver: 6.3.1 + '@babel/helper-create-class-features-plugin@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-member-expression-to-functions': 7.28.5 + '@babel/helper-optimise-call-expression': 7.27.1 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + '@babel/traverse': 7.28.5 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-annotate-as-pure': 7.27.3 + regexpu-core: 6.4.0 + semver: 6.3.1 + + '@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-plugin-utils': 7.27.1 + debug: 4.4.3 + lodash.debounce: 4.0.8 + resolve: 1.22.11 + transitivePeerDependencies: + - supports-color + '@babel/helper-globals@7.28.0': {} + '@babel/helper-member-expression-to-functions@7.28.5': + dependencies: + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + transitivePeerDependencies: + - supports-color + '@babel/helper-module-imports@7.27.1': dependencies: '@babel/traverse': 7.28.5 @@ -2551,14 +3842,51 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-optimise-call-expression@7.27.1': + dependencies: + '@babel/types': 7.28.5 + '@babel/helper-plugin-utils@7.27.1': {} + '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-wrap-function': 7.28.3 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/helper-replace-supers@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-member-expression-to-functions': 7.28.5 + '@babel/helper-optimise-call-expression': 7.27.1 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.27.1': + dependencies: + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + transitivePeerDependencies: + - supports-color + '@babel/helper-string-parser@7.27.1': {} '@babel/helper-validator-identifier@7.28.5': {} '@babel/helper-validator-option@7.27.1': {} + '@babel/helper-wrap-function@7.28.3': + dependencies: + '@babel/template': 7.27.2 + '@babel/traverse': 7.28.5 + '@babel/types': 7.28.5 + transitivePeerDependencies: + - supports-color + '@babel/helpers@7.28.4': dependencies: '@babel/template': 7.27.2 @@ -2568,11 +3896,479 @@ snapshots: dependencies: '@babel/types': 7.28.5 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + + '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.5)': dependencies: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-imports': 7.27.1 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-block-scoping@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-globals': 7.28.0 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/template': 7.27.2 + + '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-logical-assignment-operators@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-systemjs@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5) + '@babel/traverse': 7.28.5 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-optional-chaining@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-annotate-as-pure': 7.27.3 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/preset-env@7.28.5(@babel/core@7.28.5)': + dependencies: + '@babel/compat-data': 7.28.5 + '@babel/core': 7.28.5 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/helper-validator-option': 7.27.1 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.5) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5) + '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.5) + '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.5) + '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-block-scoping': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.5) + '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.5) + '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.5) + '@babel/plugin-transform-exponentiation-operator': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-logical-assignment-operators': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-modules-systemjs': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.5) + '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5) + '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5) + '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.5) + '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.5) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.5) + babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5) + babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5) + babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5) + core-js-compat: 3.47.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.5)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/types': 7.28.5 + esutils: 2.0.3 + + '@babel/runtime@7.28.4': {} + '@babel/template@7.27.2': dependencies: '@babel/code-frame': 7.27.1 @@ -2596,6 +4392,9 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 + '@canvas/image-data@1.1.0': + optional: true + '@develar/schema-utils@2.6.5': dependencies: ajv: 6.12.6 @@ -2827,6 +4626,81 @@ snapshots: '@gar/promisify@1.1.3': {} + '@img/sharp-darwin-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.0.4 + optional: true + + '@img/sharp-darwin-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.0.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.0.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.0.5': + optional: true + + '@img/sharp-libvips-linux-s390x@1.0.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + optional: true + + '@img/sharp-linux-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.0.4 + optional: true + + '@img/sharp-linux-arm@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.0.5 + optional: true + + '@img/sharp-linux-s390x@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.0.4 + optional: true + + '@img/sharp-linux-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + optional: true + + '@img/sharp-wasm32@0.33.5': + dependencies: + '@emnapi/runtime': 1.7.1 + optional: true + + '@img/sharp-win32-ia32@0.33.5': + optional: true + + '@img/sharp-win32-x64@0.33.5': + optional: true + '@internationalized/date@3.10.0': dependencies: '@swc/helpers': 0.5.17 @@ -2866,7 +4740,6 @@ snapshots: dependencies: '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 - optional: true '@jridgewell/sourcemap-codec@1.5.5': {} @@ -2912,6 +4785,11 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true + '@quansync/fs@1.0.0': + dependencies: + quansync: 1.0.0 + optional: true + '@rolldown/binding-android-arm64@1.0.0-beta.50': optional: true @@ -2958,8 +4836,63 @@ snapshots: '@rolldown/pluginutils@1.0.0-beta.50': {} + '@rollup/plugin-babel@5.3.1(@babel/core@7.28.5)(rollup@2.79.2)': + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-module-imports': 7.27.1 + '@rollup/pluginutils': 3.1.0(rollup@2.79.2) + rollup: 2.79.2 + transitivePeerDependencies: + - supports-color + + '@rollup/plugin-node-resolve@15.3.1(rollup@2.79.2)': + dependencies: + '@rollup/pluginutils': 5.3.0(rollup@2.79.2) + '@types/resolve': 1.20.2 + deepmerge: 4.3.1 + is-module: 1.0.0 + resolve: 1.22.11 + optionalDependencies: + rollup: 2.79.2 + + '@rollup/plugin-replace@2.4.2(rollup@2.79.2)': + dependencies: + '@rollup/pluginutils': 3.1.0(rollup@2.79.2) + magic-string: 0.25.9 + rollup: 2.79.2 + + '@rollup/plugin-terser@0.4.4(rollup@2.79.2)': + dependencies: + serialize-javascript: 6.0.2 + smob: 1.5.0 + terser: 5.44.1 + optionalDependencies: + rollup: 2.79.2 + + '@rollup/pluginutils@3.1.0(rollup@2.79.2)': + dependencies: + '@types/estree': 0.0.39 + estree-walker: 1.0.1 + picomatch: 2.3.1 + rollup: 2.79.2 + + '@rollup/pluginutils@5.3.0(rollup@2.79.2)': + dependencies: + '@types/estree': 1.0.8 + estree-walker: 2.0.2 + picomatch: 4.0.3 + optionalDependencies: + rollup: 2.79.2 + '@sindresorhus/is@4.6.0': {} + '@surma/rollup-plugin-off-main-thread@2.2.3': + dependencies: + ejs: 3.1.10 + json5: 2.2.3 + magic-string: 0.25.9 + string.prototype.matchall: 4.0.12 + '@swc/helpers@0.5.17': dependencies: tslib: 2.8.1 @@ -3070,6 +5003,10 @@ snapshots: dependencies: '@types/ms': 2.1.0 + '@types/estree@0.0.39': {} + + '@types/estree@1.0.8': {} + '@types/file-saver@2.0.7': {} '@types/fs-extra@9.0.13': @@ -3098,10 +5035,14 @@ snapshots: xmlbuilder: 15.1.1 optional: true + '@types/resolve@1.20.2': {} + '@types/responselike@1.0.3': dependencies: '@types/node': 24.10.2 + '@types/trusted-types@2.0.7': {} + '@types/verror@1.10.11': optional: true @@ -3112,6 +5053,16 @@ snapshots: '@types/node': 24.10.2 optional: true + '@vite-pwa/assets-generator@1.0.2': + dependencies: + cac: 6.7.14 + colorette: 2.0.20 + consola: 3.4.2 + sharp: 0.33.5 + sharp-ico: 0.1.5 + unconfig: 7.4.2 + optional: true + '@vitejs/plugin-vue@6.0.2(rolldown-vite@7.2.5(@types/node@24.10.2)(esbuild@0.25.12)(jiti@2.6.1)(terser@5.44.1))(vue@3.5.25(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.50 @@ -3255,8 +5206,7 @@ snapshots: abbrev@1.1.1: {} - acorn@8.15.0: - optional: true + acorn@8.15.0: {} agent-base@6.0.2: dependencies: @@ -3286,6 +5236,13 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + ajv@8.17.1: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + alien-signals@3.1.1: {} ansi-regex@5.0.1: {} @@ -3347,6 +5304,21 @@ snapshots: dependencies: tslib: 2.8.1 + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + assert-plus@1.0.0: optional: true @@ -3355,12 +5327,42 @@ snapshots: async-exit-hook@2.0.1: {} + async-function@1.0.0: {} + async@3.2.6: {} asynckit@0.4.0: {} at-least-node@1.0.0: {} + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.5): + dependencies: + '@babel/compat-data': 7.28.5 + '@babel/core': 7.28.5 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.5): + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) + core-js-compat: 3.47.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-regenerator@0.6.5(@babel/core@7.28.5): + dependencies: + '@babel/core': 7.28.5 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) + transitivePeerDependencies: + - supports-color + balanced-match@1.0.2: {} base64-js@1.5.1: {} @@ -3475,6 +5477,18 @@ snapshots: es-errors: 1.3.0 function-bind: 1.1.2 + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + caniuse-lite@1.0.30001760: {} chalk@4.1.2: @@ -3526,18 +5540,34 @@ snapshots: color-name@1.1.4: {} + color-string@1.9.1: + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.4 + optional: true + + color@4.2.3: + dependencies: + color-convert: 2.0.1 + color-string: 1.9.1 + optional: true + + colorette@2.0.20: + optional: true + combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 - commander@2.20.3: - optional: true + commander@2.20.3: {} commander@5.1.0: {} commander@9.5.0: optional: true + common-tags@1.8.2: {} + compare-version@0.1.2: {} concat-map@0.0.1: {} @@ -3547,12 +5577,19 @@ snapshots: glob: 10.5.0 typescript: 5.9.3 + consola@3.4.2: + optional: true + convert-source-map@2.0.0: {} copy-anything@4.0.5: dependencies: is-what: 5.5.0 + core-js-compat@3.47.0: + dependencies: + browserslist: 4.28.1 + core-util-is@1.0.2: optional: true @@ -3576,16 +5613,51 @@ snapshots: crypto-js@4.2.0: {} + crypto-random-string@2.0.0: {} + csstype@3.2.3: {} + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + debug@4.4.3: dependencies: ms: 2.1.3 + decode-bmp@0.2.1: + dependencies: + '@canvas/image-data': 1.1.0 + to-data-view: 1.1.0 + optional: true + + decode-ico@0.4.1: + dependencies: + '@canvas/image-data': 1.1.0 + decode-bmp: 0.2.1 + to-data-view: 1.1.0 + optional: true + decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 + deepmerge@4.3.1: {} + defaults@1.0.4: dependencies: clone: 1.0.4 @@ -3597,14 +5669,12 @@ snapshots: es-define-property: 1.0.1 es-errors: 1.3.0 gopd: 1.2.0 - optional: true define-properties@1.2.1: dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 - optional: true defu@6.1.4: {} @@ -3769,6 +5839,63 @@ snapshots: err-code@2.0.3: {} + es-abstract@1.24.1: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + es-define-property@1.0.1: {} es-errors@1.3.0: {} @@ -3784,6 +5911,12 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + es6-error@4.1.1: optional: true @@ -3823,8 +5956,12 @@ snapshots: escape-string-regexp@4.0.0: optional: true + estree-walker@1.0.1: {} + estree-walker@2.0.2: {} + esutils@2.0.3: {} + etag@1.8.1: {} exponential-backoff@3.1.3: {} @@ -3846,6 +5983,8 @@ snapshots: fast-json-stable-stringify@2.1.0: {} + fast-uri@3.1.0: {} + fd-slicer@1.1.0: dependencies: pend: 1.2.0 @@ -3871,6 +6010,10 @@ snapshots: transitivePeerDependencies: - supports-color + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 @@ -3928,6 +6071,19 @@ snapshots: function-bind@1.1.2: {} + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + gensync@1.0.0-beta.2: {} get-caller-file@2.0.5: {} @@ -3945,6 +6101,8 @@ snapshots: hasown: 2.0.2 math-intrinsics: 1.1.0 + get-own-enumerable-property-symbols@3.0.2: {} + get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 @@ -3954,6 +6112,12 @@ snapshots: dependencies: pump: 3.0.3 + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + glob@10.5.0: dependencies: foreground-child: 3.3.1 @@ -3963,6 +6127,15 @@ snapshots: package-json-from-dist: 1.0.1 path-scurry: 1.11.1 + glob@11.1.0: + dependencies: + foreground-child: 3.3.1 + jackspeak: 4.1.1 + minimatch: 10.1.1 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.1 + glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -3994,7 +6167,6 @@ snapshots: dependencies: define-properties: 1.2.1 gopd: 1.2.0 - optional: true gopd@1.2.0: {} @@ -4014,12 +6186,17 @@ snapshots: graceful-fs@4.2.11: {} + has-bigints@1.1.0: {} + has-flag@4.0.0: {} has-property-descriptors@1.0.2: dependencies: es-define-property: 1.0.1 - optional: true + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 has-symbols@1.1.0: {} @@ -4085,6 +6262,9 @@ snapshots: dependencies: ms: 2.1.3 + ico-endec@0.1.6: + optional: true + iconv-corefoundation@1.1.7: dependencies: cli-truncate: 2.1.0 @@ -4095,6 +6275,8 @@ snapshots: dependencies: safer-buffer: 2.1.2 + idb@7.1.1: {} + ieee754@1.2.1: {} imurmurhash@0.1.4: {} @@ -4110,22 +6292,141 @@ snapshots: inherits@2.0.4: {} + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + ip-address@10.1.0: {} + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-arrayish@0.3.4: + optional: true + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-callable@1.2.7: {} + is-ci@3.0.1: dependencies: ci-info: 3.9.0 + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + is-fullwidth-code-point@3.0.0: {} + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + is-interactive@1.0.0: {} is-lambda@1.0.1: {} + is-map@2.0.3: {} + + is-module@1.0.0: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-obj@1.0.1: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-regexp@1.0.0: {} + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-stream@2.0.1: {} + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.19 + is-unicode-supported@0.1.0: {} + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-what@5.5.0: {} + isarray@2.0.5: {} + isbinaryfile@4.0.10: {} isbinaryfile@5.0.7: {} @@ -4138,6 +6439,10 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 + jackspeak@4.1.1: + dependencies: + '@isaacs/cliui': 8.0.2 + jake@10.9.4: dependencies: async: 3.2.6 @@ -4158,6 +6463,10 @@ snapshots: json-schema-traverse@0.4.1: {} + json-schema-traverse@1.0.0: {} + + json-schema@0.4.0: {} + json-stringify-safe@5.0.1: optional: true @@ -4173,12 +6482,16 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 + jsonpointer@5.0.1: {} + keyv@4.5.4: dependencies: json-buffer: 3.0.1 lazy-val@1.0.5: {} + leven@3.1.0: {} + lightningcss-android-arm64@1.30.2: optional: true @@ -4228,6 +6541,10 @@ snapshots: lightningcss-win32-arm64-msvc: 1.30.2 lightningcss-win32-x64-msvc: 1.30.2 + lodash.debounce@4.0.8: {} + + lodash.sortby@4.7.0: {} + lodash@4.17.21: {} log-symbols@4.1.0: @@ -4239,6 +6556,8 @@ snapshots: lru-cache@10.4.3: {} + lru-cache@11.2.4: {} + lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -4253,6 +6572,10 @@ snapshots: dependencies: vue: 3.5.25(typescript@5.9.3) + magic-string@0.25.9: + dependencies: + sourcemap-codec: 1.4.8 + magic-string@0.30.21: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -4398,8 +6721,18 @@ snapshots: normalize-url@6.1.0: {} - object-keys@1.1.1: - optional: true + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 ohash@2.0.11: {} @@ -4427,6 +6760,12 @@ snapshots: strip-ansi: 6.0.1 wcwidth: 1.0.1 + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + p-cancelable@2.1.1: {} p-limit@3.1.0: @@ -4447,11 +6786,18 @@ snapshots: path-key@3.1.1: {} + path-parse@1.0.7: {} + path-scurry@1.11.1: dependencies: lru-cache: 10.4.3 minipass: 7.1.2 + path-scurry@2.0.1: + dependencies: + lru-cache: 11.2.4 + minipass: 7.1.2 + pe-library@0.4.1: {} pend@1.2.0: {} @@ -4460,6 +6806,8 @@ snapshots: picocolors@1.1.1: {} + picomatch@2.3.1: {} + picomatch@4.0.3: {} pinia-plugin-persistedstate@4.7.1(pinia@3.0.4(typescript@5.9.3)(vue@3.5.25(typescript@5.9.3))): @@ -4481,6 +6829,8 @@ snapshots: base64-js: 1.5.1 xmlbuilder: 15.1.1 + possible-typed-array-names@1.1.0: {} + postcss@8.5.6: dependencies: nanoid: 3.3.11 @@ -4492,6 +6842,10 @@ snapshots: commander: 9.5.0 optional: true + pretty-bytes@5.6.0: {} + + pretty-bytes@6.1.1: {} + proc-log@2.0.1: {} progress@2.0.3: {} @@ -4510,8 +6864,15 @@ snapshots: punycode@2.3.1: {} + quansync@1.0.0: + optional: true + quick-lru@5.1.1: {} + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + range-parser@1.2.1: {} read-binary-file-arch@1.0.6: @@ -4526,6 +6887,47 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + regenerate-unicode-properties@10.2.2: + dependencies: + regenerate: 1.4.2 + + regenerate@1.4.2: {} + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + regexpu-core@6.4.0: + dependencies: + regenerate: 1.4.2 + regenerate-unicode-properties: 10.2.2 + regjsgen: 0.8.0 + regjsparser: 0.13.0 + unicode-match-property-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.2.1 + + regjsgen@0.8.0: {} + + regjsparser@0.13.0: + dependencies: + jsesc: 3.1.0 + reka-ui@2.6.1(typescript@5.9.3)(vue@3.5.25(typescript@5.9.3)): dependencies: '@floating-ui/dom': 1.7.4 @@ -4545,12 +6947,20 @@ snapshots: require-directory@2.1.1: {} + require-from-string@2.0.2: {} + resedit@1.7.2: dependencies: pe-library: 0.4.1 resolve-alpn@1.2.1: {} + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + responselike@2.0.1: dependencies: lowercase-keys: 2.0.0 @@ -4618,8 +7028,31 @@ snapshots: '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.50 '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.50 + rollup@2.79.2: + optionalDependencies: + fsevents: 2.3.3 + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + safe-buffer@5.2.1: {} + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + safer-buffer@2.1.2: {} sanitize-filename@1.6.3: @@ -4658,6 +7091,10 @@ snapshots: type-fest: 0.13.1 optional: true + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + serve-static@2.2.0: dependencies: encodeurl: 2.0.0 @@ -4667,18 +7104,107 @@ snapshots: transitivePeerDependencies: - supports-color + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + setprototypeof@1.2.0: {} + sharp-ico@0.1.5: + dependencies: + decode-ico: 0.4.1 + ico-endec: 0.1.6 + sharp: 0.33.5 + optional: true + + sharp@0.33.5: + dependencies: + color: 4.2.3 + detect-libc: 2.1.2 + semver: 7.7.3 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.33.5 + '@img/sharp-darwin-x64': 0.33.5 + '@img/sharp-libvips-darwin-arm64': 1.0.4 + '@img/sharp-libvips-darwin-x64': 1.0.4 + '@img/sharp-libvips-linux-arm': 1.0.5 + '@img/sharp-libvips-linux-arm64': 1.0.4 + '@img/sharp-libvips-linux-s390x': 1.0.4 + '@img/sharp-libvips-linux-x64': 1.0.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + '@img/sharp-linux-arm': 0.33.5 + '@img/sharp-linux-arm64': 0.33.5 + '@img/sharp-linux-s390x': 0.33.5 + '@img/sharp-linux-x64': 0.33.5 + '@img/sharp-linuxmusl-arm64': 0.33.5 + '@img/sharp-linuxmusl-x64': 0.33.5 + '@img/sharp-wasm32': 0.33.5 + '@img/sharp-win32-ia32': 0.33.5 + '@img/sharp-win32-x64': 0.33.5 + optional: true + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 shebang-regex@3.0.0: {} + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + signal-exit@3.0.7: {} signal-exit@4.1.0: {} + simple-swizzle@0.2.4: + dependencies: + is-arrayish: 0.3.4 + optional: true + simple-update-notifier@2.0.0: dependencies: semver: 7.7.3 @@ -4692,6 +7218,8 @@ snapshots: smart-buffer@4.2.0: {} + smob@1.5.0: {} + socks-proxy-agent@7.0.0: dependencies: agent-base: 6.0.2 @@ -4714,6 +7242,12 @@ snapshots: source-map@0.6.1: {} + source-map@0.8.0-beta.0: + dependencies: + whatwg-url: 7.1.0 + + sourcemap-codec@1.4.8: {} + speakingurl@14.0.1: {} sprintf-js@1.1.3: @@ -4727,6 +7261,11 @@ snapshots: statuses@2.0.2: {} + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -4739,10 +7278,55 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.2 + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + string_decoder@1.3.0: dependencies: safe-buffer: 5.2.1 + stringify-object@3.3.0: + dependencies: + get-own-enumerable-property-symbols: 3.0.2 + is-obj: 1.0.1 + is-regexp: 1.0.0 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -4751,6 +7335,8 @@ snapshots: dependencies: ansi-regex: 6.2.2 + strip-comments@2.0.1: {} + sumchecker@3.0.1: dependencies: debug: 4.4.3 @@ -4765,6 +7351,8 @@ snapshots: dependencies: has-flag: 4.0.0 + supports-preserve-symlinks-flag@1.0.0: {} + tailwind-merge@3.4.0: {} tailwindcss@4.1.17: {} @@ -4780,6 +7368,8 @@ snapshots: mkdirp: 1.0.4 yallist: 4.0.0 + temp-dir@2.0.0: {} + temp-file@3.4.0: dependencies: async-exit-hook: 2.0.1 @@ -4790,13 +7380,19 @@ snapshots: mkdirp: 0.5.6 rimraf: 2.6.3 + tempy@0.6.0: + dependencies: + is-stream: 2.0.1 + temp-dir: 2.0.0 + type-fest: 0.16.0 + unique-string: 2.0.0 + terser@5.44.1: dependencies: '@jridgewell/source-map': 0.3.11 acorn: 8.15.0 commander: 2.20.3 source-map-support: 0.5.21 - optional: true tiny-async-pool@1.3.0: dependencies: @@ -4813,8 +7409,15 @@ snapshots: tmp@0.2.5: {} + to-data-view@1.1.0: + optional: true + toidentifier@1.0.1: {} + tr46@1.0.1: + dependencies: + punycode: 2.3.1 + truncate-utf8-bytes@1.0.2: dependencies: utf8-byte-length: 1.0.5 @@ -4826,12 +7429,80 @@ snapshots: type-fest@0.13.1: optional: true + type-fest@0.16.0: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + typescript@5.9.3: {} + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + unconfig-core@7.4.2: + dependencies: + '@quansync/fs': 1.0.0 + quansync: 1.0.0 + optional: true + + unconfig@7.4.2: + dependencies: + '@quansync/fs': 1.0.0 + defu: 6.1.4 + jiti: 2.6.1 + quansync: 1.0.0 + unconfig-core: 7.4.2 + optional: true + undici-types@6.21.0: {} undici-types@7.16.0: {} + unicode-canonical-property-names-ecmascript@2.0.1: {} + + unicode-match-property-ecmascript@2.0.0: + dependencies: + unicode-canonical-property-names-ecmascript: 2.0.1 + unicode-property-aliases-ecmascript: 2.2.0 + + unicode-match-property-value-ecmascript@2.2.1: {} + + unicode-property-aliases-ecmascript@2.2.0: {} + unique-filename@2.0.1: dependencies: unique-slug: 3.0.0 @@ -4840,10 +7511,16 @@ snapshots: dependencies: imurmurhash: 0.1.4 + unique-string@2.0.0: + dependencies: + crypto-random-string: 2.0.0 + universalify@0.1.2: {} universalify@2.0.1: {} + upath@1.2.0: {} + update-browserslist-db@1.2.2(browserslist@4.28.1): dependencies: browserslist: 4.28.1 @@ -4871,6 +7548,19 @@ snapshots: optionalDependencies: vite-plugin-electron-renderer: 0.14.6 + vite-plugin-pwa@1.2.0(@vite-pwa/assets-generator@1.0.2)(rolldown-vite@7.2.5(@types/node@24.10.2)(esbuild@0.25.12)(jiti@2.6.1)(terser@5.44.1))(workbox-build@7.4.0)(workbox-window@7.4.0): + dependencies: + debug: 4.4.3 + pretty-bytes: 6.1.1 + tinyglobby: 0.2.15 + vite: rolldown-vite@7.2.5(@types/node@24.10.2)(esbuild@0.25.12)(jiti@2.6.1)(terser@5.44.1) + workbox-build: 7.4.0 + workbox-window: 7.4.0 + optionalDependencies: + '@vite-pwa/assets-generator': 1.0.2 + transitivePeerDependencies: + - supports-color + vscode-uri@3.1.0: {} vue-demi@0.14.10(vue@3.5.25(typescript@5.9.3)): @@ -4904,10 +7594,172 @@ snapshots: dependencies: defaults: 1.0.4 + webidl-conversions@4.0.2: {} + + whatwg-url@7.1.0: + dependencies: + lodash.sortby: 4.7.0 + tr46: 1.0.1 + webidl-conversions: 4.0.2 + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.19 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.19: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + which@2.0.2: dependencies: isexe: 2.0.0 + workbox-background-sync@7.4.0: + dependencies: + idb: 7.1.1 + workbox-core: 7.4.0 + + workbox-broadcast-update@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-build@7.4.0: + dependencies: + '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1) + '@babel/core': 7.28.5 + '@babel/preset-env': 7.28.5(@babel/core@7.28.5) + '@babel/runtime': 7.28.4 + '@rollup/plugin-babel': 5.3.1(@babel/core@7.28.5)(rollup@2.79.2) + '@rollup/plugin-node-resolve': 15.3.1(rollup@2.79.2) + '@rollup/plugin-replace': 2.4.2(rollup@2.79.2) + '@rollup/plugin-terser': 0.4.4(rollup@2.79.2) + '@surma/rollup-plugin-off-main-thread': 2.2.3 + ajv: 8.17.1 + common-tags: 1.8.2 + fast-json-stable-stringify: 2.1.0 + fs-extra: 9.1.0 + glob: 11.1.0 + lodash: 4.17.21 + pretty-bytes: 5.6.0 + rollup: 2.79.2 + source-map: 0.8.0-beta.0 + stringify-object: 3.3.0 + strip-comments: 2.0.1 + tempy: 0.6.0 + upath: 1.2.0 + workbox-background-sync: 7.4.0 + workbox-broadcast-update: 7.4.0 + workbox-cacheable-response: 7.4.0 + workbox-core: 7.4.0 + workbox-expiration: 7.4.0 + workbox-google-analytics: 7.4.0 + workbox-navigation-preload: 7.4.0 + workbox-precaching: 7.4.0 + workbox-range-requests: 7.4.0 + workbox-recipes: 7.4.0 + workbox-routing: 7.4.0 + workbox-strategies: 7.4.0 + workbox-streams: 7.4.0 + workbox-sw: 7.4.0 + workbox-window: 7.4.0 + transitivePeerDependencies: + - '@types/babel__core' + - supports-color + + workbox-cacheable-response@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-core@7.4.0: {} + + workbox-expiration@7.4.0: + dependencies: + idb: 7.1.1 + workbox-core: 7.4.0 + + workbox-google-analytics@7.4.0: + dependencies: + workbox-background-sync: 7.4.0 + workbox-core: 7.4.0 + workbox-routing: 7.4.0 + workbox-strategies: 7.4.0 + + workbox-navigation-preload@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-precaching@7.4.0: + dependencies: + workbox-core: 7.4.0 + workbox-routing: 7.4.0 + workbox-strategies: 7.4.0 + + workbox-range-requests@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-recipes@7.4.0: + dependencies: + workbox-cacheable-response: 7.4.0 + workbox-core: 7.4.0 + workbox-expiration: 7.4.0 + workbox-precaching: 7.4.0 + workbox-routing: 7.4.0 + workbox-strategies: 7.4.0 + + workbox-routing@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-strategies@7.4.0: + dependencies: + workbox-core: 7.4.0 + + workbox-streams@7.4.0: + dependencies: + workbox-core: 7.4.0 + workbox-routing: 7.4.0 + + workbox-sw@7.4.0: {} + + workbox-window@7.4.0: + dependencies: + '@types/trusted-types': 2.0.7 + workbox-core: 7.4.0 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 diff --git a/vite.config.ts b/vite.config.ts index 31d3476..2ce43b7 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -3,11 +3,61 @@ import vue from '@vitejs/plugin-vue' import tailwindcss from '@tailwindcss/vite' import path from 'node:path' import { fileURLToPath } from 'node:url' +import { VitePWA } from 'vite-plugin-pwa' +import pkg from './package.json' const __dirname = path.dirname(fileURLToPath(import.meta.url)) export default defineConfig(async () => { - const plugins = [vue(), tailwindcss()] + const plugins = [ + vue(), + tailwindcss(), + VitePWA({ + registerType: 'autoUpdate', + manifest: { + name: pkg.name, + short_name: pkg.title, + description: '一款现代化 OGame 太空策略游戏', + theme_color: '#000000', + background_color: '#000000', + display: 'fullscreen', + orientation: 'any', + icons: [ + { + src: 'logo.svg', + sizes: 'any', + type: 'image/svg+xml', + purpose: 'any', + }, + ], + + }, + workbox: { + // 关键:确保缓存了 dist 目录下所有的 JS, CSS, HTML 和 媒体文件 + globPatterns: ['docs/*.{js,css,html,ico,png,svg,mp3,wav,json}'], + + // 如果你的游戏资源(如音效或贴图)较大,请根据需要调大这个阈值(默认 2MB) + // 这里设置为 5MB + maximumFileSizeToCacheInBytes: 5 * 1024 * 1024, + + // 离线策略优化:对于游戏,我们希望即使在离线状态下, + // 所有的资源都能立刻从缓存加载,而不是去请求网络 + runtimeCaching: [ + { + urlPattern: ({ request }) => request.destination === 'image' || request.destination === 'audio', + handler: 'CacheFirst', // 优先使用缓存 + options: { + cacheName: 'game-assets', + expiration: { + maxEntries: 100, + maxAgeSeconds: 30 * 24 * 60 * 60, // 缓存 30 天 + }, + }, + }, + ], + } + }) + ]; // 只在 ELECTRON_BUILD 环境变量存在时才加载 Electron 插件 if (process.env.ELECTRON_BUILD) { From add90c5603b0a07d9c44f5ece3c6008e040b610d Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:23:26 +0800 Subject: [PATCH 05/14] =?UTF-8?q?feat(tsconfig):=20=E5=90=AF=E7=94=A8=20JS?= =?UTF-8?q?ON=20=E6=A8=A1=E5=9D=97=E8=A7=A3=E6=9E=90=E5=92=8C=20ES=20?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E4=BA=92=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 resolveJsonModule 选项以支持导入 JSON 文件 - 启用 esModuleInterop 以改善 CommonJS 和 ES 模块之间的兼容性 - 设置 allowSyntheticDefaultImports 允许合成默认导入 --- tsconfig.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 16971f8..1029d16 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,6 +4,9 @@ "compilerOptions": { "paths": { "@/*": ["./src/*"] - } + }, + "resolveJsonModule": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true } } From 751cb1e341b67d2e3d19c087f4aff3bb076ff3f4 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:32:46 +0800 Subject: [PATCH 06/14] =?UTF-8?q?ci(github-actions):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=20GitHub=20Pages=20=E9=83=A8=E7=BD=B2=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增部署到 GitHub Pages 的自动化流程 - 配置在 main 分支推送时触发构建和部署 - 使用 pnpm 进行依赖安装与项目构建 - 通过 github-pages-deploy-action 推送构建产物至 gh-pages 分支 - 指定 docs 目录作为部署源文件夹 --- .github/workflows/github-pages.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/github-pages.yml diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml new file mode 100644 index 0000000..79f8c6f --- /dev/null +++ b/.github/workflows/github-pages.yml @@ -0,0 +1,23 @@ +name: 部署到GitHub Pages + +on: + push: + branches: [ main ] + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + steps: + - name: 代码检出 + uses: actions/checkout@v6 + + - name: 构建前端页面 + run: | + npm install -g pnpm && pnpm install + pnpm run build + + - name: 推送到 Github + uses: JamesIves/github-pages-deploy-action@v4 + with: + folder: docs + branch: gh-pages \ No newline at end of file From 5273520305f313815127347fcaaab74ebb62ad72 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:33:25 +0800 Subject: [PATCH 07/14] =?UTF-8?q?refactor(buildings):=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist-electron/main.js | 9 +- docs/CNAME | 1 - docs/assets/AlertDialog-Bf_xgpJz.js | 1 - docs/assets/BattleReportDialog-BNULWr3T.js | 1 - docs/assets/BattleReportDialog-BxeTjW1s.js | 1 - docs/assets/BattleSimulatorView-BMgbGRUI.js | 1 - docs/assets/BattleSimulatorView-DyCE8DDk.js | 1 - docs/assets/BuildingsView-BwpaZTPf.js | 7 -- docs/assets/BuildingsView-fbXzR4lw.js | 2 - docs/assets/CardDescription-BjAei3DC.js | 1 - docs/assets/CardDescription-DduF5EVY.js | 1 - docs/assets/CardUnlockOverlay-CVKjkS94.js | 2 - docs/assets/CardUnlockOverlay-CspXlcWR.js | 2 - docs/assets/DefenseView-BHOUOKOH.js | 1 - docs/assets/DefenseView-aCDrCjw8.js | 1 - docs/assets/DiplomacyView-BZEvKDfM.js | 1 - docs/assets/FleetView-BzElc0kX.js | 1 - docs/assets/FleetView-C_yELhx2.js | 1 - docs/assets/GMView-BMhV90vD.js | 1 - docs/assets/GMView-TnIOhUsC.js | 1 - docs/assets/GalaxyView-BxX60NKB.js | 1 - docs/assets/GalaxyView-LGfalWWd.js | 2 - docs/assets/MessagesView-D8V3gkqX.js | 1 - docs/assets/MessagesView-w53RKU-r.js | 1 - docs/assets/NotFoundView-BqreQe6E.js | 1 - docs/assets/OfficersView-CXh701uW.js | 1 - docs/assets/OfficersView-vhUgk-zn.js | 1 - docs/assets/OverviewView-BmFIi4eW.js | 1 - docs/assets/OverviewView-D7lWE9IR.js | 1 - docs/assets/ResearchView-BoGXU7Gy.js | 2 - docs/assets/ResearchView-CxV9s7Q0.js | 2 - docs/assets/SelectValue-8cT4Hu-1.js | 1 - docs/assets/SelectValue-B8Xyt9cq.js | 1 - docs/assets/SettingsView-ByY8npXW.js | 1 - docs/assets/SettingsView-CqA4xeYn.js | 1 - docs/assets/ShipyardView-7hLJW6aW.js | 1 - docs/assets/ShipyardView-DRH89hEQ.js | 1 - docs/assets/TabsTrigger-BnZOhHbD.js | 1 - docs/assets/TooltipProvider-Cspoy8HK.js | 1 - docs/assets/UnlockRequirement-DJ9dN5JL.js | 1 - docs/assets/UnlockRequirement-p2W4t6RX.js | 1 - docs/assets/battle.worker-CkRIHUu5.js | 1 - docs/assets/empty-Ds0PR_Pd.js | 1 - docs/assets/game-config-DRP-gbpS.js | 1 - docs/assets/game-i18n-BC9uiVvf.js | 120 -------------------- docs/assets/game-logic-BBFCPVtv.js | 3 - docs/assets/index-B4KMqZ_y.js | 2 - docs/assets/index-C1ya9Q3J.css | 2 - docs/assets/index-CZ4UHUCa.css | 2 - docs/assets/index-DRmrr36X.js | 2 - docs/assets/logo-Cz0cNqhe.svg | 1 - docs/assets/missileLogic-_46Nr-Ju.js | 1 - docs/assets/rolldown-runtime-CIDIeb-o.js | 1 - docs/assets/useGameConfig-CVlwnWOp.js | 1 - docs/assets/useGameConfig-DLqfPHtW.js | 1 - docs/assets/vendor-crypto-CQM8pryk.js | 1 - docs/assets/vendor-crypto-DGvz1MHk.js | 1 - docs/assets/vendor-icons-Ccm2_GPI.js | 1 - docs/assets/vendor-others-BMPyaZWq.css | 1 - docs/assets/vendor-others-Bce0hM6h.js | 59 ---------- docs/assets/vendor-pinia-L_8CmDWM.js | 1 - docs/assets/vendor-reka-ui-DR3m_AkV.js | 8 -- docs/assets/vendor-utils-BlvnUqQX.js | 1 - docs/assets/vendor-vue-router-0mfLVB6Y.js | 1 - docs/assets/vendor-vueuse-Djj-oRw9.js | 1 - docs/favicon.ico | Bin 232564 -> 0 bytes docs/index.html | 34 ------ docs/logo.svg | 1 - 68 files changed, 6 insertions(+), 304 deletions(-) delete mode 100644 docs/CNAME delete mode 100644 docs/assets/AlertDialog-Bf_xgpJz.js delete mode 100644 docs/assets/BattleReportDialog-BNULWr3T.js delete mode 100644 docs/assets/BattleReportDialog-BxeTjW1s.js delete mode 100644 docs/assets/BattleSimulatorView-BMgbGRUI.js delete mode 100644 docs/assets/BattleSimulatorView-DyCE8DDk.js delete mode 100644 docs/assets/BuildingsView-BwpaZTPf.js delete mode 100644 docs/assets/BuildingsView-fbXzR4lw.js delete mode 100644 docs/assets/CardDescription-BjAei3DC.js delete mode 100644 docs/assets/CardDescription-DduF5EVY.js delete mode 100644 docs/assets/CardUnlockOverlay-CVKjkS94.js delete mode 100644 docs/assets/CardUnlockOverlay-CspXlcWR.js delete mode 100644 docs/assets/DefenseView-BHOUOKOH.js delete mode 100644 docs/assets/DefenseView-aCDrCjw8.js delete mode 100644 docs/assets/DiplomacyView-BZEvKDfM.js delete mode 100644 docs/assets/FleetView-BzElc0kX.js delete mode 100644 docs/assets/FleetView-C_yELhx2.js delete mode 100644 docs/assets/GMView-BMhV90vD.js delete mode 100644 docs/assets/GMView-TnIOhUsC.js delete mode 100644 docs/assets/GalaxyView-BxX60NKB.js delete mode 100644 docs/assets/GalaxyView-LGfalWWd.js delete mode 100644 docs/assets/MessagesView-D8V3gkqX.js delete mode 100644 docs/assets/MessagesView-w53RKU-r.js delete mode 100644 docs/assets/NotFoundView-BqreQe6E.js delete mode 100644 docs/assets/OfficersView-CXh701uW.js delete mode 100644 docs/assets/OfficersView-vhUgk-zn.js delete mode 100644 docs/assets/OverviewView-BmFIi4eW.js delete mode 100644 docs/assets/OverviewView-D7lWE9IR.js delete mode 100644 docs/assets/ResearchView-BoGXU7Gy.js delete mode 100644 docs/assets/ResearchView-CxV9s7Q0.js delete mode 100644 docs/assets/SelectValue-8cT4Hu-1.js delete mode 100644 docs/assets/SelectValue-B8Xyt9cq.js delete mode 100644 docs/assets/SettingsView-ByY8npXW.js delete mode 100644 docs/assets/SettingsView-CqA4xeYn.js delete mode 100644 docs/assets/ShipyardView-7hLJW6aW.js delete mode 100644 docs/assets/ShipyardView-DRH89hEQ.js delete mode 100644 docs/assets/TabsTrigger-BnZOhHbD.js delete mode 100644 docs/assets/TooltipProvider-Cspoy8HK.js delete mode 100644 docs/assets/UnlockRequirement-DJ9dN5JL.js delete mode 100644 docs/assets/UnlockRequirement-p2W4t6RX.js delete mode 100644 docs/assets/battle.worker-CkRIHUu5.js delete mode 100644 docs/assets/empty-Ds0PR_Pd.js delete mode 100644 docs/assets/game-config-DRP-gbpS.js delete mode 100644 docs/assets/game-i18n-BC9uiVvf.js delete mode 100644 docs/assets/game-logic-BBFCPVtv.js delete mode 100644 docs/assets/index-B4KMqZ_y.js delete mode 100644 docs/assets/index-C1ya9Q3J.css delete mode 100644 docs/assets/index-CZ4UHUCa.css delete mode 100644 docs/assets/index-DRmrr36X.js delete mode 100644 docs/assets/logo-Cz0cNqhe.svg delete mode 100644 docs/assets/missileLogic-_46Nr-Ju.js delete mode 100644 docs/assets/rolldown-runtime-CIDIeb-o.js delete mode 100644 docs/assets/useGameConfig-CVlwnWOp.js delete mode 100644 docs/assets/useGameConfig-DLqfPHtW.js delete mode 100644 docs/assets/vendor-crypto-CQM8pryk.js delete mode 100644 docs/assets/vendor-crypto-DGvz1MHk.js delete mode 100644 docs/assets/vendor-icons-Ccm2_GPI.js delete mode 100644 docs/assets/vendor-others-BMPyaZWq.css delete mode 100644 docs/assets/vendor-others-Bce0hM6h.js delete mode 100644 docs/assets/vendor-pinia-L_8CmDWM.js delete mode 100644 docs/assets/vendor-reka-ui-DR3m_AkV.js delete mode 100644 docs/assets/vendor-utils-BlvnUqQX.js delete mode 100644 docs/assets/vendor-vue-router-0mfLVB6Y.js delete mode 100644 docs/assets/vendor-vueuse-Djj-oRw9.js delete mode 100644 docs/favicon.ico delete mode 100644 docs/index.html delete mode 100644 docs/logo.svg diff --git a/dist-electron/main.js b/dist-electron/main.js index f44a23b..43cbc84 100644 --- a/dist-electron/main.js +++ b/dist-electron/main.js @@ -2,11 +2,14 @@ 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({ + const __dirname = dirname(fileURLToPath(import.meta.url)); + const win = new BrowserWindow({ title: "OGame", - icon: path.join(i, "../public/favicon.ico"), + icon: path.join(__dirname, "../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"); + win.setMenu(null); + if (process.env.VITE_DEV_SERVER_URL) win.loadURL(process.env.VITE_DEV_SERVER_URL); + else win.loadFile("docs/index.html"); }); diff --git a/docs/CNAME b/docs/CNAME deleted file mode 100644 index ec747bb..0000000 --- a/docs/CNAME +++ /dev/null @@ -1 +0,0 @@ -ogame-vue-ts.wenzi.games \ No newline at end of file diff --git a/docs/assets/AlertDialog-Bf_xgpJz.js b/docs/assets/AlertDialog-Bf_xgpJz.js deleted file mode 100644 index c2753f5..0000000 --- a/docs/assets/AlertDialog-Bf_xgpJz.js +++ /dev/null @@ -1 +0,0 @@ -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-DRmrr36X.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-BNULWr3T.js b/docs/assets/BattleReportDialog-BNULWr3T.js deleted file mode 100644 index 6fe099b..0000000 --- a/docs/assets/BattleReportDialog-BNULWr3T.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Fn as t,On as n,Rn as r,Yn as i,ar as ee,cn as a,cr as o,dn as s,fn as c,ln as l,on as u,pn as d,rn as f,rr as p,sn as m,un as h}from"./game-logic-BBFCPVtv.js";import{l as te,m as ne,o as g}from"./vendor-icons-Ccm2_GPI.js";import{t as _}from"./TooltipProvider-Cspoy8HK.js";import{$ as re,B as v,C as ie,E as ae,J as oe,L as y,O as se,Q as ce,R as b,S as le,X as ue,a as de,o as x,w as S,z as C}from"./index-B4KMqZ_y.js";import{t as w}from"./useGameConfig-DLqfPHtW.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=d({__name:`BattleReportDialog`,props:{report:{},open:{type:Boolean}},emits:[`update:open`],setup(d,{emit:W}){let G=d,ht=W,K=re(),gt=ce(),{t:q}=ue(),{SHIPS:J,DEFENSES:Y}=w(),X=i(G.open),Z=i(!1),Q=u(()=>G.report?K.player.planets.find(e=>e.id===G.report.attackerPlanetId):null),$=u(()=>G.report?K.player.planets.find(e=>e.id===G.report.defenderPlanetId)||Object.values(gt.planets).find(e=>e.id===G.report.defenderPlanetId):null);t(()=>G.open,e=>{X.value=e,e&&(Z.value=!1)}),t(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(t,i)=>(e(),a(p(se),{open:X.value,"onUpdate:open":i[1]||=e=>X.value=e},{default:r(()=>[c(p(ie),{"container-class":`sm:max-w-4xl max-h-[90vh]`},{header:r(()=>[c(p(S),null,{default:r(()=>[c(p(le),{class:`flex items-center gap-2`},{default:r(()=>[c(p(g),{class:`h-5 w-5`}),s(` `+o(p(q)(`messagesView.battleReport`)),1)]),_:1}),d.report?(e(),a(p(ae),{key:0},{default:r(()=>[s(o(p(de)(d.report.timestamp)),1)]),_:1})):l(``,!0)]),_:1})]),default:r(()=>[d.report?(e(),h(`div`,T,[m(`div`,E,[m(`div`,D,[m(`p`,O,o(p(q)(`simulatorView.attacker`)),1),Q.value?(e(),h(`p`,k,o(Q.value.name)+` [`+o(Q.value.position.galaxy)+`:`+o(Q.value.position.system)+`:`+o(Q.value.position.position)+`] `,1)):(e(),h(`p`,A,o(d.report.attackerPlanetId),1))]),m(`div`,j,[m(`p`,M,o(p(q)(`simulatorView.defender`)),1),$.value?(e(),h(`p`,N,o($.value.name)+` [`+o($.value.position.galaxy)+`:`+o($.value.position.system)+`:`+o($.value.position.position)+`] `,1)):(e(),h(`p`,P,o(d.report.defenderPlanetId),1))])]),m(`div`,{class:ee([`text-center p-4 rounded-lg`,_t(d.report.winner)])},[m(`p`,F,o(d.report.winner===`attacker`?p(q)(`messagesView.victory`):d.report.winner===`defender`?p(q)(`messagesView.defeat`):p(q)(`messagesView.draw`)),1),d.report.rounds?(e(),h(`p`,I,o(p(q)(`simulatorView.afterRounds`).replace(`{rounds}`,String(d.report.rounds))),1)):l(``,!0)],2),m(`div`,L,[m(`div`,R,[m(`p`,z,o(p(q)(`messagesView.attackerLosses`)),1),m(`div`,B,[(e(!0),h(f,null,n(d.report.attackerLosses,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,V,o(p(J)[n].name)+`:`,1),m(`span`,H,o(t),1)]))),128)),Object.keys(d.report.attackerLosses).length===0?(e(),h(`p`,fe,o(p(q)(`messagesView.noLosses`)),1)):l(``,!0)])]),m(`div`,pe,[m(`p`,me,o(p(q)(`messagesView.defenderLosses`)),1),m(`div`,he,[(e(!0),h(f,null,n(d.report.defenderLosses.fleet,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,ge,o(p(J)[n].name)+`:`,1),m(`span`,_e,o(t),1)]))),128)),(e(!0),h(f,null,n(d.report.defenderLosses.defense,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,ve,o(p(Y)[n].name)+`:`,1),m(`span`,ye,o(t),1)]))),128)),Object.keys(d.report.defenderLosses.fleet).length===0&&Object.keys(d.report.defenderLosses.defense).length===0?(e(),h(`p`,be,o(p(q)(`messagesView.noLosses`)),1)):l(``,!0)])])]),d.report.attackerRemaining||d.report.defenderRemaining?(e(),h(`div`,xe,[d.report.attackerRemaining&&Object.keys(d.report.attackerRemaining).length>0?(e(),h(`div`,Se,[m(`p`,Ce,o(p(q)(`messagesView.attackerRemaining`)),1),m(`div`,we,[(e(!0),h(f,null,n(d.report.attackerRemaining,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,Te,o(p(J)[n].name)+`:`,1),m(`span`,Ee,o(t),1)]))),128))])])):l(``,!0),d.report.defenderRemaining&&(Object.keys(d.report.defenderRemaining.fleet||{}).length>0||Object.keys(d.report.defenderRemaining.defense||{}).length>0)?(e(),h(`div`,De,[m(`p`,Oe,o(p(q)(`messagesView.defenderRemaining`)),1),m(`div`,ke,[(e(!0),h(f,null,n(d.report.defenderRemaining.fleet,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,Ae,o(p(J)[n].name)+`:`,1),m(`span`,je,o(t),1)]))),128)),(e(!0),h(f,null,n(d.report.defenderRemaining.defense,(t,n)=>(e(),h(`div`,{key:n},[m(`span`,Me,o(p(Y)[n].name)+`:`,1),m(`span`,Ne,o(t),1)]))),128))])])):l(``,!0)])):l(``,!0),m(`div`,Pe,[d.report.plunder&&(d.report.plunder.metal>0||d.report.plunder.crystal>0||d.report.plunder.deuterium>0)?(e(),h(`div`,Fe,[m(`p`,Ie,o(p(q)(`messagesView.plunder`)),1),m(`div`,Le,[d.report.plunder.metal>0?(e(),h(`span`,Re,[c(y,{type:`metal`,size:`sm`}),s(` `+o(p(x)(d.report.plunder.metal)),1)])):l(``,!0),d.report.plunder.crystal>0?(e(),h(`span`,ze,[c(y,{type:`crystal`,size:`sm`}),s(` `+o(p(x)(d.report.plunder.crystal)),1)])):l(``,!0),d.report.plunder.deuterium>0?(e(),h(`span`,Be,[c(y,{type:`deuterium`,size:`sm`}),s(` `+o(p(x)(d.report.plunder.deuterium)),1)])):l(``,!0)])])):l(``,!0),d.report.debrisField&&(d.report.debrisField.metal>0||d.report.debrisField.crystal>0)?(e(),h(`div`,Ve,[m(`p`,He,o(p(q)(`messagesView.debrisField`)),1),m(`div`,Ue,[d.report.debrisField.metal>0?(e(),h(`span`,We,[c(y,{type:`metal`,size:`sm`}),s(` `+o(p(x)(d.report.debrisField.metal)),1)])):l(``,!0),d.report.debrisField.crystal>0?(e(),h(`span`,Ge,[c(y,{type:`crystal`,size:`sm`}),s(` `+o(p(x)(d.report.debrisField.crystal)),1)])):l(``,!0)]),d.report.moonChance&&d.report.moonChance>0?(e(),h(`p`,Ke,o(p(q)(`messagesView.moonChance`))+`: `+o((d.report.moonChance*100).toFixed(1))+`% `,1)):l(``,!0)])):l(``,!0)]),d.report.roundDetails&&d.report.roundDetails.length>0?(e(),h(`div`,qe,[c(p(oe),{onClick:i[0]||=e=>Z.value=!Z.value,variant:`outline`,size:`sm`,class:`w-full`},{default:r(()=>[s(o(Z.value?p(q)(`messagesView.hideRoundDetails`):p(q)(`messagesView.showRoundDetails`)),1)]),_:1}),Z.value?(e(),h(`div`,Je,[i[3]||=m(`div`,{class:`absolute left-2 top-0 bottom-0 w-0.5 bg-border`},null,-1),(e(!0),h(f,null,n(d.report.roundDetails,t=>(e(),h(`div`,{key:t.round,class:`relative`},[i[2]||=m(`div`,{class:`absolute -left-6 top-3 w-4 h-4 rounded-full bg-primary border-2 border-background`},null,-1),m(`div`,Ye,[m(`div`,Xe,[m(`p`,Ze,o(p(q)(`messagesView.round`).replace(`{round}`,String(t.round))),1),c(p(_),{"delay-duration":300},{default:r(()=>[m(`div`,Qe,[c(p(v),null,{default:r(()=>[c(p(b),{"as-child":``},{default:r(()=>[m(`span`,$e,[c(p(te),{class:`h-3 w-3`}),s(` `+o(p(x)(t.attackerRemainingPower)),1)])]),_:2},1024),c(p(C),null,{default:r(()=>[m(`p`,null,o(p(q)(`messagesView.attackerRemainingPower`)),1)]),_:1})]),_:2},1024),c(p(v),null,{default:r(()=>[c(p(b),{"as-child":``},{default:r(()=>[m(`span`,et,[c(p(ne),{class:`h-3 w-3`}),s(` `+o(p(x)(t.defenderRemainingPower)),1)])]),_:2},1024),c(p(C),null,{default:r(()=>[m(`p`,null,o(p(q)(`messagesView.defenderRemainingPower`)),1)]),_:1})]),_:2},1024)])]),_:2},1024)]),m(`div`,tt,[m(`div`,nt,[m(`p`,rt,o(p(q)(`messagesView.attackerLosses`)),1),m(`div`,it,[(e(!0),h(f,null,n(t.attackerLosses,(t,n)=>(e(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,at,o(p(J)[n].name),1),m(`span`,ot,`-`+o(t),1)]))),128)),Object.keys(t.attackerLosses).length===0?(e(),h(`p`,st,o(p(q)(`messagesView.noLosses`)),1)):l(``,!0)])]),m(`div`,ct,[m(`p`,lt,o(p(q)(`messagesView.defenderLosses`)),1),m(`div`,ut,[(e(!0),h(f,null,n(t.defenderLosses.fleet,(t,n)=>(e(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,dt,o(p(J)[n].name),1),m(`span`,U,`-`+o(t),1)]))),128)),(e(!0),h(f,null,n(t.defenderLosses.defense,(t,n)=>(e(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,ft,o(p(Y)[n].name),1),m(`span`,pt,`-`+o(t),1)]))),128)),Object.keys(t.defenderLosses.fleet).length===0&&Object.keys(t.defenderLosses.defense).length===0?(e(),h(`p`,mt,o(p(q)(`messagesView.noLosses`)),1)):l(``,!0)])])])])]))),128))])):l(``,!0)])):l(``,!0)])):l(``,!0)]),_:1})]),_:1},8,[`open`]))}});export{W as t}; \ No newline at end of file diff --git a/docs/assets/BattleReportDialog-BxeTjW1s.js b/docs/assets/BattleReportDialog-BxeTjW1s.js deleted file mode 100644 index e1cd7fa..0000000 --- a/docs/assets/BattleReportDialog-BxeTjW1s.js +++ /dev/null @@ -1 +0,0 @@ -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-DRmrr36X.js";import{t as w}from"./useGameConfig-CVlwnWOp.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-BMgbGRUI.js b/docs/assets/BattleSimulatorView-BMgbGRUI.js deleted file mode 100644 index 744a495..0000000 --- a/docs/assets/BattleSimulatorView-BMgbGRUI.js +++ /dev/null @@ -1 +0,0 @@ -import{$n as e,En as t,G as n,On as r,Rn as i,Yn as a,cr as o,dn as s,fn as c,pn as l,rn as u,rr as d,sn as f,un as p,wt as m}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{_ as ee,l as te,m as ne,t as h}from"./vendor-icons-Ccm2_GPI.js";import"./TooltipProvider-Cspoy8HK.js";import{t as g}from"./CardDescription-DduF5EVY.js";import{_,f as v}from"./game-config-DRP-gbpS.js";import{J as y,L as re,V as b,X as ie,d as x,f as S,m as C,p as w,u as T}from"./index-B4KMqZ_y.js";import{t as ae}from"./useGameConfig-DLqfPHtW.js";import{i as oe,n as se,r as E,t as D}from"./TabsTrigger-BnZOhHbD.js";import{t as ce}from"./BattleReportDialog-BNULWr3T.js";var le={class:`container mx-auto p-4 sm:p-6 space-y-6`},ue={class:`text-2xl sm:text-3xl font-bold`},de={class:`text-sm font-medium mb-3`},O={class:`grid grid-cols-2 md:grid-cols-3 gap-3`},k={class:`text-sm font-medium mb-3`},A={class:`grid grid-cols-3 gap-3`},j={class:`text-sm font-medium mb-3`},M={class:`grid grid-cols-2 md:grid-cols-3 gap-3`},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-3 gap-3`},L={class:`text-sm font-medium mb-3`},R={class:`grid grid-cols-3 gap-3`},z={class:`flex gap-2`},B=l({__name:`BattleSimulatorView`,setup(l){let{t:B}=ie(),{SHIPS:V,DEFENSES:fe}=ae(),H=[`weapon`,`shield`,`armor`],pe=[{key:`metal`},{key:`crystal`},{key:`deuterium`}],U=()=>{let e={};return Object.values(_).forEach(t=>{e[t]=0}),e},W=a(U()),G=a(`attacker`),K=a({weapon:0,shield:0,armor:0}),q=a(U()),J=()=>{let e={};return Object.values(v).forEach(t=>{e[t]=0}),e},Y=a(J()),X=a({weapon:0,shield:0,armor:0}),Z=a({metal:1e5,crystal:5e4,deuterium:25e3,darkMatter:100,energy:0}),Q=a(null),$=a(!1),me=async()=>{let t={ships:e(W.value),weaponTech:K.value.weapon,shieldTech:K.value.shield,armorTech:K.value.armor},r={ships:e(q.value),defense:e(Y.value),weaponTech:X.value.weapon,shieldTech:X.value.shield,armorTech:X.value.armor},i=await n.simulateBattle({attacker:t,defender:r}),a=i.winner===`attacker`?await n.calculatePlunder({defenderResources:e(Z.value),attackerFleet:i.attackerRemaining}):{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},o=await n.calculateDebris({attackerLosses:i.attackerLosses,defenderLosses:i.defenderLosses}),s=m(o)/100;Q.value={id:`sim_${Date.now()}`,timestamp:Date.now(),attackerId:`simulator_attacker`,defenderId:`simulator_defender`,attackerPlanetId:`sim_attacker`,defenderPlanetId:`sim_defender`,attackerFleet:W.value,defenderFleet:q.value,defenderDefense:Y.value,attackerLosses:i.attackerLosses,defenderLosses:i.defenderLosses,winner:i.winner,plunder:a,debrisField:o,rounds:i.rounds,attackerRemaining:i.attackerRemaining,defenderRemaining:i.defenderRemaining,roundDetails:i.roundDetails,moonChance:s},$.value=!0},he=()=>{W.value=U(),q.value=U(),Y.value=J(),K.value={weapon:0,shield:0,armor:0},X.value={weapon:0,shield:0,armor:0},Q.value=null,$.value=!1};return(e,n)=>(t(),p(`div`,le,[f(`h1`,ue,o(d(B)(`simulatorView.title`)),1),c(d(oe),{modelValue:G.value,"onUpdate:modelValue":n[0]||=e=>G.value=e,class:`w-full`},{default:i(()=>[c(d(se),{class:`grid w-full grid-cols-2`},{default:i(()=>[c(d(D),{value:`attacker`},{default:i(()=>[c(d(te),{class:`h-4 w-4 mr-2`}),s(` `+o(d(B)(`simulatorView.attacker`)),1)]),_:1}),c(d(D),{value:`defender`},{default:i(()=>[c(d(ne),{class:`h-4 w-4 mr-2`}),s(` `+o(d(B)(`simulatorView.defender`)),1)]),_:1})]),_:1}),c(d(E),{value:`attacker`,class:`mt-4`},{default:i(()=>[c(d(C),null,{default:i(()=>[c(d(S),null,{default:i(()=>[c(d(x),null,{default:i(()=>[s(o(d(B)(`simulatorView.attackerConfig`)),1)]),_:1}),c(d(g),null,{default:i(()=>[s(o(d(B)(`simulatorView.attackerConfigDesc`)),1)]),_:1})]),_:1}),c(d(w),{class:`space-y-4`},{default:i(()=>[f(`div`,null,[f(`h3`,de,o(d(B)(`simulatorView.fleet`)),1),f(`div`,O,[(t(!0),p(u,null,r(Object.values(d(_)),e=>(t(),p(`div`,{key:e,class:`space-y-1`},[c(d(T),{for:`attacker-${e}`,class:`text-xs`},{default:i(()=>[s(o(d(V)[e].name),1)]),_:2},1032,[`for`]),c(d(b),{id:`attacker-${e}`,"model-value":W.value[e]??0,"onUpdate:modelValue":t=>W.value[e]=typeof t==`number`?t:0,type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`model-value`,`onUpdate:modelValue`])]))),128))])]),f(`div`,null,[f(`h3`,k,o(d(B)(`simulatorView.techLevels`)),1),f(`div`,A,[(t(),p(u,null,r(H,e=>f(`div`,{key:e,class:`space-y-1`},[c(d(T),{for:`attacker-${e}`,class:`text-xs`},{default:i(()=>[s(o(d(B)(`simulatorView.${e}`)),1)]),_:2},1032,[`for`]),c(d(b),{id:`attacker-${e}`,modelValue:K.value[e],"onUpdate:modelValue":t=>K.value[e]=t,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])])),64))])])]),_:1})]),_:1})]),_:1}),c(d(E),{value:`defender`,class:`mt-4`},{default:i(()=>[c(d(C),null,{default:i(()=>[c(d(S),null,{default:i(()=>[c(d(x),null,{default:i(()=>[s(o(d(B)(`simulatorView.defenderConfig`)),1)]),_:1}),c(d(g),null,{default:i(()=>[s(o(d(B)(`simulatorView.defenderConfigDesc`)),1)]),_:1})]),_:1}),c(d(w),{class:`space-y-4`},{default:i(()=>[f(`div`,null,[f(`h3`,j,o(d(B)(`simulatorView.fleet`)),1),f(`div`,M,[(t(!0),p(u,null,r(Object.values(d(_)),e=>(t(),p(`div`,{key:e,class:`space-y-1`},[c(d(T),{for:`defender-${e}`,class:`text-xs`},{default:i(()=>[s(o(d(V)[e].name),1)]),_:2},1032,[`for`]),c(d(b),{id:`defender-${e}`,"model-value":q.value[e]??0,"onUpdate:modelValue":t=>q.value[e]=typeof t==`number`?t:0,type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`model-value`,`onUpdate:modelValue`])]))),128))])]),f(`div`,null,[f(`h3`,N,o(d(B)(`simulatorView.defenseStructures`)),1),f(`div`,P,[(t(!0),p(u,null,r(Object.values(d(v)),e=>(t(),p(`div`,{key:e,class:`space-y-1`},[c(d(T),{for:`defense-${e}`,class:`text-xs`},{default:i(()=>[s(o(d(fe)[e].name),1)]),_:2},1032,[`for`]),c(d(b),{id:`defense-${e}`,"model-value":Y.value[e]??0,"onUpdate:modelValue":t=>Y.value[e]=typeof t==`number`?t:0,type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`model-value`,`onUpdate:modelValue`])]))),128))])]),f(`div`,null,[f(`h3`,F,o(d(B)(`simulatorView.techLevels`)),1),f(`div`,I,[(t(),p(u,null,r(H,e=>f(`div`,{key:e,class:`space-y-1`},[c(d(T),{for:`defender-${e}`,class:`text-xs`},{default:i(()=>[s(o(d(B)(`simulatorView.${e}`)),1)]),_:2},1032,[`for`]),c(d(b),{id:`defender-${e}`,modelValue:X.value[e],"onUpdate:modelValue":t=>X.value[e]=t,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])])),64))])]),f(`div`,null,[f(`h3`,L,o(d(B)(`simulatorView.defenderResources`)),1),f(`div`,R,[(t(),p(u,null,r(pe,e=>f(`div`,{key:e.key,class:`space-y-1`},[c(d(T),{for:`defender-${e.key}`,class:`text-xs flex items-center gap-1`},{default:i(()=>[c(re,{type:e.key,size:`sm`},null,8,[`type`]),s(` `+o(d(B)(`resources.${e.key}`)),1)]),_:2},1032,[`for`]),c(d(b),{id:`defender-${e.key}`,modelValue:Z.value[e.key],"onUpdate:modelValue":t=>Z.value[e.key]=t,modelModifiers:{number:!0},type:`number`,min:`0`,class:`h-8`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])])),64))])])]),_:1})]),_:1})]),_:1})]),_:1},8,[`modelValue`]),f(`div`,z,[c(d(y),{onClick:me,class:`flex-1`,size:`lg`},{default:i(()=>[c(d(h),{class:`h-4 w-4 mr-2`}),s(` `+o(d(B)(`simulatorView.startSimulation`)),1)]),_:1}),c(d(y),{onClick:he,variant:`outline`,size:`lg`},{default:i(()=>[c(d(ee),{class:`h-4 w-4 mr-2`}),s(` `+o(d(B)(`simulatorView.reset`)),1)]),_:1})]),c(ce,{open:$.value,"onUpdate:open":n[1]||=e=>$.value=e,report:Q.value},null,8,[`open`,`report`])]))}});export{B as default}; \ No newline at end of file diff --git a/docs/assets/BattleSimulatorView-DyCE8DDk.js b/docs/assets/BattleSimulatorView-DyCE8DDk.js deleted file mode 100644 index 6823494..0000000 --- a/docs/assets/BattleSimulatorView-DyCE8DDk.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as ie}from"./useGameConfig-CVlwnWOp.js";import{t as ae}from"./BattleReportDialog-BxeTjW1s.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-BwpaZTPf.js b/docs/assets/BuildingsView-BwpaZTPf.js deleted file mode 100644 index 0fe7f9d..0000000 --- a/docs/assets/BuildingsView-BwpaZTPf.js +++ /dev/null @@ -1,7 +0,0 @@ -import{$ as e,$t as t,Bt as n,En as r,Ht as i,On as a,Pt as o,Rn as s,Vt as ee,X as te,Yn as c,Z as ne,ar as l,cn as u,cr as d,dn as f,et as p,fn as m,ln as h,nt as g,on as _,pn as re,rn as v,rr as y,rt as b,sn as x,sr as ie,tt as ae,un as S,zn as oe,zt as se}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{F as C,U as ce}from"./vendor-icons-Ccm2_GPI.js";import{t as le}from"./CardDescription-DduF5EVY.js";import{d as w,v as T}from"./game-config-DRP-gbpS.js";import{$ as ue,A as E,F as D,I as O,J as k,K as de,L as fe,M as A,N as j,P as pe,X as me,d as he,f as ge,j as M,k as N,l as P,m as F,o as I,p as L,s as _e,x as ve}from"./index-B4KMqZ_y.js";import{t as ye}from"./useGameConfig-DLqfPHtW.js";import{t as be}from"./CardUnlockOverlay-CspXlcWR.js";var xe={key:0,class:`container mx-auto p-4 sm:p-6`},Se={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},Ce={class:`mb-4 sm:mb-6 p-3 sm:p-4 bg-muted/50 rounded-lg border`},we={class:`flex items-center justify-between`},Te={class:`text-sm sm:text-base font-medium flex items-center gap-2`},Ee={class:`text-sm sm:text-base font-bold`},De={class:`mt-2`},Oe={class:`w-full bg-background rounded-full h-2.5 sm:h-3 overflow-hidden`},ke={class:`grid grid-cols-2 lg:grid-cols-3 gap-3 sm:gap-4`},Ae={class:`mb-2`},je={class:`flex flex-col sm:flex-row sm:justify-between sm:items-start gap-2`},Me={class:`space-y-3`},Ne={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},Pe={class:`text-muted-foreground mb-1 sm:mb-2`},Fe={class:`space-y-1 sm:space-y-1.5`},Ie={class:`text-xs`},Le={class:`text-xs sm:text-sm space-y-0.5 sm:space-y-1`},Re={class:`flex items-center gap-1.5 text-muted-foreground`},ze={class:`flex items-center gap-1.5 text-muted-foreground`},Be={key:1,class:`text-xs text-muted-foreground`},Ve={class:`flex gap-2 flex-wrap`},He={key:0},R=re({__name:`BuildingsView`,setup(re){let R=ue(),Ue=ve(),{t:z}=me(),{BUILDINGS:B,TECHNOLOGIES:We}=ye(),V=_(()=>R.currentPlanet),H=c(!1),U=c(``),W=c(``),G=c(!1),K=c(``),q=c(null),Ge=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`}],Ke=_(()=>V.value?Object.values(w).filter(e=>{let t=B.value[e];return V.value.isMoon?t.moonOnly===!0:t.moonOnly!==!0}):[]),qe=e=>{if(!R.currentPlanet||!p(R.currentPlanet,e,R.player.technologies,R.player.officers).valid)return!1;let t=ne(R.currentPlanet,e,R.player.officers);return R.currentPlanet.buildQueue.push(t),!0},J=e=>i(e),Je=e=>{if(!X(e)){U.value=z(`common.requirementsNotMet`),W.value=Ye(e),H.value=!0;return}qe(e)||(U.value=z(`buildingsView.upgradeFailed`),W.value=z(`buildingsView.upgradeFailedMessage`),H.value=!0)},Y=e=>V.value?.buildings[e]||0,X=e=>{if(!V.value)return!1;let t=B.value[e],n=g(t,Y(e)+1);return!n||Object.keys(n).length===0?!0:ae(V.value,R.player.technologies,n)},Z=e=>{if(!V.value)return z(`buildingsView.upgrade`);let t=B.value[e],n=Y(e);return t.maxLevel!==void 0&&n>=t.maxLevel?z(`buildingsView.maxLevelReached`):V.value.buildQueue.length>0||X(e)?z(`buildingsView.upgrade`):z(`buildingsView.requirementsNotMet`)},Ye=e=>{let t=B.value[e],n=g(t,Y(e)+1);if(!n||!V.value)return``;let r=[];for(let[e,t]of Object.entries(n))if(Object.values(w).includes(e)){let n=e,i=V.value.buildings[n]||0,a=B.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${z(`common.current`)}: Lv ${i})`)}else if(Object.values(T).includes(e)){let n=e,i=R.player.technologies[n]||0,a=We.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${z(`common.current`)}: Lv ${i})`)}return r.join(` -`)},Xe=e=>{if(!V.value)return!1;let t=B.value[e],n=Y(e);if(t.maxLevel!==void 0&&n>=t.maxLevel)return!1;let r=o(R.player.officers,Date.now()),i=b(V.value,r.additionalBuildQueue);if(V.value.buildQueue.filter(e=>e.type===`building`||e.type===`demolish`).length>=i||!p(V.value,e,R.player.technologies,R.player.officers).valid)return!1;let a=Q(e,n+1);return V.value.resources.metal>=a.metal&&V.value.resources.crystal>=a.crystal&&V.value.resources.deuterium>=a.deuterium&&V.value.resources.darkMatter>=a.darkMatter},Q=(e,t)=>se(e,t),Ze=(e,t)=>{if(!V.value)return 0;let r=o(R.player.officers,Date.now()),i=V.value.buildings[w.RoboticsFactory]||0,a=V.value.buildings[w.NaniteFactory]||0;return n(e,t,r.buildingSpeedBonus,i,a)},Qe=t=>{if(!R.currentPlanet||!e(R.currentPlanet,t,R.player.officers).valid)return!1;let n=te(R.currentPlanet,t,R.player.officers);return R.currentPlanet.buildQueue.push(n),!0},$e=e=>{let t=B.value[e].name,n=$(e);K.value=`${z(`buildingsView.confirmDemolishMessage`)}: ${t} - -${z(`buildingsView.demolishRefund`)}: -${z(`resources.metal`)}: ${I(n.metal)} -${z(`resources.crystal`)}: ${I(n.crystal)} -${z(`resources.deuterium`)}: ${I(n.deuterium)}${n.darkMatter>0?`\n${z(`resources.darkMatter`)}: ${I(n.darkMatter)}`:``}`,q.value=e,G.value=!0},et=()=>{q.value&&(Qe(q.value)||(U.value=z(`buildingsView.demolishFailed`),W.value=z(`buildingsView.demolishFailedMessage`),H.value=!0)),G.value=!1,q.value=null},tt=e=>{if(!V.value||Y(e)<=0)return!1;let t=o(R.player.officers,Date.now()),n=b(V.value,t.additionalBuildQueue);return!(V.value.buildQueue.filter(e=>e.type===`building`||e.type===`demolish`).length>=n)},$=e=>ee(e,Y(e));return(e,n)=>V.value?(r(),S(`div`,xe,[x(`h1`,Se,d(y(z)(`buildingsView.title`)),1),x(`div`,Ce,[x(`div`,we,[x(`div`,Te,[m(y(C),{size:16}),f(` `+d(y(z)(`buildingsView.spaceUsage`))+`: `,1)]),x(`div`,Ee,[x(`span`,{class:l(J(V.value)>V.value.maxSpace?`text-destructive`:`text-primary`)},d(y(I)(J(V.value))),3),n[2]||=x(`span`,{class:`text-muted-foreground mx-1`},`/`,-1),x(`span`,null,d(y(I)(V.value.maxSpace)),1)])]),x(`div`,De,[x(`div`,Oe,[x(`div`,{class:l([`h-full transition-all duration-300`,J(V.value)>V.value.maxSpace?`bg-destructive`:`bg-primary`]),style:ie({width:`${Math.min(J(V.value)/V.value.maxSpace*100,100)}%`})},null,6)])])]),x(`div`,ke,[(r(!0),S(v,null,a(Ke.value,e=>(r(),u(y(F),{key:e,class:`relative`},{default:s(()=>[m(be,{requirements:y(B)[e].requirements,currentLevel:Y(e)},null,8,[`requirements`,`currentLevel`]),m(y(ge),null,{default:s(()=>[x(`div`,Ae,[x(`div`,je,[m(y(he),{class:`text-sm sm:text-base lg:text-lg cursor-pointer hover:text-primary transition-colors underline decoration-dotted underline-offset-4 order-2 sm:order-1`,onClick:t=>y(Ue).openBuilding(e,Y(e))},{default:s(()=>[f(d(y(B)[e].name),1)]),_:2},1032,[`onClick`]),m(y(de),{variant:`secondary`,class:`text-xs whitespace-nowrap self-start order-1 sm:order-2`},{default:s(()=>[f(` Lv `+d(Y(e)),1)]),_:2},1024)])]),m(y(le),{class:`text-xs sm:text-sm`},{default:s(()=>[f(d(y(B)[e].description),1)]),_:2},1024)]),_:2},1024),m(y(L),null,{default:s(()=>[x(`div`,Me,[x(`div`,Ne,[x(`p`,Pe,d(y(z)(`buildingsView.upgradeCost`))+`:`,1),x(`div`,Fe,[(r(),S(v,null,a(Ge,n=>oe(x(`div`,{key:n.key,class:`flex items-center gap-1.5 sm:gap-2`},[m(fe,{type:n.key,size:`sm`},null,8,[`type`]),x(`span`,Ie,d(y(z)(`resources.${n.key}`))+`:`,1),x(`span`,{class:l([`font-medium text-xs sm:text-sm`,y(P)(V.value.resources[n.key],Q(e,Y(e)+1)[n.key])])},d(y(I)(Q(e,Y(e)+1)[n.key])),3)]),[[t,n.key!==`darkMatter`||Q(e,Y(e)+1).darkMatter>0]])),64))])]),x(`div`,Le,[x(`div`,Re,[m(y(ce),{size:14,class:`flex-shrink-0`}),x(`span`,null,d(y(_e)(Ze(e,Y(e)+1))),1)]),x(`div`,ze,[m(y(C),{size:14,class:`flex-shrink-0`}),x(`span`,null,d(y(B)[e].spaceUsage),1)])]),m(y(k),{onClick:t=>Je(e),disabled:!Xe(e),class:`w-full`},{default:s(()=>[f(d(Z(e)),1)]),_:2},1032,[`onClick`,`disabled`]),Y(e)>0?(r(),u(y(k),{key:0,onClick:t=>$e(e),disabled:!tt(e),variant:`destructive`,class:`w-full`},{default:s(()=>[f(d(y(z)(`buildingsView.demolish`)),1)]),_:1},8,[`onClick`,`disabled`])):h(``,!0),Y(e)>0?(r(),S(`div`,Be,[x(`p`,null,d(y(z)(`buildingsView.demolishRefund`))+`:`,1),x(`div`,Ve,[x(`span`,null,d(y(I)($(e).metal))+` `+d(y(z)(`resources.metal`)),1),x(`span`,null,d(y(I)($(e).crystal))+` `+d(y(z)(`resources.crystal`)),1),x(`span`,null,d(y(I)($(e).deuterium))+` `+d(y(z)(`resources.deuterium`)),1),$(e).darkMatter>0?(r(),S(`span`,He,d(y(I)($(e).darkMatter))+` `+d(y(z)(`resources.darkMatter`)),1)):h(``,!0)])])):h(``,!0)])]),_:2},1024)]),_:2},1024))),128))]),m(y(O),{open:H.value,"onUpdate:open":n[0]||=e=>H.value=e},{default:s(()=>[m(y(j),null,{default:s(()=>[m(y(E),null,{default:s(()=>[m(y(N),null,{default:s(()=>[f(d(U.value),1)]),_:1}),m(y(A),{class:`whitespace-pre-line`},{default:s(()=>[f(d(W.value),1)]),_:1})]),_:1}),m(y(M),null,{default:s(()=>[m(y(D),null,{default:s(()=>[f(d(y(z)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),m(y(O),{open:G.value,"onUpdate:open":n[1]||=e=>G.value=e},{default:s(()=>[m(y(j),null,{default:s(()=>[m(y(E),null,{default:s(()=>[m(y(N),null,{default:s(()=>[f(d(y(z)(`buildingsView.confirmDemolish`)),1)]),_:1}),m(y(A),{class:`whitespace-pre-line`},{default:s(()=>[f(d(K.value),1)]),_:1})]),_:1}),m(y(M),null,{default:s(()=>[m(y(pe),null,{default:s(()=>[f(d(y(z)(`common.cancel`)),1)]),_:1}),m(y(D),{onClick:et},{default:s(()=>[f(d(y(z)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):h(``,!0)}});export{R as default}; \ No newline at end of file diff --git a/docs/assets/BuildingsView-fbXzR4lw.js b/docs/assets/BuildingsView-fbXzR4lw.js deleted file mode 100644 index a0ba853..0000000 --- a/docs/assets/BuildingsView-fbXzR4lw.js +++ /dev/null @@ -1,2 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as N}from"./useGameConfig-CVlwnWOp.js";import{t as P}from"./AlertDialog-Bf_xgpJz.js";import{t as F}from"./CardUnlockOverlay-CVKjkS94.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-BjAei3DC.js b/docs/assets/CardDescription-BjAei3DC.js deleted file mode 100644 index bdb4d87..0000000 --- a/docs/assets/CardDescription-BjAei3DC.js +++ /dev/null @@ -1 +0,0 @@ -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-DRmrr36X.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/CardDescription-DduF5EVY.js b/docs/assets/CardDescription-DduF5EVY.js deleted file mode 100644 index 0534ee0..0000000 --- a/docs/assets/CardDescription-DduF5EVY.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,ar as t,kn as n,pn as r,rr as i,un as a}from"./game-logic-BBFCPVtv.js";import{Y as o}from"./index-B4KMqZ_y.js";var s=r({__name:`CardDescription`,props:{class:{}},setup(r){let s=r;return(r,c)=>(e(),a(`p`,{"data-slot":`card-description`,class:t(i(o)(`text-muted-foreground text-sm`,s.class))},[n(r.$slots,`default`)],2))}});export{s as t}; \ No newline at end of file diff --git a/docs/assets/CardUnlockOverlay-CVKjkS94.js b/docs/assets/CardUnlockOverlay-CVKjkS94.js deleted file mode 100644 index acbbaf1..0000000 --- a/docs/assets/CardUnlockOverlay-CVKjkS94.js +++ /dev/null @@ -1,2 +0,0 @@ -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-DRmrr36X.js";import{t as y}from"./useGameConfig-CVlwnWOp.js";import{t as b}from"./AlertDialog-Bf_xgpJz.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/CardUnlockOverlay-CspXlcWR.js b/docs/assets/CardUnlockOverlay-CspXlcWR.js deleted file mode 100644 index 53083f5..0000000 --- a/docs/assets/CardUnlockOverlay-CspXlcWR.js +++ /dev/null @@ -1,2 +0,0 @@ -import{En as e,Rn as t,Yn as n,cr as r,dn as i,fn as a,ln as o,on as s,pn as c,rr as l,sn as u,tt as d,un as f}from"./game-logic-BBFCPVtv.js";import{k as p}from"./vendor-icons-Ccm2_GPI.js";import{d as m,v as h}from"./game-config-DRP-gbpS.js";import{$ as g,A as _,F as v,I as y,J as b,M as x,N as S,X as C,j as w,k as T}from"./index-B4KMqZ_y.js";import{t as E}from"./useGameConfig-DLqfPHtW.js";var D={key:0,class:`absolute inset-0 z-10 bg-background/70 backdrop-blur-[2px] rounded-lg flex items-center justify-center`},O={class:`text-center p-4 space-y-2`},k={class:`flex justify-center`},A={class:`rounded-full bg-muted p-2`},j={class:`text-xs font-medium text-muted-foreground`},M=c({__name:`CardUnlockOverlay`,props:{requirements:{},currentLevel:{}},setup(c){let M=c,N=g(),{t:P}=C(),{BUILDINGS:F,TECHNOLOGIES:I}=E(),L=n(!1),R=n(``),z=n(``),B=s(()=>M.currentLevel!==void 0&&M.currentLevel>0||!M.requirements||!N.currentPlanet?!0:d(N.currentPlanet,N.player.technologies,M.requirements)),V=()=>{if(!M.requirements||!N.currentPlanet)return``;let e=[];for(let[t,n]of Object.entries(M.requirements))if(Object.values(m).includes(t)){let r=t,i=N.currentPlanet.buildings[r]||0,a=F.value[r]?.name||r,o=i>=n?`✓`:`✗`;e.push(`${o} ${a}: Lv ${n} (${P(`common.current`)}: Lv ${i})`)}else if(Object.values(h).includes(t)){let r=t,i=N.player.technologies[r]||0,a=I.value[r]?.name||r,o=i>=n?`✓`:`✗`;e.push(`${o} ${a}: Lv ${n} (${P(`common.current`)}: Lv ${i})`)}return e.join(` -`)},H=()=>{R.value=P(`common.requirementsNotMet`),z.value=V(),L.value=!0};return(n,s)=>B.value?o(``,!0):(e(),f(`div`,D,[u(`div`,O,[u(`div`,k,[u(`div`,A,[a(l(p),{size:20,class:`text-muted-foreground`})])]),u(`p`,j,r(l(P)(`common.locked`)),1),a(l(b),{variant:`outline`,size:`sm`,onClick:H,class:`text-xs`},{default:t(()=>[i(r(l(P)(`common.viewRequirements`)),1)]),_:1})]),a(l(y),{open:L.value,"onUpdate:open":s[0]||=e=>L.value=e},{default:t(()=>[a(l(S),null,{default:t(()=>[a(l(_),null,{default:t(()=>[a(l(T),null,{default:t(()=>[i(r(R.value),1)]),_:1}),a(l(x),{class:`whitespace-pre-line`},{default:t(()=>[i(r(z.value),1)]),_:1})]),_:1}),a(l(w),null,{default:t(()=>[a(l(v),null,{default:t(()=>[i(r(l(P)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{M as t}; \ No newline at end of file diff --git a/docs/assets/DefenseView-BHOUOKOH.js b/docs/assets/DefenseView-BHOUOKOH.js deleted file mode 100644 index c0ee501..0000000 --- a/docs/assets/DefenseView-BHOUOKOH.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as D}from"./useGameConfig-CVlwnWOp.js";import{t as O}from"./AlertDialog-Bf_xgpJz.js";import{t as k}from"./CardUnlockOverlay-CVKjkS94.js";import{t as A}from"./UnlockRequirement-p2W4t6RX.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/DefenseView-aCDrCjw8.js b/docs/assets/DefenseView-aCDrCjw8.js deleted file mode 100644 index 43072ca..0000000 --- a/docs/assets/DefenseView-aCDrCjw8.js +++ /dev/null @@ -1 +0,0 @@ -import{$t as e,En as t,Mt as n,On as r,Ot as i,Rn as a,Yn as o,ar as s,cn as ee,cr as c,dn as l,fn as u,i as te,ln as d,on as f,pn as ne,rn as p,rr as m,sn as h,sr as re,t as ie,tt as g,un as _,zn as v}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import"./vendor-icons-Ccm2_GPI.js";import{t as y}from"./CardDescription-DduF5EVY.js";import{d as ae,f as b}from"./game-config-DRP-gbpS.js";import{$ as oe,A as se,F as ce,I as le,J as ue,K as de,L as x,M as fe,N as pe,V as me,X as S,d as C,f as w,j as T,k as E,l as D,m as O,o as k,p as A,u as j,x as M}from"./index-B4KMqZ_y.js";import{t as N}from"./useGameConfig-DLqfPHtW.js";import{t as P}from"./CardUnlockOverlay-CspXlcWR.js";import{t as F}from"./UnlockRequirement-DJ9dN5JL.js";var I={key:0,class:`container mx-auto p-4 sm:p-6`},L={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},R={key:0,class:`mb-4 sm:mb-6 p-3 sm:p-4 bg-muted/50 rounded-lg border`},z={class:`flex items-center justify-between`},he={class:`text-sm sm:text-base font-medium`},ge={class:`text-sm sm:text-base font-bold`},_e={class:`mt-2`},ve={class:`w-full bg-background rounded-full h-2.5 sm:h-3 overflow-hidden`},ye={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},be={class:`mb-2`},xe={class:`flex flex-col sm:flex-row sm:justify-between sm:items-start gap-2`},Se={class:`space-y-3 sm:space-y-4`},B={class:`grid grid-cols-2 gap-2 text-xs sm:text-sm`},Ce={class:`text-muted-foreground`},we={class:`font-medium`},Te={class:`text-muted-foreground`},Ee={class:`font-medium`},De={class:`text-muted-foreground`},Oe={class:`font-medium`},ke={class:`text-muted-foreground`},Ae={class:`font-medium`},je={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},Me={class:`text-muted-foreground mb-1 sm:mb-2`},Ne={class:`space-y-1 sm:space-y-1.5`},Pe={class:`text-xs`},Fe={class:`space-y-2`},Ie={key:0,class:`text-xs text-muted-foreground`},Le={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`},Re={class:`font-medium text-muted-foreground`},ze={class:`space-y-1 sm:space-y-1.5`},Be={class:`text-xs`},V=ne({__name:`DefenseView`,setup(ne){let V=oe(),Ve=M(),{t:H}=S(),{DEFENSES:U}=N(),W=f(()=>V.currentPlanet),G=f(()=>W.value?n(W.value.buildings):0),K=f(()=>W.value?i(W.value.defense):0),q=o(!1),J=o(``),Y=o(``),X=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`}],Z=o({[b.RocketLauncher]:0,[b.LightLaser]:0,[b.HeavyLaser]:0,[b.GaussCannon]:0,[b.IonCannon]:0,[b.PlasmaTurret]:0,[b.SmallShieldDome]:0,[b.LargeShieldDome]:0,[b.AntiBallisticMissile]:0,[b.InterplanetaryMissile]:0,[b.PlanetaryShield]:0}),Q=e=>e===b.SmallShieldDome||e===b.LargeShieldDome,He=(e,t)=>{let n=V.currentPlanet;if(!n||!te(n,e,t,V.player.technologies).valid)return!1;let r=ie(n,e,t,V.player.officers);return n.buildQueue.push(r),!0},Ue=e=>{let t=Z.value[e];if(t<=0){J.value=H(`defenseView.inputError`),Y.value=H(`defenseView.inputErrorMessage`),q.value=!0;return}He(e,t)?Z.value[e]=0:(J.value=H(`defenseView.buildFailed`),Y.value=H(`defenseView.buildFailedMessage`),q.value=!0)},We=e=>{if(!W.value)return!1;let t=Z.value[e];if(t<=0||Q(e)&&(W.value.defense[e]>0||t>1))return!1;let n=U.value[e],r={metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t};return g(W.value,V.player.technologies,n.requirements)&&W.value.resources.metal>=r.metal&&W.value.resources.crystal>=r.crystal&&W.value.resources.deuterium>=r.deuterium&&W.value.resources.darkMatter>=r.darkMatter},$=e=>{let t=Z.value[e],n=U.value[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t}};return(n,i)=>W.value?(t(),_(`div`,I,[u(F,{"required-building":m(ae).Shipyard,"required-level":1},null,8,[`required-building`]),h(`h1`,L,c(m(H)(`defenseView.title`)),1),G.value>0?(t(),_(`div`,R,[h(`div`,z,[h(`div`,he,c(m(H)(`defenseView.missileCapacity`))+`:`,1),h(`div`,ge,[h(`span`,{class:s(K.value>G.value?`text-destructive`:`text-primary`)},c(m(k)(K.value)),3),i[1]||=h(`span`,{class:`text-muted-foreground mx-1`},`/`,-1),h(`span`,null,c(m(k)(G.value)),1)])]),h(`div`,_e,[h(`div`,ve,[h(`div`,{class:s([`h-full transition-all duration-300`,K.value>G.value?`bg-destructive`:`bg-primary`]),style:re({width:`${Math.min(K.value/G.value*100,100)}%`})},null,6)])])])):d(``,!0),h(`div`,ye,[(t(!0),_(p,null,r(Object.values(m(b)),n=>(t(),ee(m(O),{key:n,class:`relative`},{default:a(()=>[u(P,{requirements:m(U)[n].requirements},null,8,[`requirements`]),u(m(w),null,{default:a(()=>[h(`div`,be,[h(`div`,xe,[u(m(C),{class:`text-sm sm:text-base lg:text-lg cursor-pointer hover:text-primary transition-colors underline decoration-dotted underline-offset-4 order-2 sm:order-1`,onClick:e=>m(Ve).openDefense(n)},{default:a(()=>[l(c(m(U)[n].name),1)]),_:2},1032,[`onClick`]),u(m(de),{variant:`secondary`,class:`text-xs whitespace-nowrap self-start order-1 sm:order-2`},{default:a(()=>[l(c(W.value.defense[n]),1)]),_:2},1024)])]),u(m(y),{class:`text-xs sm:text-sm`},{default:a(()=>[l(c(m(U)[n].description),1)]),_:2},1024)]),_:2},1024),u(m(A),null,{default:a(()=>[h(`div`,Se,[h(`div`,B,[h(`div`,null,[h(`p`,Ce,c(m(H)(`defenseView.attack`)),1),h(`p`,we,c(m(U)[n].attack),1)]),h(`div`,null,[h(`p`,Te,c(m(H)(`defenseView.shield`)),1),h(`p`,Ee,c(m(U)[n].shield),1)]),h(`div`,null,[h(`p`,De,c(m(H)(`defenseView.armor`)),1),h(`p`,Oe,c(m(U)[n].armor),1)]),h(`div`,null,[h(`p`,ke,c(m(H)(`defenseView.buildTime`)),1),h(`p`,Ae,c(m(U)[n].buildTime)+c(m(H)(`defenseView.seconds`)),1)])]),h(`div`,je,[h(`p`,Me,c(m(H)(`defenseView.unitCost`))+`:`,1),h(`div`,Ne,[(t(),_(p,null,r(X,t=>v(h(`div`,{key:t.key,class:`flex items-center gap-1.5 sm:gap-2`},[u(x,{type:t.key,size:`sm`},null,8,[`type`]),h(`span`,Pe,c(m(H)(`resources.${t.key}`))+`:`,1),h(`span`,{class:s([`font-medium text-xs sm:text-sm`,m(D)(W.value.resources[t.key],m(U)[n].cost[t.key])])},c(m(k)(m(U)[n].cost[t.key])),3)]),[[e,t.key!==`darkMatter`||m(U)[n].cost.darkMatter>0]])),64))])]),h(`div`,Fe,[u(m(j),{for:`quantity-${n}`,class:`text-xs sm:text-sm`},{default:a(()=>[l(c(m(H)(`defenseView.buildQuantity`)),1)]),_:1},8,[`for`]),u(m(me),{id:`quantity-${n}`,modelValue:Z.value[n],"onUpdate:modelValue":e=>Z.value[n]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:Q(n)&&W.value.defense[n]>0?0:void 0,disabled:Q(n)&&W.value.defense[n]>0,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`max`,`disabled`]),Q(n)&&W.value.defense[n]>0?(t(),_(`p`,Ie,c(m(H)(`defenseView.shieldDomeBuilt`)),1)):d(``,!0)]),Z.value[n]>0?(t(),_(`div`,Le,[h(`p`,Re,c(m(H)(`defenseView.totalCost`))+`:`,1),h(`div`,ze,[(t(),_(p,null,r(X,t=>v(h(`div`,{key:t.key,class:`flex items-center gap-1.5 sm:gap-2`},[u(x,{type:t.key,size:`sm`},null,8,[`type`]),h(`span`,Be,c(m(H)(`resources.${t.key}`))+`:`,1),h(`span`,{class:s([`font-medium text-xs sm:text-sm`,m(D)(W.value.resources[t.key],$(n)[t.key])])},c(m(k)($(n)[t.key])),3)]),[[e,t.key!==`darkMatter`||$(n).darkMatter>0]])),64))])])):d(``,!0),u(m(ue),{onClick:e=>Ue(n),disabled:!We(n),class:`w-full`},{default:a(()=>[l(c(m(H)(`defenseView.build`)),1)]),_:1},8,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),u(m(le),{open:q.value,"onUpdate:open":i[0]||=e=>q.value=e},{default:a(()=>[u(m(pe),null,{default:a(()=>[u(m(se),null,{default:a(()=>[u(m(E),null,{default:a(()=>[l(c(J.value),1)]),_:1}),u(m(fe),{class:`whitespace-pre-line`},{default:a(()=>[l(c(Y.value),1)]),_:1})]),_:1}),u(m(T),null,{default:a(()=>[u(m(ce),null,{default:a(()=>[l(c(m(H)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):d(``,!0)}});export{V as default}; \ No newline at end of file diff --git a/docs/assets/DiplomacyView-BZEvKDfM.js b/docs/assets/DiplomacyView-BZEvKDfM.js deleted file mode 100644 index 3f0ffc6..0000000 --- a/docs/assets/DiplomacyView-BZEvKDfM.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,En as t,On as n,Rn as r,Yn as i,ar as a,cn as o,cr as s,dn as c,fn as l,hn as u,kn as d,ln as f,on as p,or as m,pn as h,rn as g,rr as _,sn as v,sr as y,un as b,wn as x,xn as S}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import{o as C}from"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import{l as w}from"./vendor-others-Bce0hM6h.js";import{$ as T,D as E,E as D,O,T as k,et as A,k as j}from"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{B as M,I as ee,J as N,L as P,Y as te,c as ne,l as re}from"./vendor-icons-Ccm2_GPI.js";import{t as ie}from"./CardDescription-DduF5EVY.js";import{g as F,p as I}from"./game-config-DRP-gbpS.js";import{$ as ae,J as L,K as R,X as oe,Y as z,Z as se,d as ce,f as le,m as ue,p as de,q as B,s as fe}from"./index-B4KMqZ_y.js";import{i as pe,n as me,r as V,t as H}from"./TabsTrigger-BnZOhHbD.js";var U=h({__name:`Pagination`,props:{page:{},defaultPage:{},itemsPerPage:{},total:{},siblingCount:{},disabled:{type:Boolean},showEdges:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},emits:[`update:page`],setup(e,{emit:n}){let i=e,a=n,s=T(w(i,`class`),a);return(e,n)=>(t(),o(_(j),S({"data-slot":`pagination`},_(s),{class:_(z)(`mx-auto flex w-full justify-center`,i.class)}),{default:r(t=>[d(e.$slots,`default`,m(u(t)))]),_:3},16,[`class`]))}}),W=h({__name:`PaginationContent`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,i=w(n,`class`);return(e,a)=>(t(),o(_(O),S({"data-slot":`pagination-content`},_(i),{class:_(z)(`flex flex-row items-center gap-1`,n.class)}),{default:r(t=>[d(e.$slots,`default`,m(u(t)))]),_:3},16,[`class`]))}}),G=h({__name:`PaginationItem`,props:{value:{},asChild:{type:Boolean},as:{},size:{default:`icon`},class:{},isActive:{type:Boolean}},setup(e){let n=e,i=w(n,`class`,`size`,`isActive`);return(a,s)=>(t(),o(_(E),S({"data-slot":`pagination-item`},_(i),{class:_(z)(_(B)({variant:e.isActive?`outline`:`ghost`,size:e.size}),n.class)}),{default:r(()=>[d(a.$slots,`default`)]),_:3},16,[`class`]))}}),K=h({__name:`PaginationNext`,props:{asChild:{type:Boolean},as:{},size:{default:`default`},class:{}},setup(e){let n=e,i=A(w(n,`class`,`size`));return(a,s)=>(t(),o(_(D),S({"data-slot":`pagination-next`,class:_(z)(_(B)({variant:`ghost`,size:e.size}),`gap-1 px-2.5 sm:pr-2.5`,n.class)},_(i)),{default:r(()=>[d(a.$slots,`default`,{},()=>[s[0]||=v(`span`,{class:`hidden sm:block`},`Next`,-1),l(_(N))])]),_:3},16,[`class`]))}}),q=h({__name:`PaginationPrevious`,props:{asChild:{type:Boolean},as:{},size:{default:`default`},class:{}},setup(e){let n=e,i=A(w(n,`class`,`size`));return(a,s)=>(t(),o(_(k),S({"data-slot":`pagination-previous`,class:_(z)(_(B)({variant:`ghost`,size:e.size}),`gap-1 px-2.5 sm:pr-2.5`,n.class)},_(i)),{default:r(()=>[d(a.$slots,`default`,{},()=>[l(_(te)),s[0]||=v(`span`,{class:`hidden sm:block`},`Previous`,-1)])]),_:3},16,[`class`]))}}),J={class:`flex items-start justify-between`},Y={class:`flex-1`},he={key:0,class:`ml-2`},ge={class:`space-y-2`},_e={class:`flex items-center justify-between text-sm`},ve={class:`text-muted-foreground`},X={class:`relative`},ye={class:`h-2 bg-muted rounded-full overflow-hidden`},Z={key:0,class:`pt-2 border-t`},be={class:`text-sm text-muted-foreground mb-2`},xe={class:`flex flex-wrap gap-1`},Se={class:`flex gap-2 pt-2`},Ce={key:1,class:`pt-2 border-t`},we={class:`text-xs text-muted-foreground mb-1`},Te={class:`flex items-center gap-2 text-xs`},Ee={class:`text-muted-foreground`},Q=h({__name:`NpcRelationCard`,props:{npc:{},relation:{}},setup(i){let u=i,d=C(),m=se(),{t:h}=oe(),x=p(()=>u.relation?.reputation||0),S=p(()=>u.relation?.status||F.Neutral),w=p(()=>{switch(S.value){case F.Friendly:return h(`diplomacy.status.friendly`);case F.Hostile:return h(`diplomacy.status.hostile`);default:return h(`diplomacy.status.neutral`)}}),T=p(()=>{switch(S.value){case F.Friendly:return`default`;case F.Hostile:return`destructive`;default:return`secondary`}}),E=p(()=>x.value>=20?`text-green-600 dark:text-green-400`:x.value<=-20?`text-red-600 dark:text-red-400`:`text-muted-foreground`),D=p(()=>!u.relation?.history||u.relation.history.length===0?null:u.relation.history[u.relation.history.length-1]),O=e=>m.npcs.find(t=>t.id===e)?.name||e.substring(0,8),k=e=>{switch(e){case I.GiftResources:return P;case I.Attack:case I.AllyAttacked:return re;case I.Spy:return M;case I.StealDebris:return ne;default:return P}},A=e=>{switch(e){case I.GiftResources:return h(`diplomacy.events.gift`);case I.Attack:return h(`diplomacy.events.attack`);case I.AllyAttacked:return h(`diplomacy.events.allyAttacked`);case I.Spy:return h(`diplomacy.events.spy`);case I.StealDebris:return h(`diplomacy.events.stealDebris`);default:return e}},j=()=>{if(u.npc.planets.length>0){let e=u.npc.planets[0];if(!e)return;d.push({path:`/fleet`,query:{galaxy:e.position.galaxy,system:e.position.system,position:e.position.position,gift:`1`}})}},N=()=>{if(u.npc.planets.length>0){let e=u.npc.planets[0];if(!e)return;d.push({path:`/galaxy`,query:{galaxy:e.position.galaxy,system:e.position.system,highlightNpc:u.npc.id}})}};return(u,d)=>(t(),o(_(ue),null,{default:r(()=>[l(_(le),null,{default:r(()=>[v(`div`,J,[v(`div`,Y,[l(_(ce),{class:`flex items-center gap-2`},{default:r(()=>[c(s(i.npc.name)+` `,1),l(_(R),{variant:T.value},{default:r(()=>[c(s(w.value),1)]),_:1},8,[`variant`])]),_:1}),l(_(ie),{class:`mt-1`},{default:r(()=>[c(s(i.npc.planets.length)+` `+s(_(h)(`diplomacy.planets`))+` `,1),i.npc.allies&&i.npc.allies.length>0?(t(),b(`span`,he,`· `+s(i.npc.allies.length)+` `+s(_(h)(`diplomacy.allies`)),1)):f(``,!0)]),_:1})])])]),_:1}),l(_(de),{class:`space-y-4`},{default:r(()=>[v(`div`,ge,[v(`div`,_e,[v(`span`,ve,s(_(h)(`diplomacy.reputation`)),1),v(`span`,{class:a([`font-semibold`,E.value])},s(x.value>0?`+`:``)+s(x.value),3)]),v(`div`,X,[v(`div`,ye,[x.value<0?(t(),b(`div`,{key:0,class:`h-full bg-red-500 dark:bg-red-600 absolute right-1/2`,style:y({width:`${Math.abs(x.value)/2}%`})},null,4)):f(``,!0),x.value>0?(t(),b(`div`,{key:1,class:`h-full bg-green-500 dark:bg-green-600 absolute left-1/2`,style:y({width:`${x.value/2}%`})},null,4)):f(``,!0)]),d[0]||=v(`div`,{class:`absolute left-1/2 top-0 bottom-0 w-px bg-border`},null,-1)]),d[1]||=v(`div`,{class:`flex justify-between text-xs text-muted-foreground`},[v(`span`,null,`-100`),v(`span`,null,`0`),v(`span`,null,`+100`)],-1)]),i.npc.allies&&i.npc.allies.length>0?(t(),b(`div`,Z,[v(`p`,be,s(_(h)(`diplomacy.alliedWith`))+`:`,1),v(`div`,xe,[(t(!0),b(g,null,n(i.npc.allies.slice(0,3),e=>(t(),o(_(R),{key:e,variant:`outline`,class:`text-xs`},{default:r(()=>[c(s(O(e)),1)]),_:2},1024))),128)),i.npc.allies.length>3?(t(),o(_(R),{key:0,variant:`outline`,class:`text-xs`},{default:r(()=>[c(` +`+s(i.npc.allies.length-3)+` `+s(_(h)(`diplomacy.more`)),1)]),_:1})):f(``,!0)])])):f(``,!0),v(`div`,Se,[l(_(L),{size:`sm`,variant:`outline`,class:`flex-1`,onClick:j},{default:r(()=>[l(_(P),{class:`h-4 w-4 mr-2`}),c(` `+s(_(h)(`diplomacy.actions.gift`)),1)]),_:1}),l(_(L),{size:`sm`,variant:`outline`,class:`flex-1`,onClick:N},{default:r(()=>[l(_(ee),{class:`h-4 w-4 mr-2`}),c(` `+s(_(h)(`diplomacy.actions.viewPlanets`)),1)]),_:1})]),D.value?(t(),b(`div`,Ce,[v(`p`,we,s(_(h)(`diplomacy.lastEvent`))+`:`,1),v(`div`,Te,[(t(),o(e(k(D.value.reason)),{class:`h-3 w-3`})),v(`span`,null,s(A(D.value.reason)),1),v(`span`,Ee,s(_(fe)(Date.now()-D.value.timestamp))+` `+s(_(h)(`diplomacy.ago`)),1)])])):f(``,!0)]),_:1})]),_:1}))}}),De={class:`container mx-auto p-4 sm:p-6 space-y-6`},Oe={class:`flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4`},ke={class:`text-2xl sm:text-3xl font-bold`},Ae={class:`text-sm text-muted-foreground mt-1`},je={key:0,class:`text-center py-12 text-muted-foreground`},Me={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Ne={key:1,class:`px-2 text-muted-foreground`},Pe={key:0,class:`text-center py-12 text-muted-foreground`},Fe={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Ie={key:1,class:`px-2 text-muted-foreground`},Le={key:0,class:`text-center py-12 text-muted-foreground`},Re={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},ze={key:1,class:`px-2 text-muted-foreground`},Be={key:0,class:`text-center py-12 text-muted-foreground`},Ve={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},He={key:1,class:`px-2 text-muted-foreground`},Ue={class:`space-y-2 max-h-96 overflow-y-auto`},We={class:`flex-shrink-0 mt-0.5`},Ge={class:`flex-1 min-w-0`},Ke={class:`flex items-center gap-2 mb-1`},qe={class:`font-medium`},Je={class:`text-sm text-muted-foreground`},Ye={class:`text-xs text-muted-foreground mt-1`},$=20,Xe=h({__name:`DiplomacyView`,setup(u){let d=ae(),m=se(),{t:h}=oe(),y=i(`all`),S=()=>{let e=m.npcs;e.length<2||e.forEach(t=>{if(t.allies||=[],t.allies.length===0){let n=e.filter(e=>e.id!==t.id);if(n.length===0)return;let r=Math.min(Math.floor(Math.random()*2)+1,n.length);[...n].sort(()=>Math.random()-.5).slice(0,r).forEach(e=>{t.allies.includes(e.id)||t.allies.push(e.id),e.allies||=[],e.allies.includes(t.id)||e.allies.push(t.id)})}})};x(()=>{S()});let C=i({all:1,friendly:1,neutral:1,hostile:1}),w=e=>d.player.diplomaticRelations?.[e],T=p(()=>m.npcs),E=p(()=>m.npcs.filter(e=>w(e.id)?.status===F.Friendly)),D=p(()=>m.npcs.filter(e=>{let t=w(e.id);return!t||t.status===F.Neutral})),O=p(()=>m.npcs.filter(e=>w(e.id)?.status===F.Hostile)),k=(e,t)=>{let n=((C.value[t]||1)-1)*$,r=n+$;return e.slice(n,r)},A=e=>Math.ceil(e.length/$),j=p(()=>k(T.value,`all`)),ee=p(()=>k(E.value,`friendly`)),N=p(()=>k(D.value,`neutral`)),te=p(()=>k(O.value,`hostile`)),L=p(()=>A(T.value)),z=p(()=>A(E.value)),B=p(()=>A(D.value)),J=p(()=>A(O.value)),Y=(e,t)=>{let n=[];if(t<=5)for(let e=1;e<=t;e++)n.push(e);else{n.push(1),e>3&&n.push(`...`);let r=Math.max(2,e-1),i=Math.min(t-1,e+1);for(let e=r;e<=i;e++)n.push(e);eY(C.value.all||1,L.value)),ge=p(()=>Y(C.value.friendly||1,z.value)),_e=p(()=>Y(C.value.neutral||1,B.value)),ve=p(()=>Y(C.value.hostile||1,J.value)),X=p(()=>[...d.player.diplomaticReports||[]].sort((e,t)=>t.timestamp-e.timestamp).slice(0,20)),ye=e=>{switch(e){case I.GiftResources:return P;case I.Attack:case I.AllyAttacked:return re;case I.Spy:return M;case I.StealDebris:return ne;default:return P}},Z=e=>e>0?`text-green-600 dark:text-green-400`:e<0?`text-red-600 dark:text-red-400`:`text-muted-foreground`,be=e=>e>0?`default`:e<0?`destructive`:`secondary`,xe=e=>{switch(e){case F.Friendly:return`default`;case F.Hostile:return`destructive`;default:return`secondary`}},Se=e=>{switch(e){case F.Friendly:return h(`diplomacy.status.friendly`);case F.Hostile:return h(`diplomacy.status.hostile`);default:return h(`diplomacy.status.neutral`)}};return(i,u)=>(t(),b(`div`,De,[v(`div`,Oe,[v(`div`,null,[v(`h1`,ke,s(_(h)(`diplomacy.title`)),1),v(`p`,Ae,s(_(h)(`diplomacy.description`)),1)])]),l(_(pe),{modelValue:y.value,"onUpdate:modelValue":u[4]||=e=>y.value=e,class:`w-full`},{default:r(()=>[l(_(me),{class:`grid w-full grid-cols-4`},{default:r(()=>[l(_(H),{value:`all`},{default:r(()=>[c(s(_(h)(`diplomacy.tabs.all`))+` `,1),l(_(R),{variant:`outline`,class:`ml-2 bg-blue-100 dark:bg-blue-950 text-blue-700 dark:text-blue-300 border-blue-300 dark:border-blue-700`},{default:r(()=>[c(s(T.value.length),1)]),_:1})]),_:1}),l(_(H),{value:`friendly`},{default:r(()=>[c(s(_(h)(`diplomacy.tabs.friendly`))+` `,1),l(_(R),{variant:`outline`,class:`ml-2 bg-green-100 dark:bg-green-950 text-green-700 dark:text-green-300 border-green-300 dark:border-green-700`},{default:r(()=>[c(s(E.value.length),1)]),_:1})]),_:1}),l(_(H),{value:`neutral`},{default:r(()=>[c(s(_(h)(`diplomacy.tabs.neutral`))+` `,1),l(_(R),{variant:`outline`,class:`ml-2 bg-gray-100 dark:bg-gray-800 text-gray-700 dark:text-gray-300 border-gray-300 dark:border-gray-600`},{default:r(()=>[c(s(D.value.length),1)]),_:1})]),_:1}),l(_(H),{value:`hostile`},{default:r(()=>[c(s(_(h)(`diplomacy.tabs.hostile`))+` `,1),l(_(R),{variant:`outline`,class:`ml-2 bg-red-100 dark:bg-red-950 text-red-700 dark:text-red-300 border-red-300 dark:border-red-700`},{default:r(()=>[c(s(O.value.length),1)]),_:1})]),_:1})]),_:1}),l(_(V),{value:`all`,class:`space-y-4 mt-6`},{default:r(()=>[T.value.length===0?(t(),b(`div`,je,s(_(h)(`diplomacy.noNpcs`)),1)):(t(),b(g,{key:1},[v(`div`,Me,[(t(!0),b(g,null,n(j.value,e=>(t(),o(Q,{key:e.id,npc:e,relation:w(e.id)},null,8,[`npc`,`relation`]))),128))]),L.value>1?(t(),o(_(U),{key:0,page:C.value.all,"onUpdate:page":u[0]||=e=>C.value.all=e,total:T.value.length,"items-per-page":$,"sibling-count":1,"show-edges":``,class:`mt-6`},{default:r(()=>[l(_(W),null,{default:r(()=>[l(_(q),null,{default:r(()=>[c(s(_(h)(`pagination.previous`)),1)]),_:1}),(t(!0),b(g,null,n(he.value,(e,n)=>(t(),b(g,{key:n},[typeof e==`number`?(t(),o(_(G),{key:0,value:e,"is-active":e===C.value.all},{default:r(()=>[c(s(e),1)]),_:2},1032,[`value`,`is-active`])):(t(),b(`span`,Ne,s(e),1))],64))),128)),l(_(K),null,{default:r(()=>[c(s(_(h)(`pagination.next`)),1)]),_:1})]),_:1})]),_:1},8,[`page`,`total`])):f(``,!0)],64))]),_:1}),l(_(V),{value:`friendly`,class:`space-y-4 mt-6`},{default:r(()=>[E.value.length===0?(t(),b(`div`,Pe,s(_(h)(`diplomacy.noFriendlyNpcs`)),1)):(t(),b(g,{key:1},[v(`div`,Fe,[(t(!0),b(g,null,n(ee.value,e=>(t(),o(Q,{key:e.id,npc:e,relation:w(e.id)},null,8,[`npc`,`relation`]))),128))]),z.value>1?(t(),o(_(U),{key:0,page:C.value.friendly,"onUpdate:page":u[1]||=e=>C.value.friendly=e,total:E.value.length,"items-per-page":$,"sibling-count":1,"show-edges":``,class:`mt-6`},{default:r(()=>[l(_(W),null,{default:r(()=>[l(_(q),null,{default:r(()=>[c(s(_(h)(`pagination.previous`)),1)]),_:1}),(t(!0),b(g,null,n(ge.value,(e,n)=>(t(),b(g,{key:n},[typeof e==`number`?(t(),o(_(G),{key:0,value:e,"is-active":e===C.value.friendly},{default:r(()=>[c(s(e),1)]),_:2},1032,[`value`,`is-active`])):(t(),b(`span`,Ie,s(e),1))],64))),128)),l(_(K),null,{default:r(()=>[c(s(_(h)(`pagination.next`)),1)]),_:1})]),_:1})]),_:1},8,[`page`,`total`])):f(``,!0)],64))]),_:1}),l(_(V),{value:`neutral`,class:`space-y-4 mt-6`},{default:r(()=>[D.value.length===0?(t(),b(`div`,Le,s(_(h)(`diplomacy.noNeutralNpcs`)),1)):(t(),b(g,{key:1},[v(`div`,Re,[(t(!0),b(g,null,n(N.value,e=>(t(),o(Q,{key:e.id,npc:e,relation:w(e.id)},null,8,[`npc`,`relation`]))),128))]),B.value>1?(t(),o(_(U),{key:0,page:C.value.neutral,"onUpdate:page":u[2]||=e=>C.value.neutral=e,total:D.value.length,"items-per-page":$,"sibling-count":1,"show-edges":``,class:`mt-6`},{default:r(()=>[l(_(W),null,{default:r(()=>[l(_(q),null,{default:r(()=>[c(s(_(h)(`pagination.previous`)),1)]),_:1}),(t(!0),b(g,null,n(_e.value,(e,n)=>(t(),b(g,{key:n},[typeof e==`number`?(t(),o(_(G),{key:0,value:e,"is-active":e===C.value.neutral},{default:r(()=>[c(s(e),1)]),_:2},1032,[`value`,`is-active`])):(t(),b(`span`,ze,s(e),1))],64))),128)),l(_(K),null,{default:r(()=>[c(s(_(h)(`pagination.next`)),1)]),_:1})]),_:1})]),_:1},8,[`page`,`total`])):f(``,!0)],64))]),_:1}),l(_(V),{value:`hostile`,class:`space-y-4 mt-6`},{default:r(()=>[O.value.length===0?(t(),b(`div`,Be,s(_(h)(`diplomacy.noHostileNpcs`)),1)):(t(),b(g,{key:1},[v(`div`,Ve,[(t(!0),b(g,null,n(te.value,e=>(t(),o(Q,{key:e.id,npc:e,relation:w(e.id)},null,8,[`npc`,`relation`]))),128))]),J.value>1?(t(),o(_(U),{key:0,page:C.value.hostile,"onUpdate:page":u[3]||=e=>C.value.hostile=e,total:O.value.length,"items-per-page":$,"sibling-count":1,"show-edges":``,class:`mt-6`},{default:r(()=>[l(_(W),null,{default:r(()=>[l(_(q),null,{default:r(()=>[c(s(_(h)(`pagination.previous`)),1)]),_:1}),(t(!0),b(g,null,n(ve.value,(e,n)=>(t(),b(g,{key:n},[typeof e==`number`?(t(),o(_(G),{key:0,value:e,"is-active":e===C.value.hostile},{default:r(()=>[c(s(e),1)]),_:2},1032,[`value`,`is-active`])):(t(),b(`span`,He,s(e),1))],64))),128)),l(_(K),null,{default:r(()=>[c(s(_(h)(`pagination.next`)),1)]),_:1})]),_:1})]),_:1},8,[`page`,`total`])):f(``,!0)],64))]),_:1})]),_:1},8,[`modelValue`]),X.value.length>0?(t(),o(_(ue),{key:0},{default:r(()=>[l(_(le),null,{default:r(()=>[l(_(ce),null,{default:r(()=>[c(s(_(h)(`diplomacy.recentEvents`)),1)]),_:1}),l(_(ie),null,{default:r(()=>[c(s(_(h)(`diplomacy.recentEventsDescription`)),1)]),_:1})]),_:1}),l(_(de),null,{default:r(()=>[v(`div`,Ue,[(t(!0),b(g,null,n(X.value,n=>(t(),b(`div`,{key:n.id,class:`flex items-start gap-3 p-3 rounded-lg border bg-card hover:bg-accent/50 transition-colors`},[v(`div`,We,[(t(),o(e(ye(n.eventType)),{class:a([`h-5 w-5`,Z(n.reputationChange)])},null,8,[`class`]))]),v(`div`,Ge,[v(`div`,Ke,[v(`span`,qe,s(n.npcName),1),l(_(R),{variant:be(n.reputationChange),class:`text-xs`},{default:r(()=>[c(s(n.reputationChange>0?`+`:``)+s(n.reputationChange),1)]),_:2},1032,[`variant`]),l(_(R),{variant:xe(n.newStatus),class:`text-xs`},{default:r(()=>[c(s(Se(n.newStatus)),1)]),_:2},1032,[`variant`])]),v(`p`,Je,s(n.message),1),v(`p`,Ye,s(_(fe)(Date.now()-n.timestamp))+` `+s(_(h)(`diplomacy.ago`)),1)])]))),128))])]),_:1})]),_:1})):f(``,!0)]))}});export{Xe as default}; \ No newline at end of file diff --git a/docs/assets/FleetView-BzElc0kX.js b/docs/assets/FleetView-BzElc0kX.js deleted file mode 100644 index c285914..0000000 --- a/docs/assets/FleetView-BzElc0kX.js +++ /dev/null @@ -1 +0,0 @@ -import{A as e,An as t,At as n,B as r,En as i,Fn as a,H as o,On as s,Pt as c,Rn as l,Tn as u,Yn as d,a as ee,ar as te,cn as f,cr as p,dn as m,fn as h,hn as ne,it as re,j as ie,jt as ae,k as oe,kn as se,ln as g,n as ce,on as _,or as le,pn as v,rn as y,rr as b,sn as x,un as S,wn as ue,xn as de}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import{a as fe,o as pe}from"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import{l as me}from"./vendor-others-Bce0hM6h.js";import{$ as C,F as w,I as T}from"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{B as he,L as ge,Z as E,b as _e,f as ve,i as ye,l as be,v as xe,w as Se}from"./vendor-icons-Ccm2_GPI.js";import{t as D}from"./CardDescription-DduF5EVY.js";import{_ as O,d as Ce,m as k}from"./game-config-DRP-gbpS.js";import{$ as we,A as Te,F as Ee,G as De,I as Oe,J as A,K as j,L as M,M as ke,N as Ae,Q as je,V as N,X as Me,Y as P,Z as Ne,d as F,f as I,j as Pe,k as Fe,m as L,o as R,p as z,s as Ie,u as B}from"./index-B4KMqZ_y.js";import{t as Le}from"./useGameConfig-DLqfPHtW.js";import{i as Re,n as ze,r as V,t as H}from"./TabsTrigger-BnZOhHbD.js";import{t as Be}from"./UnlockRequirement-DJ9dN5JL.js";var Ve=v({__name:`Checkbox`,props:{defaultValue:{type:[Boolean,String]},modelValue:{type:[Boolean,String,null]},disabled:{type:Boolean},value:{},id:{},asChild:{type:Boolean},as:{},name:{},required:{type:Boolean},class:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,a=C(me(n,`class`),r);return(e,t)=>(i(),f(b(T),de({"data-slot":`checkbox`},b(a),{class:b(P)(`peer border-input data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50`,n.class)}),{default:l(t=>[h(b(w),{"data-slot":`checkbox-indicator`,class:`grid place-content-center text-current transition-none`},{default:l(()=>[se(e.$slots,`default`,le(ne(t)),()=>[h(b(E),{class:`size-3.5`})])]),_:2},1024)]),_:3},16,[`class`]))}}),He={key:0,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},Ue={class:`text-2xl sm:text-3xl font-bold`},We={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},Ge={class:`flex justify-between items-start`},Ke={class:`font-semibold text-sm sm:text-base`},qe={class:`text-xl sm:text-2xl font-bold`},Je={class:`text-xs sm:text-sm text-muted-foreground space-y-1`},Ye={class:`flex justify-between items-center`},Xe={class:`text-sm font-medium`},Ze={class:`text-sm font-bold`},Qe={class:`grid grid-cols-1 sm:grid-cols-2 gap-3 sm:gap-4`},$e={class:`flex gap-2`},et={class:`grid grid-cols-3 gap-2 sm:gap-4`},tt={class:`space-y-2`},nt={class:`space-y-2`},rt={class:`space-y-2`},it={class:`grid grid-cols-2 sm:grid-cols-3 gap-2`},at={key:0,class:`mb-4 p-3 border rounded-lg bg-muted/50`},ot={class:`flex items-center gap-2 mb-2`},st={class:`text-xs text-muted-foreground`},ct={key:0,class:`mt-2 text-xs`},lt={class:`text-muted-foreground`},ut={class:`ml-1 font-semibold text-green-600 dark:text-green-400`},dt={class:`grid grid-cols-1 sm:grid-cols-3 gap-3 sm:gap-4`},ft={class:`space-y-2`},pt={class:`space-y-2`},mt={class:`space-y-2`},ht={class:`text-xs sm:text-sm text-muted-foreground mt-2`},gt={class:`flex justify-between text-xs sm:text-sm`},_t={class:`text-muted-foreground`},vt={class:`flex items-center gap-1.5`},yt={class:`text-muted-foreground`},bt={key:0,class:`flex justify-between text-xs sm:text-sm`},xt={class:`text-muted-foreground`},St={class:`flex justify-between items-start`},Ct={class:`text-xs sm:text-sm font-medium mb-2`},wt={class:`flex flex-wrap gap-2`},Tt={key:0},Et={class:`text-xs sm:text-sm font-medium mb-2`},Dt={class:`flex flex-wrap gap-2 text-xs`},Ot={key:0,class:`flex items-center gap-1`},kt={key:1,class:`flex items-center gap-1`},At={key:2,class:`flex items-center gap-1`},jt={key:3,class:`flex items-center gap-1`},Mt={class:`space-y-2`},Nt={class:`flex justify-between text-xs sm:text-sm`},Pt={class:`flex gap-2`},U=v({__name:`FleetView`,setup(ne){let se=fe(),le=pe(),v=we(),de=je(),me=Ne(),{t:C}=Me(),{SHIPS:w}=Le(),T=_(()=>v.currentPlanet),E=d(!1),P=d(``),U=d(``),W=d(Date.now()),G=null,Ft=_(()=>re(c(v.player.officers,Date.now()).additionalFleetSlots)),K=d(`fleet`),q=d({[O.LightFighter]:0,[O.HeavyFighter]:0,[O.Cruiser]:0,[O.Battleship]:0,[O.SmallCargo]:0,[O.LargeCargo]:0,[O.ColonyShip]:0,[O.Recycler]:0,[O.EspionageProbe]:0,[O.DarkMatterHarvester]:0,[O.Deathstar]:0}),J=d({galaxy:1,system:1,position:1}),Y=d(k.Attack),X=d({metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0});ue(()=>{G=window.setInterval(()=>{W.value=Date.now()},1e3);let{galaxy:e,system:t,position:n,mission:r,gift:i}=se.query;(e||t||n)&&(e&&(J.value.galaxy=Number(e)),t&&(J.value.system=Number(t)),n&&(J.value.position=Number(n)),r===`spy`?Y.value=k.Spy:r===`attack`?Y.value=k.Attack:r===`colonize`?Y.value=k.Colonize:i===`1`&&(Y.value=k.Transport,Q.value=!0),K.value=`send`,le.replace({path:`/fleet`}))}),u(()=>{G&&clearInterval(G)});let Z=_(()=>me.npcs.find(e=>e.planets.some(e=>e.position.galaxy===J.value.galaxy&&e.position.system===J.value.system&&e.position.position===J.value.position))),Q=d(!1);a(Z,e=>{!e&&Q.value&&(Q.value=!1)});let It=()=>o(X.value),Lt=_(()=>[{type:k.Attack,name:C(`fleetView.attackMission`),icon:be},{type:k.Transport,name:C(`fleetView.transport`),icon:Se},{type:k.Colonize,name:C(`fleetView.colonize`),icon:xe},{type:k.Spy,name:C(`fleetView.spy`),icon:he},{type:k.Deploy,name:C(`fleetView.deploy`),icon:ye},{type:k.Recycle,name:C(`fleetView.recycle`),icon:_e},{type:k.Destroy,name:C(`fleetView.destroy`),icon:ve}]),Rt=e=>Lt.value.find(t=>t.type===e)?.name||e,zt=e=>v.player.planets.find(t=>t.id===e)?.name||C(`fleetView.unknownPlanet`),Bt=()=>{let e=0;for(let[t,n]of Object.entries(q.value))if(n>0){let r=w.value[t];e+=r.cargoCapacity*n}return e},$=()=>X.value.metal+X.value.crystal+X.value.deuterium+X.value.darkMatter,Vt=()=>{let e=c(v.player.officers,Date.now());return n(q.value,e.fuelConsumptionReduction,X.value)},Ht=()=>{if(!T.value)return 0;let t=oe(T.value.position,J.value),n=c(v.player.officers,Date.now());return e(t,ae(q.value,n.fleetSpeedBonus))},Ut=()=>{if(!Object.values(q.value).some(e=>e>0))return{valid:!1,errorKey:`fleetView.noShipsSelected`};if(T.value&&Y.value!==k.Recycle&&Y.value!==k.Deploy&&J.value.galaxy===T.value.position.galaxy&&J.value.system===T.value.position.system&&J.value.position===T.value.position.position)return{valid:!1,errorKey:`fleetView.cannotSendToOwnPlanet`};if(Y.value===k.Transport&&$()>Bt())return{valid:!1,errorKey:`fleetView.cargoExceedsCapacity`};if(Y.value===k.Colonize&&(!q.value[O.ColonyShip]||(q.value[O.ColonyShip]??0)<1))return{valid:!1,errorKey:`fleetView.noColonyShip`};if(Y.value===k.Recycle){let e=`debris_${J.value.galaxy}_${J.value.system}_${J.value.position}`,t=de.debrisFields[e];if(!t||t.resources.metal===0&&t.resources.crystal===0)return{valid:!1,errorKey:`fleetView.noDebrisAtTarget`}}return Y.value===k.Destroy&&(!q.value[O.Deathstar]||(q.value[O.Deathstar]??0)<1)?{valid:!1,errorKey:`fleetView.noDeathstar`}:{valid:!0}},Wt=(t,n,r,i={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0})=>{if(!v.currentPlanet)return!1;let a=v.player.fleetMissions.length,o=ee(v.currentPlanet,r,i,v.player.officers,a);if(!o.valid)return!1;let s=n===k.Transport;ce(v.currentPlanet,r,o.fuelNeeded,s,i);let l=e(oe(v.currentPlanet.position,t),ae(r,c(v.player.officers,Date.now()).fleetSpeedBonus)),u=ie(v.player.id,v.currentPlanet.id,t,n,r,i,l);return n===k.Transport&&Q.value&&Z.value&&(u.isGift=!0,u.giftTargetNpcId=Z.value.id),v.player.fleetMissions.push(u),!0},Gt=()=>{if(!T.value)return;let e=Ut();if(!e.valid){P.value=C(`fleetView.sendFailed`),U.value=e.errorKey?C(e.errorKey):C(`fleetView.sendFailedMessage`),E.value=!0;return}let t={};for(let[e,n]of Object.entries(q.value))n>0&&(t[e]=n);Wt(J.value,Y.value,t,Y.value===k.Transport?X.value:void 0)?(Object.keys(q.value).forEach(e=>{q.value[e]=0}),X.value={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},Q.value=!1,K.value=`missions`):(P.value=C(`fleetView.sendFailed`),U.value=C(`fleetView.sendFailedMessage`),E.value=!0)},Kt=e=>{let t=v.player.fleetMissions.find(t=>t.id===e);return t?r(t,Date.now()):!1},qt=e=>{Kt(e)||(P.value=C(`fleetView.recallFailed`),U.value=C(`fleetView.recallFailedMessage`),E.value=!0)},Jt=e=>{let t=W.value,n=e.status===`outbound`?e.arrivalTime:e.returnTime;return Math.max(0,(n-t)/1e3)},Yt=e=>{let t=W.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(e,n)=>T.value?(i(),S(`div`,He,[h(Be,{"required-building":b(Ce).Shipyard,"required-level":1},null,8,[`required-building`]),x(`h1`,Ue,p(b(C)(`fleetView.title`)),1),h(b(Re),{modelValue:K.value,"onUpdate:modelValue":n[6]||=e=>K.value=e,class:`w-full`},{default:l(()=>[h(b(ze),{class:`grid w-full grid-cols-3`},{default:l(()=>[h(b(H),{value:`fleet`},{default:l(()=>[m(p(b(C)(`fleetView.fleetOverview`)),1)]),_:1}),h(b(H),{value:`send`},{default:l(()=>[m(p(b(C)(`fleetView.sendFleet`)),1)]),_:1}),h(b(H),{value:`missions`},{default:l(()=>[m(p(b(C)(`fleetView.flightMissions`))+` `,1),b(v).player.fleetMissions.length>0?(i(),f(b(j),{key:0,variant:`destructive`,class:`ml-1`},{default:l(()=>[m(p(b(v).player.fleetMissions.length),1)]),_:1})):g(``,!0)]),_:1})]),_:1}),h(b(V),{value:`fleet`,class:`mt-4`},{default:l(()=>[h(b(L),null,{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.currentPlanetFleet`)),1)]),_:1}),h(b(D),null,{default:l(()=>[m(p(T.value.name)+` [`+p(T.value.position.galaxy)+`:`+p(T.value.position.system)+`:`+p(T.value.position.position)+`] `,1)]),_:1})]),_:1}),h(b(z),null,{default:l(()=>[x(`div`,We,[(i(!0),S(y,null,s(T.value.fleet,(e,t)=>(i(),S(`div`,{key:t,class:`p-3 sm:p-4 border rounded-lg space-y-2`},[x(`div`,Ge,[x(`div`,null,[x(`h3`,Ke,p(b(w)[t].name),1),x(`p`,qe,p(b(R)(e)),1)])]),x(`div`,Je,[x(`p`,null,p(b(C)(`fleetView.attack`))+`: `+p(b(w)[t].attack),1),x(`p`,null,p(b(C)(`fleetView.shield`))+`: `+p(b(w)[t].shield),1),x(`p`,null,p(b(C)(`fleetView.armor`))+`: `+p(b(w)[t].armor),1),x(`p`,null,p(b(C)(`fleetView.speed`))+`: `+p(b(R)(b(w)[t].speed)),1),x(`p`,null,p(b(C)(`fleetView.cargo`))+`: `+p(b(R)(b(w)[t].cargoCapacity)),1)])]))),128))])]),_:1})]),_:1})]),_:1}),h(b(V),{value:`send`,class:`mt-4 space-y-4`},{default:l(()=>[h(b(L),null,{default:l(()=>[h(b(z),{class:`py-4`},{default:l(()=>[x(`div`,Ye,[x(`span`,Xe,p(b(C)(`fleetView.fleetMissionSlots`))+`:`,1),x(`span`,Ze,p(b(v).player.fleetMissions.length)+` / `+p(Ft.value),1)])]),_:1})]),_:1}),h(b(L),null,{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.selectFleet`)),1)]),_:1}),h(b(D),null,{default:l(()=>[m(p(b(C)(`fleetView.selectFleetDescription`)),1)]),_:1})]),_:1}),h(b(z),null,{default:l(()=>[x(`div`,Qe,[(i(!0),S(y,null,s(T.value.fleet,(e,t)=>(i(),S(`div`,{key:t,class:`space-y-2`},[h(b(B),{for:`ship-${t}`,class:`text-xs sm:text-sm`},{default:l(()=>[m(p(b(w)[t].name)+` (`+p(b(C)(`fleetView.available`))+`: `+p(e)+`) `,1)]),_:2},1032,[`for`]),x(`div`,$e,[h(b(N),{id:`ship-${t}`,modelValue:q.value[t],"onUpdate:modelValue":e=>q.value[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:e,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`max`]),h(b(A),{onClick:n=>q.value[t]=e,variant:`outline`,size:`sm`},{default:l(()=>[m(p(b(C)(`fleetView.all`)),1)]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1}),h(b(L),null,{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.targetCoordinates`)),1)]),_:1})]),_:1}),h(b(z),null,{default:l(()=>[x(`div`,et,[x(`div`,tt,[h(b(B),{for:`galaxy`,class:`text-xs sm:text-sm`},{default:l(()=>[m(p(b(C)(`fleetView.galaxy`)),1)]),_:1}),h(b(N),{id:`galaxy`,modelValue:J.value.galaxy,"onUpdate:modelValue":n[0]||=e=>J.value.galaxy=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`9`,placeholder:`1`},null,8,[`modelValue`])]),x(`div`,nt,[h(b(B),{for:`system`,class:`text-xs sm:text-sm`},{default:l(()=>[m(p(b(C)(`fleetView.system`)),1)]),_:1}),h(b(N),{id:`system`,modelValue:J.value.system,"onUpdate:modelValue":n[1]||=e=>J.value.system=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`10`,placeholder:`1`},null,8,[`modelValue`])]),x(`div`,rt,[h(b(B),{for:`position`,class:`text-xs sm:text-sm`},{default:l(()=>[m(p(b(C)(`fleetView.position`)),1)]),_:1}),h(b(N),{id:`position`,modelValue:J.value.position,"onUpdate:modelValue":n[2]||=e=>J.value.position=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:`10`,placeholder:`1`},null,8,[`modelValue`])])])]),_:1})]),_:1}),h(b(L),null,{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.missionType`)),1)]),_:1})]),_:1}),h(b(z),null,{default:l(()=>[x(`div`,it,[(i(!0),S(y,null,s(Lt.value,e=>(i(),f(b(A),{key:e.type,onClick:t=>Y.value=e.type,variant:Y.value===e.type?`default`:`outline`,class:`justify-start`},{default:l(()=>[(i(),f(t(e.icon),{class:`h-4 w-4 mr-2`})),m(` `+p(e.name),1)]),_:2},1032,[`onClick`,`variant`]))),128))])]),_:1})]),_:1}),Y.value===b(k).Transport?(i(),f(b(L),{key:0},{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.transportResources`)),1)]),_:1})]),_:1}),h(b(z),null,{default:l(()=>[Z.value?(i(),S(`div`,at,[x(`div`,ot,[h(b(Ve),{id:`gift-mode`,"default-value":Q.value},null,8,[`default-value`]),h(b(B),{for:`gift-mode`,class:`flex items-center gap-2 cursor-pointer`},{default:l(()=>[h(b(ge),{class:`h-4 w-4`}),m(` `+p(b(C)(`fleetView.giftMode`)),1)]),_:1})]),x(`p`,st,p(b(C)(`fleetView.giftModeDescription`))+` `+p(Z.value.name),1),Q.value&&(X.value.metal>0||X.value.crystal>0||X.value.deuterium>0)?(i(),S(`div`,ct,[x(`span`,lt,p(b(C)(`fleetView.estimatedReputationGain`))+`:`,1),x(`span`,ut,`+`+p(It()),1)])):g(``,!0)])):g(``,!0),x(`div`,dt,[x(`div`,ft,[h(b(B),{for:`cargo-metal`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:l(()=>[h(M,{type:`metal`,size:`sm`}),m(` `+p(b(C)(`resources.metal`))+` (`+p(b(C)(`fleetView.available`))+`: `+p(b(R)(T.value.resources.metal))+`) `,1)]),_:1}),h(b(N),{id:`cargo-metal`,modelValue:X.value.metal,"onUpdate:modelValue":n[3]||=e=>X.value.metal=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:T.value.resources.metal,placeholder:`0`},null,8,[`modelValue`,`max`])]),x(`div`,pt,[h(b(B),{for:`cargo-crystal`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:l(()=>[h(M,{type:`crystal`,size:`sm`}),m(` `+p(b(C)(`resources.crystal`))+` (`+p(b(C)(`fleetView.available`))+`: `+p(b(R)(T.value.resources.crystal))+`) `,1)]),_:1}),h(b(N),{id:`cargo-crystal`,modelValue:X.value.crystal,"onUpdate:modelValue":n[4]||=e=>X.value.crystal=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:T.value.resources.crystal,placeholder:`0`},null,8,[`modelValue`,`max`])]),x(`div`,mt,[h(b(B),{for:`cargo-deuterium`,class:`text-xs sm:text-sm flex items-center gap-2`},{default:l(()=>[h(M,{type:`deuterium`,size:`sm`}),m(` `+p(b(C)(`resources.deuterium`))+` (`+p(b(C)(`fleetView.available`))+`: `+p(b(R)(T.value.resources.deuterium))+`) `,1)]),_:1}),h(b(N),{id:`cargo-deuterium`,modelValue:X.value.deuterium,"onUpdate:modelValue":n[5]||=e=>X.value.deuterium=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:T.value.resources.deuterium,placeholder:`0`},null,8,[`modelValue`,`max`])])]),x(`p`,ht,p(b(C)(`fleetView.totalCargoCapacity`))+`: `+p(b(R)(Bt()))+` | `+p(b(C)(`fleetView.used`))+`: `+p(b(R)($())),1)]),_:1})]),_:1})):g(``,!0),h(b(L),null,{default:l(()=>[h(b(I),null,{default:l(()=>[h(b(F),null,{default:l(()=>[m(p(b(C)(`fleetView.missionInfo`)),1)]),_:1})]),_:1}),h(b(z),{class:`space-y-2`},{default:l(()=>[x(`div`,gt,[x(`span`,_t,p(b(C)(`fleetView.fuelConsumption`))+`:`,1),x(`span`,vt,[h(M,{type:`deuterium`,size:`sm`}),x(`span`,{class:te(Vt()>T.value.resources.deuterium?`text-red-600 dark:text-red-400 font-medium`:``)},p(b(R)(Vt())),3),x(`span`,yt,`/ `+p(b(R)(T.value.resources.deuterium)),1)])]),Object.values(q.value).some(e=>e>0)?(i(),S(`div`,bt,[x(`span`,xt,p(b(C)(`fleetView.flightTime`))+`:`,1),x(`span`,null,p(b(Ie)(Ht())),1)])):g(``,!0)]),_:1})]),_:1}),h(b(A),{onClick:Gt,disabled:!Ut(),class:`w-full`,size:`lg`},{default:l(()=>[m(p(b(C)(`fleetView.sendFleet`)),1)]),_:1},8,[`disabled`])]),_:1}),h(b(V),{value:`missions`,class:`mt-4 space-y-4`},{default:l(()=>[b(v).player.fleetMissions.length===0?(i(),f(b(L),{key:0},{default:l(()=>[h(b(z),{class:`py-8 text-center text-muted-foreground`},{default:l(()=>[m(p(b(C)(`fleetView.noFlightMissions`)),1)]),_:1})]),_:1})):g(``,!0),(i(!0),S(y,null,s(b(v).player.fleetMissions,e=>(i(),f(b(L),{key:e.id},{default:l(()=>[h(b(I),null,{default:l(()=>[x(`div`,St,[x(`div`,null,[h(b(F),{class:`text-base sm:text-lg`},{default:l(()=>[m(p(Rt(e.missionType)),1)]),_:2},1024),h(b(D),{class:`text-xs sm:text-sm`},{default:l(()=>[m(p(zt(e.originPlanetId))+` → [`+p(e.targetPosition.galaxy)+`:`+p(e.targetPosition.system)+`:`+p(e.targetPosition.position)+`] `,1)]),_:2},1024)]),h(b(j),{variant:e.status===`outbound`?`default`:`secondary`},{default:l(()=>[m(p(e.status===`outbound`?b(C)(`fleetView.outbound`):b(C)(`fleetView.returning`)),1)]),_:2},1032,[`variant`])])]),_:2},1024),h(b(z),{class:`space-y-3`},{default:l(()=>[x(`div`,null,[x(`p`,Ct,p(b(C)(`fleetView.fleetComposition`))+`:`,1),x(`div`,wt,[(i(!0),S(y,null,s(e.fleet,(e,t)=>(i(),f(b(j),{key:t,variant:`outline`},{default:l(()=>[m(p(b(w)[t].name)+`: `+p(e),1)]),_:2},1024))),128))])]),e.cargo.metal>0||e.cargo.crystal>0||e.cargo.deuterium>0||e.cargo.darkMatter>0?(i(),S(`div`,Tt,[x(`p`,Et,p(b(C)(`fleetView.carryingResources`))+`:`,1),x(`div`,Dt,[e.cargo.metal>0?(i(),S(`span`,Ot,[h(M,{type:`metal`,size:`sm`}),m(` `+p(b(R)(e.cargo.metal)),1)])):g(``,!0),e.cargo.crystal>0?(i(),S(`span`,kt,[h(M,{type:`crystal`,size:`sm`}),m(` `+p(b(R)(e.cargo.crystal)),1)])):g(``,!0),e.cargo.deuterium>0?(i(),S(`span`,At,[h(M,{type:`deuterium`,size:`sm`}),m(` `+p(b(R)(e.cargo.deuterium)),1)])):g(``,!0),e.cargo.darkMatter>0?(i(),S(`span`,jt,[h(M,{type:`darkMatter`,size:`sm`}),m(` `+p(b(R)(e.cargo.darkMatter)),1)])):g(``,!0)])])):g(``,!0),x(`div`,Mt,[x(`div`,Nt,[x(`span`,null,p(e.status===`outbound`?b(C)(`fleetView.arrivalTime`):b(C)(`fleetView.returnTime`))+`:`,1),x(`span`,null,p(b(Ie)(Jt(e))),1)]),h(b(De),{"model-value":Yt(e)},null,8,[`model-value`])]),x(`div`,Pt,[e.status===`outbound`?(i(),f(b(A),{key:0,onClick:t=>qt(e.id),variant:`outline`,size:`sm`,class:`w-full`},{default:l(()=>[m(p(b(C)(`fleetView.recallFleet`)),1)]),_:1},8,[`onClick`])):g(``,!0)])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`modelValue`]),h(b(Oe),{open:E.value,"onUpdate:open":n[7]||=e=>E.value=e},{default:l(()=>[h(b(Ae),null,{default:l(()=>[h(b(Te),null,{default:l(()=>[h(b(Fe),null,{default:l(()=>[m(p(P.value),1)]),_:1}),h(b(ke),{class:`whitespace-pre-line`},{default:l(()=>[m(p(U.value),1)]),_:1})]),_:1}),h(b(Pe),null,{default:l(()=>[h(b(Ee),null,{default:l(()=>[m(p(b(C)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):g(``,!0)}});export{U as default}; \ No newline at end of file diff --git a/docs/assets/FleetView-C_yELhx2.js b/docs/assets/FleetView-C_yELhx2.js deleted file mode 100644 index e616697..0000000 --- a/docs/assets/FleetView-C_yELhx2.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as Se}from"./useGameConfig-CVlwnWOp.js";import{t as Ce}from"./AlertDialog-Bf_xgpJz.js";import{t as we}from"./UnlockRequirement-p2W4t6RX.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-BMhV90vD.js b/docs/assets/GMView-BMhV90vD.js deleted file mode 100644 index 99fe9ae..0000000 --- a/docs/assets/GMView-BMhV90vD.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,On as t,Rn as n,S as r,Yn as i,b as ee,cn as a,cr as o,dn as s,fn as c,ln as l,on as u,pn as te,rn as d,rr as f,sn as p,sr as ne,un as m,v as re,x as ie,y as h}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import{o as ae}from"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{N as oe}from"./vendor-icons-Ccm2_GPI.js";import{t as g}from"./CardDescription-DduF5EVY.js";import{_,d as se,f as ce,h as v,v as le}from"./game-config-DRP-gbpS.js";import{$ as ue,A as y,F as de,I as fe,J as b,K as pe,M as me,N as x,P as he,Q as ge,V as S,X as _e,Z as ve,d as C,f as w,j as T,k as E,m as D,p as O,u as k}from"./index-B4KMqZ_y.js";import{t as ye}from"./useGameConfig-DLqfPHtW.js";import{i as be,n as xe,r as A,t as Se}from"./TabsTrigger-BnZOhHbD.js";import{a as j,i as M,n as N,r as P,t as F}from"./SelectValue-8cT4Hu-1.js";import{a as Ce,i as we,n as Te,o as Ee,r as De,t as Oe}from"./empty-Ds0PR_Pd.js";var ke={key:0,class:`container mx-auto p-4 sm:p-6 flex items-center justify-center min-h-[60vh]`},Ae={key:1,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},je={class:`flex items-center justify-between`},Me={class:`text-2xl sm:text-3xl font-bold`},Ne={class:`flex gap-2`},Pe={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Fe={class:`flex gap-2`},Ie={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Le={class:`flex gap-2`},Re={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},ze={class:`flex gap-2`},Be={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Ve={class:`flex gap-2`},He={class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Ue={class:`flex gap-2`},We={class:`grid grid-cols-1 md:grid-cols-2 gap-3`},Ge={class:`space-y-2`},Ke={class:`space-y-2`},qe={class:`grid grid-cols-2 gap-2`},I=te({__name:`GMView`,setup(te){let I=ae(),L=ue(),R=ve(),Je=ge(),{t:z}=_e(),{BUILDINGS:Ye,TECHNOLOGIES:Xe,SHIPS:Ze,DEFENSES:Qe,OFFICERS:$e}=ye(),et=()=>{I.push(`/`)},B=i(L.player.planets[0]?.id||``),V=i({}),H=i(R.npcs[0]?.id||``),U=i(`0`),W=i(!1),G=i(``),K=i(``),q=i(null),J=i(!1);Object.values(v).forEach(e=>{let t=L.player.officers[e];if(t&&t.expiresAt){let n=Math.ceil((t.expiresAt-Date.now())/(1e3*60*60*24));V.value[e]=Math.max(0,n)}else V.value[e]=0});let Y=u(()=>L.player.planets.find(e=>e.id===B.value)),X=u(()=>R.npcs.find(e=>e.id===H.value)),Z=u(()=>[...L.player.planets,...Object.values(Je.planets)]),tt=[`metal`,`crystal`,`deuterium`,`darkMatter`],nt=Object.values(se),rt=Object.values(le),it=Object.values(_),at=Object.values(ce),ot=Object.values(v),st=[{value:`resources`,label:`gmView.resources`},{value:`buildings`,label:`gmView.buildings`},{value:`research`,label:`gmView.research`},{value:`ships`,label:`gmView.ships`},{value:`defense`,label:`gmView.defense`},{value:`officers`,label:`gmView.officers`}],ct=(e,t)=>{Y.value&&(Y.value.resources[e]+=t)},lt=(e,t)=>{Y.value&&(Y.value.buildings[e]=t)},ut=(e,t)=>{L.player.technologies[e]=t},dt=(e,t)=>{Y.value&&(Y.value.fleet[e]=(Y.value.fleet[e]||0)+t)},ft=(e,t)=>{Y.value&&(Y.value.defense[e]=(Y.value.defense[e]||0)+t)},Q=(e,t)=>{V.value[e]=t;let n=Date.now(),r=n+t*24*60*60*1e3;L.player.officers[e]?(L.player.officers[e].expiresAt=r,L.player.officers[e].active=!0,L.player.officers[e].hiredAt||(L.player.officers[e].hiredAt=n)):L.player.officers[e]={type:e,active:!0,hiredAt:n,expiresAt:r}},pt=()=>{L.isPaused=!0,J.value=!0},mt=e=>{e||(L.isPaused=!1),J.value=e},ht=()=>{J.value=!1,L.isPaused=!1},gt=()=>{L.isPaused=!0,J.value=!1;try{L.player.isGMEnabled=!1,localStorage.clear(),location.reload()}catch(e){console.error(`Failed to reset game:`,e),window.location.reload()}},$=(e,t,n)=>{G.value=e,K.value=t,q.value=n||null,W.value=!0},_t=()=>{W.value=!1,q.value&&=(q.value(),null)},vt=()=>{if(!X.value){$(z(`gmView.selectNPCFirst`)||`Please select an NPC first`,``);return}let e=r(X.value,L.player,Z.value,parseInt(U.value));e?$(z(`gmView.npcWillSpyIn5s`,{npcName:X.value.name}),z(`gmView.testSpyMessage`),()=>{h(X.value,e.id,5,L.player)}):$(z(`gmView.npcNoProbes`)||`NPC does not have spy probes`,``)},yt=()=>{if(!X.value){$(z(`gmView.selectNPCFirst`)||`Please select an NPC first`,``);return}let e=ee(X.value,L.player,Z.value,parseInt(U.value));e?$(z(`gmView.npcWillAttackIn5s`,{npcName:X.value.name}),z(`gmView.testAttackMessage`),()=>{h(X.value,e.id,5,L.player)}):$(z(`gmView.npcNoSpyReport`)||`NPC needs to spy first`,``)},bt=()=>{if(!X.value){$(z(`gmView.selectNPCFirst`)||`Please select an NPC first`,``);return}let{spyMission:e,attackMission:t}=ie(X.value,L.player,Z.value,parseInt(U.value));e&&t?$(z(`gmView.npcWillSpyAndAttack`,{npcName:X.value.name}),z(`gmView.testSpyAndAttackMessage`),()=>{h(X.value,e.id,5,L.player),h(X.value,t.id,10,L.player)}):$(z(`gmView.npcMissionFailed`)||`Failed to create missions`,``)},xt=()=>{if(!X.value){$(z(`gmView.selectNPCFirst`)||`Please select an NPC first`,``);return}$(z(`gmView.acceleratedMissions`,{count:re(X.value,5,L.player)}),``)},St=()=>{if(!X.value){$(z(`gmView.selectNPCFirst`)||`Please select an NPC first`,``);return}let e=X.value.planets[0];if(!e){$(z(`gmView.npcNoPlanets`),``);return}e.fleet[_.EspionageProbe]=(e.fleet[_.EspionageProbe]||0)+100,e.fleet[_.LightFighter]=(e.fleet[_.LightFighter]||0)+500,e.fleet[_.HeavyFighter]=(e.fleet[_.HeavyFighter]||0)+300,e.fleet[_.Cruiser]=(e.fleet[_.Cruiser]||0)+200,e.fleet[_.Battleship]=(e.fleet[_.Battleship]||0)+100,e.fleet[_.Bomber]=(e.fleet[_.Bomber]||0)+50,e.fleet[_.Destroyer]=(e.fleet[_.Destroyer]||0)+30,e.fleet[_.Battlecruiser]=(e.fleet[_.Battlecruiser]||0)+20,$(z(`gmView.npcFleetInitialized`,{npcName:X.value.name}),z(`gmView.npcFleetDetails`))};return(r,i)=>f(L).player.isGMEnabled?(e(),m(`div`,Ae,[p(`div`,je,[p(`h1`,Me,o(f(z)(`gmView.title`)),1),c(f(pe),{variant:`destructive`},{default:n(()=>[s(o(f(z)(`gmView.adminOnly`)),1)]),_:1})]),c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.selectPlanet`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[c(f(j),{modelValue:B.value,"onUpdate:modelValue":i[0]||=e=>B.value=e},{default:n(()=>[c(f(N),{class:`w-full`},{default:n(()=>[c(f(F),{placeholder:f(z)(`gmView.choosePlanet`)},null,8,[`placeholder`])]),_:1}),c(f(M),null,{default:n(()=>[(e(!0),m(d,null,t(f(L).player.planets,t=>(e(),a(f(P),{key:t.id,value:t.id},{default:n(()=>[s(o(t.name)+` (`+o(t.position.galaxy)+`:`+o(t.position.system)+`:`+o(t.position.position)+`) `,1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),_:1})]),_:1}),Y.value?(e(),a(f(be),{key:0,"default-value":`resources`,class:`w-full`},{default:n(()=>[c(f(xe),{class:`grid w-full`,style:ne({gridTemplateColumns:`repeat(${st.length}, minmax(0, 1fr))`})},{default:n(()=>[(e(),m(d,null,t(st,e=>c(f(Se),{key:e.value,value:e.value},{default:n(()=>[s(o(f(z)(e.label)),1)]),_:2},1032,[`value`])),64))]),_:1},8,[`style`]),c(f(A),{value:`resources`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyResources`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.resourcesDesc`)),1)]),_:1})]),_:1}),c(f(O),{class:`space-y-4`},{default:n(()=>[(e(),m(d,null,t(tt,e=>p(`div`,{key:e,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f(z)(`resources.${e}`)),1)]),_:2},1024),p(`div`,Ne,[c(f(S),{modelValue:Y.value.resources[e],"onUpdate:modelValue":t=>Y.value.resources[e]=t,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),c(f(b),{onClick:t=>ct(e,1e6),variant:`outline`,size:`sm`},{default:n(()=>[...i[5]||=[s(`+1M`,-1)]]),_:1},8,[`onClick`]),c(f(b),{onClick:t=>ct(e,1e7),variant:`outline`,size:`sm`},{default:n(()=>[...i[6]||=[s(`+10M`,-1)]]),_:1},8,[`onClick`])])])),64))]),_:1})]),_:1})]),_:1}),c(f(A),{value:`buildings`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyBuildings`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.buildingsDesc`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[p(`div`,Pe,[(e(!0),m(d,null,t(f(nt),t=>(e(),m(`div`,{key:t,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f(Ye)[t].name),1)]),_:2},1024),p(`div`,Fe,[c(f(S),{modelValue:Y.value.buildings[t],"onUpdate:modelValue":e=>Y.value.buildings[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:`100`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),c(f(b),{onClick:e=>lt(t,10),variant:`outline`,size:`sm`},{default:n(()=>[...i[7]||=[s(`Lv 10`,-1)]]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>lt(t,30),variant:`outline`,size:`sm`},{default:n(()=>[...i[8]||=[s(`Lv 30`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})]),_:1}),c(f(A),{value:`research`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyResearch`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.researchDesc`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[p(`div`,Ie,[(e(!0),m(d,null,t(f(rt),t=>(e(),m(`div`,{key:t,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f(Xe)[t].name),1)]),_:2},1024),p(`div`,Le,[c(f(S),{modelValue:f(L).player.technologies[t],"onUpdate:modelValue":e=>f(L).player.technologies[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,max:`50`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),c(f(b),{onClick:e=>ut(t,10),variant:`outline`,size:`sm`},{default:n(()=>[...i[9]||=[s(`Lv 10`,-1)]]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>ut(t,20),variant:`outline`,size:`sm`},{default:n(()=>[...i[10]||=[s(`Lv 20`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})]),_:1}),c(f(A),{value:`ships`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyShips`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.shipsDesc`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[p(`div`,Re,[(e(!0),m(d,null,t(f(it),t=>(e(),m(`div`,{key:t,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f(Ze)[t].name),1)]),_:2},1024),p(`div`,ze,[c(f(S),{modelValue:Y.value.fleet[t],"onUpdate:modelValue":e=>Y.value.fleet[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),c(f(b),{onClick:e=>dt(t,100),variant:`outline`,size:`sm`},{default:n(()=>[...i[11]||=[s(`+100`,-1)]]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>dt(t,1e3),variant:`outline`,size:`sm`},{default:n(()=>[...i[12]||=[s(`+1K`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})]),_:1}),c(f(A),{value:`defense`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyDefense`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.defenseDesc`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[p(`div`,Be,[(e(!0),m(d,null,t(f(at),t=>(e(),m(`div`,{key:t,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f(Qe)[t].name),1)]),_:2},1024),p(`div`,Ve,[c(f(S),{modelValue:Y.value.defense[t],"onUpdate:modelValue":e=>Y.value.defense[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`]),c(f(b),{onClick:e=>ft(t,100),variant:`outline`,size:`sm`},{default:n(()=>[...i[13]||=[s(`+100`,-1)]]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>ft(t,1e3),variant:`outline`,size:`sm`},{default:n(()=>[...i[14]||=[s(`+1K`,-1)]]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})]),_:1}),c(f(A),{value:`officers`,class:`space-y-4`},{default:n(()=>[c(f(D),null,{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.modifyOfficers`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.officersDesc`)),1)]),_:1})]),_:1}),c(f(O),null,{default:n(()=>[p(`div`,He,[(e(!0),m(d,null,t(f(ot),t=>(e(),m(`div`,{key:t,class:`space-y-2`},[c(f(k),null,{default:n(()=>[s(o(f($e)[t].name),1)]),_:2},1024),p(`div`,Ue,[c(f(S),{modelValue:V.value[t],"onUpdate:modelValue":e=>V.value[t]=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:f(z)(`gmView.days`),class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),c(f(b),{onClick:e=>Q(t,7),variant:`outline`,size:`sm`},{default:n(()=>[s(`7`+o(f(z)(`gmView.days`)),1)]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>Q(t,30),variant:`outline`,size:`sm`},{default:n(()=>[s(`30`+o(f(z)(`gmView.days`)),1)]),_:1},8,[`onClick`]),c(f(b),{onClick:e=>Q(t,365),variant:`outline`,size:`sm`},{default:n(()=>[s(`365`+o(f(z)(`gmView.days`)),1)]),_:1},8,[`onClick`])])]))),128))])]),_:1})]),_:1})]),_:1})]),_:1})):l(``,!0),c(f(D),{class:`border-primary`},{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),null,{default:n(()=>[s(o(f(z)(`gmView.npcTesting`)||`NPC Testing`),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.npcTestingDesc`)||`Test NPC spy and attack behavior`),1)]),_:1})]),_:1}),c(f(O),{class:`space-y-3`},{default:n(()=>[p(`div`,We,[p(`div`,Ge,[c(f(k),null,{default:n(()=>[s(o(f(z)(`gmView.selectNPC`)||`Select NPC`),1)]),_:1}),c(f(j),{modelValue:H.value,"onUpdate:modelValue":i[1]||=e=>H.value=e},{default:n(()=>[c(f(N),{class:`w-full`},{default:n(()=>[c(f(F),{placeholder:f(z)(`gmView.chooseNPC`)||`Choose NPC`},null,8,[`placeholder`])]),_:1}),c(f(M),null,{default:n(()=>[(e(!0),m(d,null,t(f(R).npcs,t=>(e(),a(f(P),{key:t.id,value:t.id},{default:n(()=>[s(o(t.name)+` (`+o(t.difficulty)+`)`,1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),p(`div`,Ke,[c(f(k),null,{default:n(()=>[s(o(f(z)(`gmView.targetPlanet`)||`Target Planet`),1)]),_:1}),c(f(j),{modelValue:U.value,"onUpdate:modelValue":i[2]||=e=>U.value=e},{default:n(()=>[c(f(N),{class:`w-full`},{default:n(()=>[c(f(F),{placeholder:f(z)(`gmView.chooseTarget`)||`Choose Target Planet`},null,8,[`placeholder`])]),_:1}),c(f(M),null,{default:n(()=>[(e(!0),m(d,null,t(f(L).player.planets,(t,r)=>(e(),a(f(P),{key:t.id,value:r.toString()},{default:n(()=>[s(o(t.name)+` (`+o(t.position.galaxy)+`:`+o(t.position.system)+`:`+o(t.position.position)+`) `,1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])])]),p(`div`,qe,[c(f(b),{onClick:vt,variant:`outline`,class:`w-full`,disabled:!X.value},{default:n(()=>[s(o(f(z)(`gmView.testSpy`)||`Test Spy`),1)]),_:1},8,[`disabled`]),c(f(b),{onClick:yt,variant:`outline`,class:`w-full`,disabled:!X.value},{default:n(()=>[s(o(f(z)(`gmView.testAttack`)||`Test Attack`),1)]),_:1},8,[`disabled`])]),c(f(b),{onClick:bt,variant:`default`,class:`w-full`,disabled:!X.value},{default:n(()=>[s(o(f(z)(`gmView.testSpyAndAttack`)||`Test Spy & Attack`),1)]),_:1},8,[`disabled`]),c(f(b),{onClick:St,variant:`secondary`,class:`w-full`,disabled:!X.value},{default:n(()=>[s(o(f(z)(`gmView.initializeFleet`)||`Initialize NPC Fleet`),1)]),_:1},8,[`disabled`]),c(f(b),{onClick:xt,variant:`secondary`,class:`w-full`,disabled:!X.value},{default:n(()=>[s(o(f(z)(`gmView.accelerateMissions`)||`Accelerate All Missions (5s)`),1)]),_:1},8,[`disabled`])]),_:1})]),_:1}),c(f(D),{class:`border-destructive`},{default:n(()=>[c(f(w),null,{default:n(()=>[c(f(C),{class:`text-destructive`},{default:n(()=>[s(o(f(z)(`gmView.dangerZone`)),1)]),_:1}),c(f(g),null,{default:n(()=>[s(o(f(z)(`gmView.dangerZoneDesc`)),1)]),_:1})]),_:1}),c(f(O),{class:`space-y-2`},{default:n(()=>[c(f(b),{onClick:pt,variant:`destructive`,class:`w-full`},{default:n(()=>[s(o(f(z)(`gmView.resetGame`)),1)]),_:1})]),_:1})]),_:1}),c(f(fe),{open:J.value,"onUpdate:open":mt},{default:n(()=>[c(f(x),null,{default:n(()=>[c(f(y),null,{default:n(()=>[c(f(E),null,{default:n(()=>[s(o(f(z)(`gmView.resetGame`)),1)]),_:1}),c(f(me),null,{default:n(()=>[s(o(f(z)(`gmView.resetGameConfirm`)),1)]),_:1})]),_:1}),c(f(T),null,{default:n(()=>[c(f(he),{onClick:ht},{default:n(()=>[s(o(f(z)(`common.cancel`)),1)]),_:1}),c(f(de),{onClick:gt},{default:n(()=>[s(o(f(z)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),c(f(fe),{open:W.value,"onUpdate:open":i[3]||=e=>W.value=e},{default:n(()=>[c(f(x),null,{default:n(()=>[c(f(y),null,{default:n(()=>[c(f(E),null,{default:n(()=>[s(o(G.value),1)]),_:1}),K.value?(e(),a(f(me),{key:0,class:`whitespace-pre-line`},{default:n(()=>[s(o(K.value),1)]),_:1})):l(``,!0)]),_:1}),c(f(T),null,{default:n(()=>[c(f(de),{onClick:_t},{default:n(()=>[s(o(f(z)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):(e(),m(`div`,ke,[c(f(Ee),{class:`border-0`},{default:n(()=>[c(f(Te),null,{default:n(()=>[...i[4]||=[p(`div`,{class:`text-8xl sm:text-9xl font-bold text-muted-foreground/20`},`404`,-1)]]),_:1}),c(f(De),null,{default:n(()=>[c(f(Oe),null,{default:n(()=>[s(o(f(z)(`notFound.title`)),1)]),_:1}),c(f(we),null,{default:n(()=>[s(o(f(z)(`notFound.description`)),1)]),_:1})]),_:1}),c(f(Ce),null,{default:n(()=>[c(f(b),{onClick:et,size:`lg`},{default:n(()=>[c(f(oe),{class:`mr-2 h-4 w-4`}),s(` `+o(f(z)(`notFound.goHome`)),1)]),_:1})]),_:1})]),_:1})]))}});export{I as default}; \ No newline at end of file diff --git a/docs/assets/GMView-TnIOhUsC.js b/docs/assets/GMView-TnIOhUsC.js deleted file mode 100644 index fbc9de2..0000000 --- a/docs/assets/GMView-TnIOhUsC.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as le}from"./useGameConfig-CVlwnWOp.js";import{a as ue,i as de,n as fe,r as pe,t as S}from"./SelectValue-B8Xyt9cq.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-BxX60NKB.js b/docs/assets/GalaxyView-BxX60NKB.js deleted file mode 100644 index c7fb184..0000000 --- a/docs/assets/GalaxyView-BxX60NKB.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as me}from"./AlertDialog-Bf_xgpJz.js";import{a as E,i as D,n as O,r as k,t as A}from"./SelectValue-B8Xyt9cq.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/GalaxyView-LGfalWWd.js b/docs/assets/GalaxyView-LGfalWWd.js deleted file mode 100644 index fcd2b05..0000000 --- a/docs/assets/GalaxyView-LGfalWWd.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./missileLogic-_46Nr-Ju.js","./game-logic-BBFCPVtv.js","./game-config-DRP-gbpS.js","./game-i18n-BC9uiVvf.js","./rolldown-runtime-CIDIeb-o.js"])))=>i.map(i=>d[i]); -import{En as e,On as t,Rn as n,Yn as r,ar as i,cn as a,cr as o,dn as s,dt as c,fn as l,kn as ee,ln as u,lt as te,on as d,pn as f,rn as p,rr as m,sn as h,un as g,wn as ne,xn as re}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import{a as ie,o as ae}from"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import{l as _}from"./vendor-others-Bce0hM6h.js";import{$ as v,K as y,X as b,Y as x}from"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{$ as oe,B as se,I as ce,L as le,N as ue,b as S,l as de,n as C,v as fe}from"./vendor-icons-Ccm2_GPI.js";import{t as pe}from"./TooltipProvider-Cspoy8HK.js";import{t as me}from"./CardDescription-DduF5EVY.js";import{g as w}from"./game-config-DRP-gbpS.js";import{$ as he,A as ge,B as T,D as E,E as _e,F as ve,H as D,I as ye,J as O,K as k,L as A,M as be,N as xe,O as Se,P as Ce,Q as we,R as j,S as Te,T as Ee,U as M,V as De,W as N,X as Oe,Y as P,Z as ke,d as Ae,f as je,j as Me,k as Ne,m as Pe,o as F,p as Fe,t as Ie,u as I,w as Le,z as L}from"./index-B4KMqZ_y.js";import{a as Re,i as ze,n as Be,r as Ve,t as He}from"./SelectValue-8cT4Hu-1.js";var Ue=f({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(t,{emit:r}){let i=t,o=r,s=v(_(i,`class`),o);return(r,o)=>(e(),a(m(y),null,{default:n(()=>[l(E),l(m(x),re({"data-slot":`dialog-content`},{...r.$attrs,...m(s)},{class:m(P)(`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-2xl`,i.class)}),{default:n(()=>[ee(r.$slots,`default`),t.showCloseButton?(e(),a(m(b),{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:n(()=>[l(m(C)),o[0]||=h(`span`,{class:`sr-only`},`Close`,-1)]),_:1})):u(``,!0)]),_:3},16,[`class`])]),_:3}))}}),We={class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},Ge={class:`text-2xl sm:text-3xl font-bold`},Ke={class:`space-y-2`},qe={class:`space-y-2`},Je={class:`space-y-1`},Ye={class:`px-2 py-1.5 text-xs font-semibold text-muted-foreground`},Xe={class:`flex items-start gap-2 w-full min-w-0`},Ze={class:`flex-1 min-w-0`},Qe={class:`flex items-center gap-1.5 mb-0.5`},$e={class:`truncate font-medium text-sm`},et={class:`text-[11px] text-muted-foreground`},tt={class:`space-y-1`},nt={class:`px-2 py-1.5 text-xs font-semibold text-muted-foreground`},rt={class:`flex items-start gap-2 w-full min-w-0`},it={class:`flex-1 min-w-0`},at={class:`truncate font-medium text-sm mb-0.5`},ot={class:`text-[11px] text-muted-foreground`},st={class:`space-y-2`},ct={class:`sm:hidden w-full space-y-2`},lt={class:`flex items-start gap-2 w-full`},ut={class:`w-8 text-center flex-shrink-0`},dt={class:`flex-1 min-w-0`},ft={key:0,class:`space-y-1`},pt={class:`flex items-center gap-1.5 min-w-0 flex-wrap`},mt={class:`font-semibold text-sm truncate`},ht={class:`text-xs text-muted-foreground whitespace-nowrap flex-shrink-0`},gt={class:`space-y-2`},_t={class:`text-xs font-semibold text-amber-700 dark:text-amber-400`},vt={class:`space-y-1 text-xs`},yt={class:`flex items-center gap-2`},bt={class:`text-muted-foreground`},xt={class:`font-medium`},St={class:`flex items-center gap-2`},Ct={class:`text-muted-foreground`},wt={class:`font-medium`},Tt={key:0,class:`text-xs`},Et={class:`text-muted-foreground`},Dt={key:1,class:`space-y-1`},Ot={class:`text-sm text-muted-foreground`},kt={class:`space-y-2`},At={class:`text-xs font-semibold text-amber-700 dark:text-amber-400`},jt={class:`space-y-1 text-xs`},Mt={class:`flex items-center gap-2`},Nt={class:`text-muted-foreground`},Pt={class:`font-medium`},Ft={class:`flex items-center gap-2`},It={class:`text-muted-foreground`},Lt={class:`font-medium`},Rt={class:`flex gap-1 pl-10`},zt={class:`hidden sm:flex items-center gap-4 flex-1 min-w-0`},Bt={class:`w-12 text-center flex-shrink-0`},Vt={class:`flex-1 min-w-0`},Ht={key:0,class:`space-y-1`},Ut={class:`flex items-center gap-2 flex-wrap`},Wt={class:`font-semibold text-base`},Gt={class:`space-y-2`},Kt={class:`text-xs font-semibold text-amber-700 dark:text-amber-400`},qt={class:`space-y-1 text-xs`},Jt={class:`flex items-center gap-2`},Yt={class:`text-muted-foreground`},Xt={class:`font-medium`},Zt={class:`flex items-center gap-2`},Qt={class:`text-muted-foreground`},$t={class:`font-medium`},en={class:`text-xs text-muted-foreground`},tn={key:0,class:`text-xs`},nn={class:`text-muted-foreground`},rn={key:1,class:`space-y-1`},an={class:`text-sm text-muted-foreground`},on={class:`space-y-2`},sn={class:`text-xs font-semibold text-amber-700 dark:text-amber-400`},cn={class:`space-y-1 text-xs`},ln={class:`flex items-center gap-2`},un={class:`text-muted-foreground`},dn={class:`font-medium`},fn={class:`flex items-center gap-2`},pn={class:`text-muted-foreground`},mn={class:`font-medium`},hn={class:`hidden sm:flex gap-1 sm:gap-2 flex-shrink-0`},gn={key:0,class:`space-y-4`},_n={class:`space-y-2`},vn={class:`text-sm text-muted-foreground`},yn={class:`space-y-2 text-sm`},bn={class:`flex justify-between`},xn={class:`text-muted-foreground`},Sn={class:`flex justify-between`},Cn={class:`text-muted-foreground`},wn={class:`flex justify-between`},Tn={class:`text-muted-foreground`},R=f({__name:`GalaxyView`,setup(ee){let f=he(),re=we(),_=ke(),v=ae(),y=ie(),{t:b}=Oe(),x=r(!1),C=r(``),E=r(``),P=r(null),R=r(!1),z=r(null),B=r(1),V=r(1),H=r(1),U=r(1),W=r(1),G=r(void 0),K=d(()=>G.value&&_.npcs.find(e=>e.id===G.value)||null),En=r([]),Dn=d(()=>f.player.planets.find(e=>!e.isMoon)),On=d(()=>f.player.planets.filter(e=>!e.isMoon)),kn=d(()=>f.currentPlanet?(f.currentPlanet.defense.interplanetaryMissile||0)>0:!1),An=d(()=>Dn.value?U.value===Dn.value.position.galaxy&&W.value===Dn.value.position.system:!1);ne(()=>{y.query.highlightNpc&&(G.value=y.query.highlightNpc);let e=y.query.galaxy?Number(y.query.galaxy):null,t=y.query.system?Number(y.query.system):null;e&&t?(U.value=e,W.value=t,V.value=e,H.value=t,J(),Mn()):f.currentPlanet&&(U.value=f.currentPlanet.position.galaxy,W.value=f.currentPlanet.position.system,V.value=U.value,H.value=W.value,J())});let jn=(e,t)=>c(e,t).map(n=>{let r=te(e,t,n.position),i=f.player.planets.find(r=>r.position.galaxy===e&&r.position.system===t&&r.position.position===n.position)||re.planets[r]||null;return{position:n.position,planet:i}}),q=(e,t,n)=>{let r=`debris_${e}_${t}_${n}`;return re.debrisFields[r]||null},Mn=()=>{(y.query.highlightNpc||y.query.galaxy||y.query.system)&&v.replace({query:{}})},J=()=>{U.value=V.value,W.value=H.value,En.value=jn(U.value,W.value)},Nn=e=>{U.value=e.position.galaxy,W.value=e.position.system,V.value=U.value,H.value=W.value,En.value=jn(U.value,W.value)},Y=e=>e?e.ownerId===f.player.id:!1,X=e=>{if(!e||!G.value)return!1;let t=_.npcs.find(e=>e.id===G.value);return t?t.planets.some(t=>t.id===e.id):!1},Pn=e=>!e||Y(e)?null:_.npcs.find(t=>t.planets.some(t=>t.position.galaxy===e.position.galaxy&&t.position.system===e.position.system&&t.position.position===e.position.position)),Z=e=>{let t=Pn(e);return t?f.player.diplomaticRelations?.[t.id]:null},Fn=e=>{let t=Z(e);if(!t)return`secondary`;switch(t.status){case w.Friendly:return`default`;case w.Hostile:return`destructive`;default:return`secondary`}},In=e=>{let t=Z(e);if(!t)return b(`diplomacy.status.neutral`);switch(t.status){case w.Friendly:return b(`diplomacy.status.friendly`);case w.Hostile:return b(`diplomacy.status.hostile`);default:return b(`diplomacy.status.neutral`)}},Q=e=>Z(e)?.reputation??null,Ln=e=>e===null?`text-muted-foreground`:e>=20?`text-green-600 dark:text-green-400`:e<=-20?`text-red-600 dark:text-red-400`:`text-muted-foreground`,Rn=e=>{f.currentPlanetId=e,v.push(`/`)},zn=()=>{P.value&&P.value(),x.value=!1},$=(e,t,n)=>{let r=e?e.position:{galaxy:U.value,system:W.value,position:n},i=`${r.galaxy}:${r.system}:${r.position}`,a=``,o=``;t===`spy`?(o=b(`galaxyView.scoutPlanetTitle`),a=b(`galaxyView.scoutPlanetMessage`).replace(`{coordinates}`,i)):t===`attack`?(o=b(`galaxyView.attackPlanetTitle`),a=b(`galaxyView.attackPlanetMessage`).replace(`{coordinates}`,i)):t===`colonize`?(o=b(`galaxyView.colonizePlanetTitle`),a=b(`galaxyView.colonizePlanetMessage`).replace(`{coordinates}`,i)):t===`recycle`?(o=b(`galaxyView.recyclePlanetTitle`),a=b(`galaxyView.recyclePlanetMessage`).replace(`{coordinates}`,i)):t===`gift`&&(o=b(`galaxyView.giftPlanetTitle`),a=b(`galaxyView.giftPlanetMessage`).replace(`{coordinates}`,i)),C.value=o,E.value=a,P.value=()=>{v.push({path:`/fleet`,query:{galaxy:r.galaxy,system:r.system,position:r.position,mission:t===`gift`?void 0:t,gift:t===`gift`?`1`:void 0}})},x.value=!0},Bn=e=>{z.value=e,B.value=1,R.value=!0},Vn=()=>{!z.value||!f.currentPlanet||Ie(()=>import(`./missileLogic-_46Nr-Ju.js`),__vite__mapDeps([0,1,2,3,4]),import.meta.url).then(e=>{let t=e.validateMissileLaunch(f.currentPlanet,z.value.position,B.value,f.player.technologies);if(!t.valid){C.value=b(`errors.launchFailed`),E.value=b(t.reason||`errors.unknown`),x.value=!0;return}let n=e.createMissileAttack(f.player.id,f.currentPlanet,z.value.position,z.value.id,B.value);e.executeMissileLaunch(f.currentPlanet,B.value),f.player.missileAttacks.push(n),R.value=!1,C.value=b(`common.success`),E.value=b(`galaxyView.missileLaunched`),x.value=!0})},Hn=()=>{let e=f.player.technologies.impulseDrive||0;return e===0?0:5*e-1},Un=e=>{if(!f.currentPlanet)return 0;let t=f.currentPlanet.position,n=e.position;return t.galaxy===n.galaxy?Math.abs(t.system-n.system):1/0},Wn=e=>{let t=30+e*60;return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`};return(r,c)=>(e(),g(`div`,We,[h(`h1`,Ge,o(m(b)(`galaxyView.title`)),1),l(m(Pe),null,{default:n(()=>[l(m(je),null,{default:n(()=>[l(m(Ae),null,{default:n(()=>[s(o(m(b)(`galaxyView.selectCoordinates`)),1)]),_:1})]),_:1}),l(m(Fe),null,{default:n(()=>[h(`div`,{class:i([`grid gap-3 sm:gap-4`,K.value?`grid-cols-2 sm:grid-cols-4`:An.value?`grid-cols-2`:`grid-cols-2 sm:grid-cols-3`])},[h(`div`,Ke,[l(m(I),{for:`select-galaxy`,class:`text-xs sm:text-sm`},{default:n(()=>[s(o(m(b)(`galaxyView.galaxy`)),1)]),_:1}),(e(),a(m(Re),{key:m(f).locale,"model-value":String(V.value),modal:!1,"onUpdate:modelValue":c[0]||=e=>{V.value=Number(e),J()}},{default:n(()=>[l(m(Be),{id:`select-galaxy`,class:`w-full`},{default:n(()=>[l(m(He),{placeholder:m(b)(`galaxyView.selectGalaxy`)},null,8,[`placeholder`])]),_:1}),l(m(ze),{position:`popper`},{default:n(()=>[(e(),g(p,null,t(9,e=>l(m(Ve),{key:e,value:String(e)},{default:n(()=>[s(o(m(b)(`galaxyView.galaxy`))+` `+o(e),1)]),_:2},1032,[`value`])),64))]),_:1})]),_:1},8,[`model-value`]))]),h(`div`,qe,[l(m(I),{for:`select-system`,class:`text-xs sm:text-sm`},{default:n(()=>[s(o(m(b)(`galaxyView.system`)),1)]),_:1}),(e(),a(m(Re),{key:`${m(f).locale}-system`,"model-value":String(H.value),modal:!1,"onUpdate:modelValue":c[1]||=e=>{H.value=Number(e),J()}},{default:n(()=>[l(m(Be),{id:`select-system`,class:`w-full`},{default:n(()=>[l(m(He),{placeholder:m(b)(`galaxyView.selectSystem`)},null,8,[`placeholder`])]),_:1}),l(m(ze),{position:`popper`},{default:n(()=>[(e(),g(p,null,t(10,e=>l(m(Ve),{key:e,value:String(e)},{default:n(()=>[s(o(m(b)(`galaxyView.system`))+` `+o(e),1)]),_:2},1032,[`value`])),64))]),_:1})]),_:1},8,[`model-value`]))]),An.value?u(``,!0):(e(),g(`div`,{key:0,class:i([K.value?``:`col-span-2 sm:col-span-1`,`space-y-2`])},[l(m(I),{class:`text-xs sm:text-sm opacity-0`},{default:n(()=>[s(o(m(b)(`galaxyView.myPlanets`)),1)]),_:1}),l(m(N),null,{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(O),{variant:`outline`,class:`w-full`},{default:n(()=>[l(m(ue),{class:`h-4 w-4 mr-2`}),s(` `+o(m(b)(`galaxyView.myPlanets`)),1)]),_:1})]),_:1}),l(m(M),{class:`w-72 p-2`,align:`start`},{default:n(()=>[h(`div`,Je,[h(`div`,Ye,o(m(b)(`galaxyView.selectPlanetToView`)),1),(e(!0),g(p,null,t(On.value,t=>(e(),a(m(O),{key:t.id,onClick:e=>Nn(t),disabled:t.position.galaxy===U.value&&t.position.system===W.value,variant:`ghost`,class:i([`w-full justify-start h-auto py-2 px-2 text-left`,t.position.galaxy===U.value&&t.position.system===W.value&&`bg-blue-100 dark:bg-blue-950/50 border border-blue-400 dark:border-blue-600`]),size:`sm`},{default:n(()=>[h(`div`,Xe,[l(m(ce),{class:`h-4 w-4 flex-shrink-0 mt-0.5`}),h(`div`,Ze,[h(`div`,Qe,[h(`span`,$e,o(t.name),1),t.isMoon?(e(),a(m(k),{key:0,variant:`outline`,class:`text-[10px] px-1 py-0 h-4`},{default:n(()=>[s(o(m(b)(`planet.moon`)),1)]),_:1})):u(``,!0)]),h(`div`,et,` [`+o(t.position.galaxy)+`:`+o(t.position.system)+`:`+o(t.position.position)+`] `,1)])])]),_:2},1032,[`onClick`,`disabled`,`class`]))),128))])]),_:1})]),_:1})],2)),K.value?(e(),g(`div`,{key:1,class:i([An.value?`col-span-2 sm:col-span-2`:``,`space-y-2`])},[l(m(I),{class:`text-xs sm:text-sm opacity-0`},{default:n(()=>[s(o(m(b)(`galaxyView.npcPlanets`)),1)]),_:1}),l(m(N),null,{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(O),{variant:`outline`,class:`w-full border-yellow-400 dark:border-yellow-600`},{default:n(()=>[l(m(ce),{class:`h-4 w-4 mr-2`}),s(` `+o(K.value.name)+` (`+o(K.value.planets.length)+`) `,1)]),_:1})]),_:1}),l(m(M),{class:`w-72 p-2`,align:`start`},{default:n(()=>[h(`div`,tt,[h(`div`,nt,o(m(b)(`galaxyView.selectPlanetToView`)),1),(e(!0),g(p,null,t(K.value.planets,t=>(e(),a(m(O),{key:t.id,onClick:e=>Nn(t),disabled:t.position.galaxy===U.value&&t.position.system===W.value,variant:`ghost`,class:i([`w-full justify-start h-auto py-2 px-2 text-left`,t.position.galaxy===U.value&&t.position.system===W.value&&`bg-yellow-100 dark:bg-yellow-950/50 border border-yellow-400 dark:border-yellow-600`]),size:`sm`},{default:n(()=>[h(`div`,rt,[l(m(ce),{class:`h-4 w-4 flex-shrink-0 mt-0.5`}),h(`div`,it,[h(`div`,at,o(t.name),1),h(`div`,ot,` [`+o(t.position.galaxy)+`:`+o(t.position.system)+`:`+o(t.position.position)+`] `,1)])])]),_:2},1032,[`onClick`,`disabled`,`class`]))),128))])]),_:1})]),_:1})],2)):u(``,!0)],2)]),_:1})]),_:1}),l(m(Pe),null,{default:n(()=>[l(m(je),null,{default:n(()=>[l(m(Ae),null,{default:n(()=>[s(o(m(b)(`galaxyView.galaxy`))+` `+o(U.value)+`:`+o(W.value),1)]),_:1}),l(m(me),null,{default:n(()=>[s(o(m(b)(`galaxyView.totalPositions`)),1)]),_:1})]),_:1}),l(m(Fe),null,{default:n(()=>[h(`div`,st,[(e(!0),g(p,null,t(En.value,t=>(e(),g(`div`,{key:t.position,class:i([`flex flex-col sm:flex-row sm:items-center gap-2 sm:gap-4 p-2 sm:p-3 border rounded-lg hover:bg-muted/50 transition-colors`,{"bg-muted/30":!t.planet,"bg-blue-50 dark:bg-blue-950 border-blue-300 dark:border-blue-700":t.planet&&Y(t.planet),"bg-yellow-50 dark:bg-yellow-950/30 border-yellow-400 dark:border-yellow-600 ring-2 ring-yellow-400 dark:ring-yellow-500":t.planet&&X(t.planet)&&!Y(t.planet),"bg-green-50 dark:bg-green-950/30 border-green-300 dark:border-green-700":t.planet&&!Y(t.planet)&&!X(t.planet)&&Z(t.planet)?.status===m(w).Friendly,"bg-red-50 dark:bg-red-950/30 border-red-300 dark:border-red-700":t.planet&&!Y(t.planet)&&!X(t.planet)&&Z(t.planet)?.status===m(w).Hostile,"bg-gray-50 dark:bg-gray-950/30 border-gray-300 dark:border-gray-700":t.planet&&!Y(t.planet)&&!X(t.planet)&&Pn(t.planet)&&(!Z(t.planet)||Z(t.planet)?.status===m(w).Neutral)}])},[h(`div`,ct,[h(`div`,lt,[h(`div`,ut,[l(m(k),{variant:`outline`,class:`text-xs`},{default:n(()=>[s(o(t.position),1)]),_:2},1024)]),h(`div`,dt,[t.planet?(e(),g(`div`,ft,[h(`div`,pt,[h(`h3`,mt,o(t.planet.name),1),h(`span`,ht,` [`+o(t.planet.position.galaxy)+`:`+o(t.planet.position.system)+`:`+o(t.planet.position.position)+`] `,1),Y(t.planet)?(e(),a(m(k),{key:0,variant:`default`,class:`text-xs flex-shrink-0`},{default:n(()=>[s(o(m(b)(`galaxyView.mine`)),1)]),_:1})):(e(),a(m(k),{key:1,variant:Fn(t.planet),class:`text-xs flex-shrink-0`},{default:n(()=>[s(o(In(t.planet)),1)]),_:2},1032,[`variant`])),q(U.value,W.value,t.position)?(e(),a(m(N),{key:2},{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(k),{variant:`outline`,class:`text-xs cursor-pointer hover:bg-amber-50 dark:hover:bg-amber-950/30 border-amber-300 dark:border-amber-700 text-amber-700 dark:text-amber-400 gap-1`},{default:n(()=>[l(m(S),{class:`h-3 w-3`})]),_:1})]),_:1}),l(m(M),{class:`w-auto p-3`,side:`top`,align:`start`},{default:n(()=>[h(`div`,gt,[h(`p`,_t,o(m(b)(`galaxyView.debrisField`)),1),h(`div`,vt,[h(`div`,yt,[l(A,{type:`metal`,size:`sm`}),h(`span`,bt,o(m(b)(`resources.metal`))+`:`,1),h(`span`,xt,o(m(F)(q(U.value,W.value,t.position).resources.metal)),1)]),h(`div`,St,[l(A,{type:`crystal`,size:`sm`}),h(`span`,Ct,o(m(b)(`resources.crystal`))+`:`,1),h(`span`,wt,o(m(F)(q(U.value,W.value,t.position).resources.crystal)),1)])])])]),_:2},1024)]),_:2},1024)):u(``,!0)]),!Y(t.planet)&&Q(t.planet)!==null?(e(),g(`div`,Tt,[h(`span`,Et,o(m(b)(`diplomacy.reputation`))+`:`,1),h(`span`,{class:i([`ml-1 font-semibold`,Ln(Q(t.planet))])},o(Q(t.planet)>0?`+`:``)+o(Q(t.planet)),3)])):u(``,!0)])):(e(),g(`div`,Dt,[h(`div`,Ot,o(m(b)(`galaxyView.emptySlot`)),1),q(U.value,W.value,t.position)?(e(),a(m(N),{key:0},{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(k),{variant:`outline`,class:`text-xs cursor-pointer hover:bg-amber-50 dark:hover:bg-amber-950/30 border-amber-300 dark:border-amber-700 text-amber-700 dark:text-amber-400 gap-1 inline-flex`},{default:n(()=>[l(m(S),{class:`h-3 w-3`}),h(`span`,null,o(m(b)(`galaxyView.debris`)),1)]),_:1})]),_:1}),l(m(M),{class:`w-auto p-3`,side:`top`,align:`start`},{default:n(()=>[h(`div`,kt,[h(`p`,At,o(m(b)(`galaxyView.debrisField`)),1),h(`div`,jt,[h(`div`,Mt,[l(A,{type:`metal`,size:`sm`}),h(`span`,Nt,o(m(b)(`resources.metal`))+`:`,1),h(`span`,Pt,o(m(F)(q(U.value,W.value,t.position).resources.metal)),1)]),h(`div`,Ft,[l(A,{type:`crystal`,size:`sm`}),h(`span`,It,o(m(b)(`resources.crystal`))+`:`,1),h(`span`,Lt,o(m(F)(q(U.value,W.value,t.position).resources.crystal)),1)])])])]),_:2},1024)]),_:2},1024)):u(``,!0)]))])]),h(`div`,Rt,[l(m(pe),{"delay-duration":300},{default:n(()=>[t.planet&&!Y(t.planet)?(e(),a(m(T),{key:0},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`spy`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(se),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.scout`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)?(e(),a(m(T),{key:1},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`attack`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(de),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.attack`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)&&kn.value?(e(),a(m(T),{key:2},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>Bn(t.planet),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(oe),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.missileAttack`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)&&Pn(t.planet)?(e(),a(m(T),{key:3},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`gift`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(le),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.sendGift`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet?u(``,!0):(e(),a(m(T),{key:4},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(null,`colonize`,t.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(fe),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.colonize`)),1)]),_:1})]),_:2},1024)),t.planet&&Y(t.planet)?(e(),a(m(T),{key:5},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>Rn(t.planet.id),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(ue),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.switch`)),1)]),_:1})]),_:2},1024)):u(``,!0),q(U.value,W.value,t.position)?(e(),a(m(T),{key:6},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`recycle`,t.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(S),{class:`h-3 w-3`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.recycle`)),1)]),_:1})]),_:2},1024)):u(``,!0)]),_:2},1024)])]),h(`div`,zt,[h(`div`,Bt,[l(m(k),{variant:`outline`,class:`text-sm`},{default:n(()=>[s(o(t.position),1)]),_:2},1024)]),h(`div`,Vt,[t.planet?(e(),g(`div`,Ht,[h(`div`,Ut,[h(`h3`,Wt,o(t.planet.name),1),Y(t.planet)?(e(),a(m(k),{key:0,variant:`default`,class:`text-xs`},{default:n(()=>[s(o(m(b)(`galaxyView.mine`)),1)]),_:1})):(e(),a(m(k),{key:1,variant:Fn(t.planet),class:`text-xs`},{default:n(()=>[s(o(In(t.planet)),1)]),_:2},1032,[`variant`])),q(U.value,W.value,t.position)?(e(),a(m(N),{key:2},{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(k),{variant:`outline`,class:`text-xs cursor-pointer hover:bg-amber-50 dark:hover:bg-amber-950/30 border-amber-300 dark:border-amber-700 text-amber-700 dark:text-amber-400 gap-1`},{default:n(()=>[l(m(S),{class:`h-3 w-3`}),h(`span`,null,o(m(b)(`galaxyView.debris`)),1)]),_:1})]),_:1}),l(m(M),{class:`w-auto p-3`,side:`top`,align:`start`},{default:n(()=>[h(`div`,Gt,[h(`p`,Kt,o(m(b)(`galaxyView.debrisField`)),1),h(`div`,qt,[h(`div`,Jt,[l(A,{type:`metal`,size:`sm`}),h(`span`,Yt,o(m(b)(`resources.metal`))+`:`,1),h(`span`,Xt,o(m(F)(q(U.value,W.value,t.position).resources.metal)),1)]),h(`div`,Zt,[l(A,{type:`crystal`,size:`sm`}),h(`span`,Qt,o(m(b)(`resources.crystal`))+`:`,1),h(`span`,$t,o(m(F)(q(U.value,W.value,t.position).resources.crystal)),1)])])])]),_:2},1024)]),_:2},1024)):u(``,!0)]),h(`p`,en,` [`+o(t.planet.position.galaxy)+`:`+o(t.planet.position.system)+`:`+o(t.planet.position.position)+`] `,1),!Y(t.planet)&&Q(t.planet)!==null?(e(),g(`div`,tn,[h(`span`,nn,o(m(b)(`diplomacy.reputation`))+`:`,1),h(`span`,{class:i([`ml-1 font-semibold`,Ln(Q(t.planet))])},o(Q(t.planet)>0?`+`:``)+o(Q(t.planet)),3)])):u(``,!0)])):(e(),g(`div`,rn,[h(`div`,an,o(m(b)(`galaxyView.emptySlot`)),1),q(U.value,W.value,t.position)?(e(),a(m(N),{key:0},{default:n(()=>[l(m(D),{"as-child":``},{default:n(()=>[l(m(k),{variant:`outline`,class:`text-xs cursor-pointer hover:bg-amber-50 dark:hover:bg-amber-950/30 border-amber-300 dark:border-amber-700 text-amber-700 dark:text-amber-400 gap-1 inline-flex`},{default:n(()=>[l(m(S),{class:`h-3 w-3`}),h(`span`,null,o(m(b)(`galaxyView.debris`)),1)]),_:1})]),_:1}),l(m(M),{class:`w-auto p-3`,side:`top`,align:`start`},{default:n(()=>[h(`div`,on,[h(`p`,sn,o(m(b)(`galaxyView.debrisField`)),1),h(`div`,cn,[h(`div`,ln,[l(A,{type:`metal`,size:`sm`}),h(`span`,un,o(m(b)(`resources.metal`))+`:`,1),h(`span`,dn,o(m(F)(q(U.value,W.value,t.position).resources.metal)),1)]),h(`div`,fn,[l(A,{type:`crystal`,size:`sm`}),h(`span`,pn,o(m(b)(`resources.crystal`))+`:`,1),h(`span`,mn,o(m(F)(q(U.value,W.value,t.position).resources.crystal)),1)])])])]),_:2},1024)]),_:2},1024)):u(``,!0)]))])]),h(`div`,hn,[l(m(pe),{"delay-duration":300},{default:n(()=>[t.planet&&!Y(t.planet)?(e(),a(m(T),{key:0},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`spy`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(se),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.scout`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)?(e(),a(m(T),{key:1},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`attack`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(de),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.attack`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)&&kn.value?(e(),a(m(T),{key:2},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>Bn(t.planet),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(oe),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.missileAttack`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet&&!Y(t.planet)&&Pn(t.planet)?(e(),a(m(T),{key:3},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`gift`),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(le),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.sendGift`)),1)]),_:1})]),_:2},1024)):u(``,!0),t.planet?u(``,!0):(e(),a(m(T),{key:4},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(null,`colonize`,t.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(fe),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.colonize`)),1)]),_:1})]),_:2},1024)),t.planet&&Y(t.planet)?(e(),a(m(T),{key:5},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>Rn(t.planet.id),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(ue),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.switch`)),1)]),_:1})]),_:2},1024)):u(``,!0),q(U.value,W.value,t.position)?(e(),a(m(T),{key:6},{default:n(()=>[l(m(j),{"as-child":``},{default:n(()=>[l(m(O),{onClick:e=>$(t.planet,`recycle`,t.position),variant:`outline`,size:`sm`,class:`h-8 w-8 p-0`},{default:n(()=>[l(m(S),{class:`h-3 w-3 sm:h-4 sm:w-4`})]),_:1},8,[`onClick`])]),_:2},1024),l(m(L),null,{default:n(()=>[h(`p`,null,o(m(b)(`galaxyView.recycle`)),1)]),_:1})]),_:2},1024)):u(``,!0)]),_:2},1024)])],2))),128))])]),_:1})]),_:1}),l(m(Se),{open:R.value,"onUpdate:open":c[4]||=e=>R.value=e},{default:n(()=>[l(m(Ue),null,{default:n(()=>[l(m(Le),null,{default:n(()=>[l(m(Te),null,{default:n(()=>[s(o(m(b)(`galaxyView.missileAttackTitle`)),1)]),_:1}),z.value?(e(),a(m(_e),{key:0},{default:n(()=>[s(o(m(b)(`galaxyView.missileAttackMessage`).replace(`{coordinates}`,`${z.value.position.galaxy}:${z.value.position.system}:${z.value.position.position}`)),1)]),_:1})):u(``,!0)]),_:1}),m(f).currentPlanet&&z.value?(e(),g(`div`,gn,[h(`div`,_n,[l(m(I),null,{default:n(()=>[s(o(m(b)(`galaxyView.missileCount`)),1)]),_:1}),l(m(De),{modelValue:B.value,"onUpdate:modelValue":c[2]||=e=>B.value=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:m(f).currentPlanet.defense.interplanetaryMissile||0},null,8,[`modelValue`,`max`]),h(`p`,vn,o(m(b)(`galaxyView.availableMissiles`))+`: `+o(m(f).currentPlanet.defense.interplanetaryMissile||0),1)]),h(`div`,yn,[h(`div`,bn,[h(`span`,xn,o(m(b)(`galaxyView.missileRange`))+`:`,1),h(`span`,null,o(Hn())+` `+o(m(b)(`galaxyView.systems`)),1)]),h(`div`,Sn,[h(`span`,Cn,o(m(b)(`galaxyView.distance`))+`:`,1),h(`span`,null,o(Un(z.value))+` `+o(m(b)(`galaxyView.systems`)),1)]),h(`div`,wn,[h(`span`,Tn,o(m(b)(`galaxyView.flightTime`))+`:`,1),h(`span`,null,o(Wn(Un(z.value))),1)])])])):u(``,!0),l(m(Ee),null,{default:n(()=>[l(m(O),{variant:`outline`,onClick:c[3]||=e=>R.value=!1},{default:n(()=>[s(o(m(b)(`galaxyView.cancel`)),1)]),_:1}),l(m(O),{onClick:Vn},{default:n(()=>[s(o(m(b)(`galaxyView.launchMissile`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),l(m(ye),{open:x.value,"onUpdate:open":c[5]||=e=>x.value=e},{default:n(()=>[l(m(xe),null,{default:n(()=>[l(m(ge),null,{default:n(()=>[l(m(Ne),null,{default:n(()=>[s(o(C.value),1)]),_:1}),l(m(be),{class:`whitespace-pre-line`},{default:n(()=>[s(o(E.value),1)]),_:1})]),_:1}),l(m(Me),null,{default:n(()=>[l(m(Ce),null,{default:n(()=>[s(o(m(b)(`common.cancel`)),1)]),_:1}),l(m(ve),{onClick:zn},{default:n(()=>[s(o(m(b)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{R as default}; \ No newline at end of file diff --git a/docs/assets/MessagesView-D8V3gkqX.js b/docs/assets/MessagesView-D8V3gkqX.js deleted file mode 100644 index 07c0246..0000000 --- a/docs/assets/MessagesView-D8V3gkqX.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as R}from"./useGameConfig-CVlwnWOp.js";import{t as z}from"./BattleReportDialog-BxeTjW1s.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/MessagesView-w53RKU-r.js b/docs/assets/MessagesView-w53RKU-r.js deleted file mode 100644 index b1196a3..0000000 --- a/docs/assets/MessagesView-w53RKU-r.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,En as t,Fn as n,On as r,Rn as i,V as a,W as o,Yn as s,ar as c,cn as l,cr as u,dn as d,fn as f,ln as p,on as m,pn as h,rn as g,rr as _,sn as v,tn as y,un as b}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{B as x,L as S,Z as C,b as ee,et as te,i as ne,l as w,n as T,s as re,w as E}from"./vendor-icons-Ccm2_GPI.js";import"./TooltipProvider-Cspoy8HK.js";import{t as D}from"./CardDescription-DduF5EVY.js";import{m as O}from"./game-config-DRP-gbpS.js";import{$ as ie,C as k,E as A,J as j,K as M,L as N,O as P,S as F,X as I,Z as ae,a as L,d as R,f as z,m as B,o as V,p as H,w as U}from"./index-B4KMqZ_y.js";import{t as W}from"./useGameConfig-DLqfPHtW.js";import{i as oe,n as se,r as G,t as ce}from"./TabsTrigger-BnZOhHbD.js";import{t as le}from"./BattleReportDialog-BNULWr3T.js";var K={key:0,class:`space-y-4`},q={class:`p-3 bg-muted rounded-lg`},J={class:`text-sm font-medium mb-2`},Y={class:`text-xs text-muted-foreground`},X={class:`text-sm font-medium mb-2`},ue={class:`flex flex-wrap gap-3 text-xs sm:text-sm`},de={class:`flex items-center gap-1`},fe={class:`flex items-center gap-1`},pe={class:`flex items-center gap-1`},me={class:`flex items-center gap-1`},he={key:0},ge={class:`text-sm font-medium mb-2`},_e={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},ve={class:`text-muted-foreground`},Z={class:`ml-1 font-medium`},Q={key:1},$={class:`text-sm font-medium mb-2`},ye={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},be={key:0,class:`block`},xe={class:`text-muted-foreground`},Se={class:`ml-1 font-medium`},Ce={key:2},we={class:`text-sm font-medium mb-2`},Te={class:`grid grid-cols-2 sm:grid-cols-3 gap-2 text-xs sm:text-sm`},Ee={class:`text-muted-foreground`},De={class:`ml-1 font-medium`},Oe=h({__name:`SpyReportDialog`,props:{report:{},open:{type:Boolean}},emits:[`update:open`],setup(e,{emit:a}){let o=e,c=a,{t:m}=I(),{SHIPS:h,DEFENSES:y,BUILDINGS:S}=W(),C=s(o.open);n(()=>o.open,e=>{C.value=e}),n(C,e=>{c(`update:open`,e)});let ee=e=>e?Object.values(e).some(e=>e>0):!1;return(n,a)=>(t(),l(_(P),{open:C.value,"onUpdate:open":a[0]||=e=>C.value=e},{default:i(()=>[f(_(k),{"container-class":`sm:max-w-2xl max-h-[90vh]`},{header:i(()=>[f(_(U),null,{default:i(()=>[f(_(F),{class:`flex items-center gap-2`},{default:i(()=>[f(_(x),{class:`h-5 w-5`}),d(` `+u(_(m)(`messagesView.spyReport`)),1)]),_:1}),e.report?(t(),l(_(A),{key:0},{default:i(()=>[d(u(_(L)(e.report.timestamp)),1)]),_:1})):p(``,!0)]),_:1})]),default:i(()=>[e.report?(t(),b(`div`,K,[v(`div`,q,[v(`p`,J,u(_(m)(`messagesView.targetPlanet`)),1),v(`p`,Y,u(e.report.targetPlanetName)+` [`+u(e.report.targetPosition.galaxy)+`:`+u(e.report.targetPosition.system)+`:`+u(e.report.targetPosition.position)+`] `,1)]),v(`div`,null,[v(`p`,X,u(_(m)(`messagesView.resources`))+`:`,1),v(`div`,ue,[v(`span`,de,[f(N,{type:`metal`,size:`sm`}),d(` `+u(_(V)(e.report.resources.metal)),1)]),v(`span`,fe,[f(N,{type:`crystal`,size:`sm`}),d(` `+u(_(V)(e.report.resources.crystal)),1)]),v(`span`,pe,[f(N,{type:`deuterium`,size:`sm`}),d(` `+u(_(V)(e.report.resources.deuterium)),1)]),v(`span`,me,[f(N,{type:`darkMatter`,size:`sm`}),d(` `+u(_(V)(e.report.resources.darkMatter)),1)])])]),e.report.fleet&&Object.keys(e.report.fleet).length>0?(t(),b(`div`,he,[v(`p`,ge,u(_(m)(`messagesView.fleet`))+`:`,1),v(`div`,_e,[(t(!0),b(g,null,r(e.report.fleet,(e,n)=>(t(),b(`div`,{key:n},[v(`span`,ve,u(_(h)[n].name)+`:`,1),v(`span`,Z,u(e),1)]))),128))])])):p(``,!0),e.report.defense&&ee(e.report.defense)?(t(),b(`div`,Q,[v(`p`,$,u(_(m)(`messagesView.defense`))+`:`,1),v(`div`,ye,[(t(!0),b(g,null,r(e.report.defense,(e,n)=>(t(),b(`div`,{key:n},[e&&e>0?(t(),b(`span`,be,[v(`span`,xe,u(_(y)[n].name)+`:`,1),v(`span`,Se,u(e),1)])):p(``,!0)]))),128))])])):p(``,!0),e.report.buildings&&Object.keys(e.report.buildings).length>0?(t(),b(`div`,Ce,[v(`p`,we,u(_(m)(`messagesView.buildings`))+`:`,1),v(`div`,Te,[(t(!0),b(g,null,r(e.report.buildings,(e,n)=>(t(),b(`div`,{key:n},[v(`span`,Ee,u(_(S)[n].name)+`:`,1),v(`span`,De,`Lv.`+u(e),1)]))),128))])])):p(``,!0)])):p(``,!0)]),_:1})]),_:1},8,[`open`]))}}),ke={class:`container mx-auto p-4 sm:p-6 space-y-6`},Ae={class:`text-2xl sm:text-3xl font-bold`},je={class:`text-xs sm:text-sm truncate`},Me={class:`flex justify-between items-center gap-2`},Ne={class:`flex items-center gap-2 min-w-0 flex-1`},Pe={class:`flex justify-between items-center gap-2`},Fe={class:`flex items-center gap-2 min-w-0 flex-1`},Ie={class:`flex justify-between items-center gap-2`},Le={class:`flex items-center gap-2 min-w-0 flex-1`},Re={class:`flex justify-between items-center gap-2`},ze={class:`flex items-center gap-2 min-w-0 flex-1`},Be={class:`flex justify-between items-center gap-2`},Ve={class:`flex items-center gap-2 min-w-0 flex-1`},He={class:`space-y-3`},Ue={class:`text-sm`},We={class:`font-semibold mb-1`},Ge={class:`grid grid-cols-3 gap-2`},Ke={key:0},qe={key:1},Je={key:2},Ye={class:`text-xs text-muted-foreground`},Xe={class:`text-green-600`},Ze={class:`flex gap-2`},Qe={class:`flex justify-between items-center gap-2`},$e={class:`flex items-center gap-2 min-w-0 flex-1`},et={class:`space-y-2`},tt={class:`text-sm`},nt={class:`font-semibold mb-1`},rt={class:`grid grid-cols-3 gap-2`},it={key:0},at={key:1},ot={key:2},st={class:`text-xs text-muted-foreground`},ct={class:`text-xs text-muted-foreground`},lt={class:`flex justify-between items-center gap-2`},ut={class:`flex items-center gap-2 min-w-0 flex-1`},dt=h({__name:`MessagesView`,setup(n){let h=ie(),k=ae(),{t:A}=I(),N=s(`battles`),P=s(!1),F=s(!1),V=s(null),U=s(null),W=m(()=>[...h.player.battleReports].sort((e,t)=>t.timestamp-e.timestamp)),K=m(()=>[...h.player.spyReports].sort((e,t)=>t.timestamp-e.timestamp)),q=m(()=>h.player.spiedNotifications?[...h.player.spiedNotifications].sort((e,t)=>t.timestamp-e.timestamp):[]),J=m(()=>h.player.missionReports?[...h.player.missionReports].sort((e,t)=>t.timestamp-e.timestamp):[]),Y=m(()=>h.player.npcActivityNotifications?[...h.player.npcActivityNotifications].sort((e,t)=>t.timestamp-e.timestamp):[]),X=m(()=>h.player.battleReports.filter(e=>!e.read).length),ue=m(()=>h.player.spyReports.filter(e=>!e.read).length),de=m(()=>h.player.spiedNotifications?h.player.spiedNotifications.filter(e=>!e.read).length:0),fe=m(()=>h.player.npcActivityNotifications?h.player.npcActivityNotifications.filter(e=>!e.read).length:0),pe=m(()=>h.player.missionReports?h.player.missionReports.filter(e=>!e.read).length:0),me=m(()=>h.player.giftNotifications?h.player.giftNotifications.filter(e=>!e.read).length:0),he=m(()=>h.player.giftRejectedNotifications?h.player.giftRejectedNotifications.filter(e=>!e.read).length:0),ge=m(()=>ue.value+de.value),_e=m(()=>fe.value+me.value+he.value),ve=m(()=>[{value:`battles`,icon:w,label:A(`messagesView.battles`),unreadCount:X.value},{value:`spy`,icon:x,label:A(`messagesView.spy`),unreadCount:ge.value},{value:`missions`,icon:E,label:A(`messagesView.missions`),unreadCount:pe.value},{value:`npc`,icon:ne,label:A(`messagesView.npc`),unreadCount:_e.value}]),Z=m(()=>h.player.giftNotifications?[...h.player.giftNotifications].sort((e,t)=>t.timestamp-e.timestamp):[]),Q=m(()=>h.player.giftRejectedNotifications?[...h.player.giftRejectedNotifications].sort((e,t)=>t.timestamp-e.timestamp):[]),$=e=>e.winner===`draw`?`secondary`:(e.attackerId===h.player.id?e.winner===`attacker`:e.winner===`defender`)?`default`:`destructive`,ye=e=>e.winner===`draw`?A(`messagesView.draw`):(e.attackerId===h.player.id?e.winner===`attacker`:e.winner===`defender`)?A(`messagesView.victory`):A(`messagesView.defeat`),be=e=>{V.value=e,P.value=!0,e.read||=!0},xe=e=>{U.value=e,F.value=!0,e.read||=!0},Se=e=>{e.read||=!0},Ce=e=>{let t=h.player.battleReports.findIndex(t=>t.id===e);t>-1&&h.player.battleReports.splice(t,1)},we=e=>{let t=h.player.spyReports.findIndex(t=>t.id===e);t>-1&&h.player.spyReports.splice(t,1)},Te=e=>{if(!h.player.spiedNotifications)return;let t=h.player.spiedNotifications.findIndex(t=>t.id===e);t>-1&&h.player.spiedNotifications.splice(t,1)},Ee=e=>{e.read||=!0},De=e=>{if(!h.player.npcActivityNotifications)return;let t=h.player.npcActivityNotifications.findIndex(t=>t.id===e);t>-1&&h.player.npcActivityNotifications.splice(t,1)},dt=e=>({[O.Transport]:A(`fleetView.transport`),[O.Colonize]:A(`fleetView.colonize`),[O.Deploy]:A(`fleetView.deploy`),[O.Recycle]:A(`fleetView.recycle`),[O.Destroy]:A(`fleetView.destroy`),[O.MissileAttack]:A(`galaxyView.missileAttack`)})[e]||e,ft=e=>{e.read||=!0},pt=e=>{if(!h.player.missionReports)return;let t=h.player.missionReports.findIndex(t=>t.id===e);t>-1&&h.player.missionReports.splice(t,1)},mt=e=>{e.read||=!0},ht=e=>{let t=k.npcs.find(t=>t.id===e.fromNpcId);t&&a(h.player,t,e,h.locale)},gt=e=>{let t=k.npcs.find(t=>t.id===e.fromNpcId);t&&o(h.player,t,e,h.locale)},_t=e=>{if(!h.player.giftNotifications)return;let t=h.player.giftNotifications.findIndex(t=>t.id===e);t>-1&&h.player.giftNotifications.splice(t,1)},vt=e=>{e.read||=!0},yt=e=>{if(!h.player.giftRejectedNotifications)return;let t=h.player.giftRejectedNotifications.findIndex(t=>t.id===e);t>-1&&h.player.giftRejectedNotifications.splice(t,1)};return(n,a)=>(t(),b(`div`,ke,[v(`h1`,Ae,u(_(A)(`messagesView.title`)),1),f(_(oe),{modelValue:N.value,"onUpdate:modelValue":a[0]||=e=>N.value=e,class:`w-full`},{default:i(()=>[f(_(se),{class:`grid w-full grid-cols-2 sm:grid-cols-4`,"tab-count":4},{default:i(()=>[(t(!0),b(g,null,r(ve.value,n=>(t(),l(_(ce),{key:n.value,value:n.value,class:`flex items-center justify-center gap-1 px-2`},{default:i(()=>[(t(),l(e(n.icon),{class:`h-3 w-3 sm:h-4 sm:w-4`})),v(`span`,je,u(n.label),1),n.unreadCount>0?(t(),l(_(M),{key:0,variant:`destructive`,class:`hidden sm:flex ml-1`},{default:i(()=>[d(u(n.unreadCount),1)]),_:2},1024)):p(``,!0)]),_:2},1032,[`value`]))),128))]),_:1}),f(_(G),{value:`battles`,class:`mt-4 space-y-2`},{default:i(()=>[_(h).player.battleReports.length===0?(t(),l(_(B),{key:0},{default:i(()=>[f(_(H),{class:`py-8 text-center text-muted-foreground`},{default:i(()=>[d(u(_(A)(`messagesView.noBattleReports`)),1)]),_:1})]),_:1})):p(``,!0),(t(!0),b(g,null,r(W.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>be(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Me,[v(`div`,Ne,[f(_(w),{class:`h-4 w-4 flex-shrink-0`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.battleReport`)),1)]),_:1}),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1})),f(_(M),{variant:$(e),class:`text-xs`},{default:i(()=>[d(u(ye(e)),1)]),_:2},1032,[`variant`])]),f(_(j),{onClick:y(t=>Ce(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1}),f(_(G),{value:`spy`,class:`mt-4 space-y-2`},{default:i(()=>[_(h).player.spyReports.length===0&&q.value.length===0?(t(),l(_(B),{key:0},{default:i(()=>[f(_(H),{class:`py-8 text-center text-muted-foreground`},{default:i(()=>[d(u(_(A)(`messagesView.noSpyReports`)),1)]),_:1})]),_:1})):p(``,!0),(t(!0),b(g,null,r(K.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>xe(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Pe,[v(`div`,Fe,[f(_(x),{class:`h-4 w-4 flex-shrink-0`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.spyReport`)),1)]),_:1}),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1})),f(_(M),{variant:`outline`,class:`text-xs`},{default:i(()=>[d(u(e.targetPlanetId),1)]),_:2},1024)]),f(_(j),{onClick:y(t=>we(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128)),(t(!0),b(g,null,r(q.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>Se(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Ie,[v(`div`,Le,[f(_(re),{class:`h-4 w-4 flex-shrink-0 text-destructive`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.spiedNotification`)),1)]),_:1}),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1})),f(_(M),{variant:e.detectionSuccess?`destructive`:`secondary`,class:`text-xs`},{default:i(()=>[d(u(e.detectionSuccess?_(A)(`messagesView.detected`):_(A)(`messagesView.undetected`)),1)]),_:2},1032,[`variant`])]),f(_(j),{onClick:y(t=>Te(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(e.npcName)+` → `+u(e.targetPlanetName)+` · `+u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1}),f(_(G),{value:`npc`,class:`mt-4 space-y-2`},{default:i(()=>[Y.value.length===0&&Z.value.length===0&&Q.value.length===0?(t(),l(_(B),{key:0},{default:i(()=>[f(_(H),{class:`py-8 text-center text-muted-foreground`},{default:i(()=>[d(u(_(A)(`messagesView.noNPCActivity`)),1)]),_:1})]),_:1})):p(``,!0),(t(!0),b(g,null,r(Y.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>Ee(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Re,[v(`div`,ze,[f(_(ee),{class:`h-4 w-4 flex-shrink-0 text-blue-500`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.npcRecycleActivity`)),1)]),_:1}),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1}))]),f(_(j),{onClick:y(t=>De(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(e.npcName)+` → `+u(e.targetPlanetName||`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`)+` · `+u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128)),(t(!0),b(g,null,r(Z.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>mt(e),class:`hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Be,[v(`div`,Ve,[f(_(S),{class:`h-4 w-4 flex-shrink-0 text-green-600`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.giftFrom`).replace(`{npcName}`,e.fromNpcName)),1)]),_:2},1024),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1}))]),f(_(j),{onClick:y(t=>_t(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024),f(_(H),null,{default:i(()=>[v(`div`,He,[v(`div`,Ue,[v(`div`,We,u(_(A)(`messagesView.giftResources`))+`:`,1),v(`div`,Ge,[e.resources.metal>0?(t(),b(`div`,Ke,u(_(A)(`resources.metal`))+`: `+u(e.resources.metal.toLocaleString()),1)):p(``,!0),e.resources.crystal>0?(t(),b(`div`,qe,u(_(A)(`resources.crystal`))+`: `+u(e.resources.crystal.toLocaleString()),1)):p(``,!0),e.resources.deuterium>0?(t(),b(`div`,Je,u(_(A)(`resources.deuterium`))+`: `+u(e.resources.deuterium.toLocaleString()),1)):p(``,!0)])]),v(`div`,Ye,[d(u(_(A)(`messagesView.expectedReputation`))+`: `,1),v(`span`,Xe,`+`+u(e.expectedReputationGain),1)]),v(`div`,Ze,[f(_(j),{onClick:y(t=>ht(e),[`stop`]),variant:`default`,size:`sm`,class:`flex-1`},{default:i(()=>[f(_(C),{class:`h-4 w-4 mr-1`}),d(` `+u(_(A)(`messagesView.acceptGift`)),1)]),_:1},8,[`onClick`]),f(_(j),{onClick:y(t=>gt(e),[`stop`]),variant:`outline`,size:`sm`,class:`flex-1`},{default:i(()=>[f(_(te),{class:`h-4 w-4 mr-1`}),d(` `+u(_(A)(`messagesView.rejectGift`)),1)]),_:1},8,[`onClick`])])])]),_:2},1024)]),_:2},1032,[`onClick`]))),128)),(t(!0),b(g,null,r(Q.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>vt(e),class:`hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,Qe,[v(`div`,$e,[f(_(te),{class:`h-4 w-4 flex-shrink-0 text-red-600`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(_(A)(`messagesView.giftRejectedBy`).replace(`{npcName}`,e.npcName)),1)]),_:2},1024),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1}))]),f(_(j),{onClick:y(t=>yt(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024),f(_(H),null,{default:i(()=>[v(`div`,et,[v(`div`,tt,[v(`div`,nt,u(_(A)(`messagesView.rejectedResources`))+`:`,1),v(`div`,rt,[e.rejectedResources.metal>0?(t(),b(`div`,it,u(_(A)(`resources.metal`))+`: `+u(e.rejectedResources.metal.toLocaleString()),1)):p(``,!0),e.rejectedResources.crystal>0?(t(),b(`div`,at,u(_(A)(`resources.crystal`))+`: `+u(e.rejectedResources.crystal.toLocaleString()),1)):p(``,!0),e.rejectedResources.deuterium>0?(t(),b(`div`,ot,u(_(A)(`resources.deuterium`))+`: `+u(e.rejectedResources.deuterium.toLocaleString()),1)):p(``,!0)])]),v(`div`,st,[d(u(_(A)(`messagesView.currentReputation`))+`: `,1),v(`span`,{class:c(e.currentReputation>=0?`text-green-600`:`text-red-600`)},u(e.currentReputation),3)]),v(`div`,ct,u(_(A)(`messagesView.rejectionReason.`+e.reason)),1)])]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1}),f(_(G),{value:`missions`,class:`mt-4 space-y-2`},{default:i(()=>[J.value.length===0?(t(),l(_(B),{key:0},{default:i(()=>[f(_(H),{class:`py-8 text-center text-muted-foreground`},{default:i(()=>[d(u(_(A)(`messagesView.noMissionReports`)),1)]),_:1})]),_:1})):p(``,!0),(t(!0),b(g,null,r(J.value,e=>(t(),l(_(B),{key:e.id,onClick:t=>ft(e),class:`cursor-pointer hover:shadow-md transition-shadow`},{default:i(()=>[f(_(z),{class:`pb-3`},{default:i(()=>[v(`div`,lt,[v(`div`,ut,[f(_(E),{class:`h-4 w-4 flex-shrink-0`}),f(_(R),{class:`text-base sm:text-lg`},{default:i(()=>[d(u(dt(e.missionType)),1)]),_:2},1024),e.read?p(``,!0):(t(),l(_(M),{key:0,variant:`default`,class:`text-xs`},{default:i(()=>[d(u(_(A)(`messagesView.unread`)),1)]),_:1})),f(_(M),{variant:e.success?`default`:`destructive`,class:`text-xs`},{default:i(()=>[d(u(e.success?_(A)(`messagesView.success`):_(A)(`messagesView.failed`)),1)]),_:2},1032,[`variant`])]),f(_(j),{onClick:y(t=>pt(e.id),[`stop`]),variant:`ghost`,size:`icon`,class:`h-8 w-8 flex-shrink-0`},{default:i(()=>[f(_(T),{class:`h-4 w-4`})]),_:1},8,[`onClick`])]),f(_(D),{class:`text-xs sm:text-sm`},{default:i(()=>[d(u(e.originPlanetName)+` → `+u(e.targetPlanetName||`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`)+` · `+u(_(L)(e.timestamp)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1})]),_:1},8,[`modelValue`]),f(le,{open:P.value,"onUpdate:open":a[1]||=e=>P.value=e,report:V.value},null,8,[`open`,`report`]),f(Oe,{open:F.value,"onUpdate:open":a[2]||=e=>F.value=e,report:U.value},null,8,[`open`,`report`])]))}});export{dt as default}; \ No newline at end of file diff --git a/docs/assets/NotFoundView-BqreQe6E.js b/docs/assets/NotFoundView-BqreQe6E.js deleted file mode 100644 index 731d883..0000000 --- a/docs/assets/NotFoundView-BqreQe6E.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Rn as t,cr as n,dn as r,fn as i,pn as a,rr as o,sn as s,un as c}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import{o as l}from"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import{N as u}from"./vendor-icons-Ccm2_GPI.js";import{J as d,X as f}from"./index-B4KMqZ_y.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./empty-Ds0PR_Pd.js";var y={class:`container mx-auto p-4 sm:p-6 flex items-center justify-center min-h-[60vh]`},b=a({__name:`NotFoundView`,setup(a){let b=l(),{t:x}=f(),S=()=>{b.push(`/`)};return(a,l)=>(e(),c(`div`,y,[i(o(g),{class:`border-0`},{default:t(()=>[i(o(h),null,{default:t(()=>[...l[0]||=[s(`div`,{class:`text-8xl sm:text-9xl font-bold text-muted-foreground/20`},`404`,-1)]]),_:1}),i(o(_),null,{default:t(()=>[i(o(v),null,{default:t(()=>[r(n(o(x)(`notFound.title`)),1)]),_:1}),i(o(m),null,{default:t(()=>[r(n(o(x)(`notFound.description`)),1)]),_:1})]),_:1}),i(o(p),null,{default:t(()=>[i(o(d),{onClick:S,size:`lg`},{default:t(()=>[i(o(u),{class:`mr-2 h-4 w-4`}),r(` `+n(o(x)(`notFound.goHome`)),1)]),_:1})]),_:1})]),_:1})]))}});export{b as default}; \ No newline at end of file diff --git a/docs/assets/OfficersView-CXh701uW.js b/docs/assets/OfficersView-CXh701uW.js deleted file mode 100644 index da89fdd..0000000 --- a/docs/assets/OfficersView-CXh701uW.js +++ /dev/null @@ -1 +0,0 @@ -import{$t as e,En as t,Ft as n,It as r,Lt as i,On as a,Rn as o,Rt as ee,St as s,Yn as c,ar as te,cn as l,cr as u,dn as d,fn as f,ln as p,on as ne,pn as re,rn as m,rr as h,sn as g,un as _,xt as v,zn as ie}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{t as ae}from"./CardDescription-DduF5EVY.js";import{h as oe}from"./game-config-DRP-gbpS.js";import{$ as se,A as y,F as b,I as x,J as S,K as C,L as ce,M as w,N as T,P as le,X as ue,a as de,d as fe,f as pe,j as E,k as D,l as me,m as O,o as k,p as A,s as j}from"./index-B4KMqZ_y.js";import{t as M}from"./useGameConfig-DLqfPHtW.js";var N={class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},P={class:`text-2xl sm:text-3xl font-bold`},F={class:`grid grid-cols-2 sm:grid-cols-3 gap-4 sm:gap-6`},I={class:`mb-2`},L={class:`flex flex-col sm:flex-row sm:justify-between sm:items-start gap-2`},R={key:0,class:`p-3 bg-blue-50 dark:bg-blue-950 rounded-lg`},z={class:`space-y-1 text-xs sm:text-sm`},he={class:`font-medium text-blue-700 dark:text-blue-300`},ge={class:`text-muted-foreground`},_e={class:`text-muted-foreground`},ve={class:`space-y-2`},ye={class:`text-sm font-medium text-muted-foreground`},be={class:`space-y-1.5`},xe={class:`text-xs`},Se={class:`space-y-2`},Ce={class:`text-sm font-medium text-muted-foreground`},we={class:`space-y-1 text-xs sm:text-sm`},Te={key:0,class:`flex items-center gap-2`},Ee={key:1,class:`flex items-center gap-2`},De={key:2,class:`flex items-center gap-2`},Oe={key:3,class:`flex items-center gap-2`},ke={key:4,class:`flex items-center gap-2`},Ae={key:5,class:`flex items-center gap-2`},je={key:6,class:`flex items-center gap-2`},Me={key:7,class:`flex items-center gap-2`},Ne={key:8,class:`flex items-center gap-2`},Pe={key:9,class:`flex items-center gap-2`},Fe={class:`flex flex-col sm:flex-row gap-2`},B=re({__name:`OfficersView`,setup(re){let{t:B}=ue(),{OFFICERS:V}=M(),H=se(),U=ne(()=>H.currentPlanet),W=c(!1),G=c(``),K=c(``),q=c(!1),J=c(``),Y=c(``),X=c(null),Ie=()=>{X.value&&X.value(),q.value=!1},Le=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`}],Z=e=>{let t=H.player.officers[e],n=Date.now();return t.active&&(!t.expiresAt||t.expiresAt>n)},Re=e=>H.player.officers[e].expiresAt||0,Q=e=>{let t=H.player.officers[e];if(!t.expiresAt)return 0;let n=Date.now();return Math.max(0,Math.floor((t.expiresAt-n)/1e3))},$=e=>{if(!U.value)return!1;let t=V.value[e];return U.value.resources.metal>=t.cost.metal&&U.value.resources.crystal>=t.cost.crystal&&U.value.resources.deuterium>=t.cost.deuterium&&U.value.resources.darkMatter>=t.cost.darkMatter},ze=(e,t=7)=>{if(!H.currentPlanet)return!1;let r=i(e);return v(H.currentPlanet.resources,r)?(s(H.currentPlanet.resources,r),H.player.officers[e]=n(e,t),!0):!1},Be=e=>{J.value=B(`officersView.hireTitle`),Y.value=B(`officersView.hireMessage`).replace(`{name}`,V.value[e].name),X.value=()=>{ze(e,7)||(G.value=B(`officersView.hireFailed`),K.value=B(`officersView.insufficientResources`),W.value=!0)},q.value=!0},Ve=(e,t=7)=>{if(!H.currentPlanet)return!1;let n=i(e);if(!v(H.currentPlanet.resources,n))return!1;s(H.currentPlanet.resources,n);let r=Date.now();return H.player.officers[e]=ee(H.player.officers[e],t,r),!0},He=e=>{J.value=B(`officersView.renewTitle`),Y.value=B(`officersView.renewMessage`).replace(`{name}`,V.value[e].name),X.value=()=>{Ve(e,7)||(G.value=B(`officersView.renewFailed`),K.value=B(`officersView.insufficientResources`),W.value=!0)},q.value=!0},Ue=e=>{J.value=B(`officersView.dismissTitle`),Y.value=B(`officersView.dismissMessage`).replace(`{name}`,V.value[e].name),X.value=()=>{H.player.officers[e]=r(e)},q.value=!0};return(n,r)=>(t(),_(`div`,N,[g(`h1`,P,u(h(B)(`officersView.title`)),1),g(`div`,F,[(t(!0),_(m,null,a(Object.values(h(oe)),n=>(t(),l(h(O),{key:n},{default:o(()=>[f(h(pe),null,{default:o(()=>[g(`div`,I,[g(`div`,L,[f(h(fe),{class:`text-sm sm:text-base lg:text-lg order-2 sm:order-1`},{default:o(()=>[d(u(h(V)[n].name),1)]),_:2},1024),Z(n)?(t(),l(h(C),{key:0,variant:`default`,class:`text-xs whitespace-nowrap self-start order-1 sm:order-2`},{default:o(()=>[d(u(h(B)(`officersView.activated`)),1)]),_:1})):(t(),l(h(C),{key:1,variant:`outline`,class:`text-xs whitespace-nowrap self-start order-1 sm:order-2`},{default:o(()=>[d(u(h(B)(`officersView.inactive`)),1)]),_:1}))])]),f(h(ae),{class:`text-xs sm:text-sm`},{default:o(()=>[d(u(h(V)[n].description),1)]),_:2},1024)]),_:2},1024),f(h(A),{class:`space-y-4`},{default:o(()=>[Z(n)?(t(),_(`div`,R,[g(`div`,z,[g(`p`,he,u(h(B)(`officersView.activeStatus`)),1),g(`p`,ge,u(h(B)(`officersView.expirationTime`))+`: `+u(h(de)(Re(n))),1),g(`p`,_e,u(h(B)(`officersView.remainingTime`))+`: `+u(h(j)(Q(n))),1)])])):p(``,!0),g(`div`,ve,[g(`p`,ye,u(h(B)(`officersView.recruitCost`))+` (7`+u(h(B)(`officersView.days`))+`):`,1),g(`div`,be,[(t(),_(m,null,a(Le,t=>ie(g(`div`,{key:t.key,class:`flex items-center gap-2`},[f(ce,{type:t.key,size:`sm`},null,8,[`type`]),g(`span`,xe,u(h(B)(`resources.${t.key}`))+`:`,1),g(`span`,{class:te([`font-medium text-sm`,U.value?h(me)(U.value.resources[t.key],h(V)[n].cost[t.key]):``])},u(h(k)(h(V)[n].cost[t.key])),3)]),[[e,t.key!==`darkMatter`||h(V)[n].cost.darkMatter>0]])),64))])]),g(`div`,Se,[g(`p`,Ce,u(h(B)(`officersView.benefitsBonus`))+`:`,1),g(`div`,we,[h(V)[n].benefits.resourceProductionBonus?(t(),_(`div`,Te,[r[2]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.resourceProduction`))+` +`+u(h(V)[n].benefits.resourceProductionBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.darkMatterProductionBonus?(t(),_(`div`,Ee,[r[3]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.darkMatterProduction`))+` +`+u(h(V)[n].benefits.darkMatterProductionBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.buildingSpeedBonus?(t(),_(`div`,De,[r[4]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.buildingSpeed`))+` +`+u(h(V)[n].benefits.buildingSpeedBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.researchSpeedBonus?(t(),_(`div`,Oe,[r[5]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.researchSpeed`))+` +`+u(h(V)[n].benefits.researchSpeedBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.fleetSpeedBonus?(t(),_(`div`,ke,[r[6]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.fleetSpeed`))+` +`+u(h(V)[n].benefits.fleetSpeedBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.fuelConsumptionReduction?(t(),_(`div`,Ae,[r[7]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↓`,-1),g(`span`,null,u(h(B)(`officersView.fuelConsumption`))+` -`+u(h(V)[n].benefits.fuelConsumptionReduction)+`%`,1)])):p(``,!0),h(V)[n].benefits.defenseBonus?(t(),_(`div`,je,[r[8]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.defense`))+` +`+u(h(V)[n].benefits.defenseBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.storageCapacityBonus?(t(),_(`div`,Me,[r[9]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`↑`,-1),g(`span`,null,u(h(B)(`officersView.storageCapacity`))+` +`+u(h(V)[n].benefits.storageCapacityBonus)+`%`,1)])):p(``,!0),h(V)[n].benefits.additionalBuildQueue?(t(),_(`div`,Ne,[r[10]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`+`,-1),g(`span`,null,u(h(B)(`officersView.buildQueue`))+` +`+u(h(V)[n].benefits.additionalBuildQueue),1)])):p(``,!0),h(V)[n].benefits.additionalFleetSlots?(t(),_(`div`,Pe,[r[11]||=g(`span`,{class:`text-green-600 dark:text-green-400`},`+`,-1),g(`span`,null,u(h(B)(`officersView.fleetSlots`))+` +`+u(h(V)[n].benefits.additionalFleetSlots),1)])):p(``,!0)])]),g(`div`,Fe,[Z(n)?p(``,!0):(t(),l(h(S),{key:0,onClick:e=>Be(n),disabled:!$(n),class:`w-full`},{default:o(()=>[d(u(h(B)(`officersView.hire`))+` (7`+u(h(B)(`officersView.days`))+`) `,1)]),_:1},8,[`onClick`,`disabled`])),Z(n)?(t(),l(h(S),{key:1,onClick:e=>He(n),disabled:!$(n),class:`w-full sm:flex-1`},{default:o(()=>[d(u(h(B)(`officersView.renew`))+` (7`+u(h(B)(`officersView.days`))+`) `,1)]),_:1},8,[`onClick`,`disabled`])):p(``,!0),Z(n)?(t(),l(h(S),{key:2,onClick:e=>Ue(n),variant:`outline`,class:`w-full sm:w-auto`},{default:o(()=>[d(u(h(B)(`officersView.dismiss`)),1)]),_:1},8,[`onClick`])):p(``,!0)])]),_:2},1024)]),_:2},1024))),128))]),f(h(x),{open:W.value,"onUpdate:open":r[0]||=e=>W.value=e},{default:o(()=>[f(h(T),null,{default:o(()=>[f(h(y),null,{default:o(()=>[f(h(D),null,{default:o(()=>[d(u(G.value),1)]),_:1}),f(h(w),{class:`whitespace-pre-line`},{default:o(()=>[d(u(K.value),1)]),_:1})]),_:1}),f(h(E),null,{default:o(()=>[f(h(b),null,{default:o(()=>[d(u(h(B)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),f(h(x),{open:q.value,"onUpdate:open":r[1]||=e=>q.value=e},{default:o(()=>[f(h(T),null,{default:o(()=>[f(h(y),null,{default:o(()=>[f(h(D),null,{default:o(()=>[d(u(J.value),1)]),_:1}),f(h(w),{class:`whitespace-pre-line`},{default:o(()=>[d(u(Y.value),1)]),_:1})]),_:1}),f(h(E),null,{default:o(()=>[f(h(le),null,{default:o(()=>[d(u(h(B)(`common.cancel`)),1)]),_:1}),f(h(b),{onClick:Ie},{default:o(()=>[d(u(h(B)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{B as default}; \ No newline at end of file diff --git a/docs/assets/OfficersView-vhUgk-zn.js b/docs/assets/OfficersView-vhUgk-zn.js deleted file mode 100644 index 014a15a..0000000 --- a/docs/assets/OfficersView-vhUgk-zn.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as O}from"./useGameConfig-CVlwnWOp.js";import{t as k}from"./AlertDialog-Bf_xgpJz.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-BmFIi4eW.js b/docs/assets/OverviewView-BmFIi4eW.js deleted file mode 100644 index fed7d79..0000000 --- a/docs/assets/OverviewView-BmFIi4eW.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as k}from"./useGameConfig-CVlwnWOp.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/OverviewView-D7lWE9IR.js b/docs/assets/OverviewView-D7lWE9IR.js deleted file mode 100644 index bb3f305..0000000 --- a/docs/assets/OverviewView-D7lWE9IR.js +++ /dev/null @@ -1 +0,0 @@ -import{$t as e,En as t,On as n,Rn as r,_t as ee,ar as i,cn as te,cr as a,dn as o,fn as s,gt as c,ln as l,on as u,ot as ne,pn as d,rn as f,rr as p,sn as m,st as re,un as h,vt as ie,zn as ae}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{t as oe}from"./CardDescription-DduF5EVY.js";import"./game-config-DRP-gbpS.js";import{$ as se,J as g,K as _,L as v,X as y,_ as b,b as ce,c as x,d as S,f as C,g as w,h as le,m as T,o as E,p as D,v as O,y as k}from"./index-B4KMqZ_y.js";import{t as A}from"./useGameConfig-DLqfPHtW.js";import{i as j,n as M,r as N,t as P}from"./TabsTrigger-BnZOhHbD.js";var F={key:0,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},I={class:`text-center`},L={class:`text-2xl sm:text-3xl font-bold mb-1 sm:mb-2 flex items-center justify-center gap-2`},R={class:`text-xs sm:text-sm text-muted-foreground`},z={key:0,class:`mt-2`},B={key:1,class:`mt-2`},V={class:`flex items-center gap-2`},H={class:`space-y-4`},U={class:`flex items-center gap-2 mb-2`},W={class:`font-semibold`},ue={key:0,class:`ml-6 space-y-1 text-sm`},de={class:`text-muted-foreground`},fe={class:`text-green-600 dark:text-green-400`},pe={key:1,class:`flex justify-between`},G={class:`text-muted-foreground`},me={class:`text-green-600 dark:text-green-400`},he={class:`text-muted-foreground ml-4`},ge={class:`flex justify-between font-semibold pt-1 border-t mt-1`},_e={class:`text-green-600 dark:text-green-400`},ve={class:`space-y-2`},ye={key:0,class:`text-muted-foreground`},be={key:1,class:`text-red-600 dark:text-red-400`},xe={key:0,class:`flex justify-between font-semibold pt-2 border-t`},Se={class:`text-red-600 dark:text-red-400`},Ce={key:1,class:`text-sm text-muted-foreground text-center py-2`},we={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4`},Te={class:`text-xs sm:text-sm text-muted-foreground`},Ee={class:`text-lg sm:text-xl font-bold`},K=d({__name:`OverviewView`,setup(d){let K=se(),{t:q}=y(),{SHIPS:De}=A(),J=u(()=>K.currentPlanet),Oe=u(()=>J.value?re(J.value,K.player.officers):null),Y=u(()=>J.value?ne(J.value,K.player.officers):null),ke=u(()=>J.value?ee(J.value):0),X=u(()=>J.value?ie(J.value,K.player.officers,Date.now()):null),Z=u(()=>J.value?c(J.value):null),Q=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`energy`},{key:`darkMatter`}],Ae=[{key:`metalMine`},{key:`crystalMine`},{key:`deuteriumSynthesizer`}],$=u(()=>!J.value||J.value.isMoon?null:je(J.value.id)),je=e=>K.player.planets.find(t=>t.isMoon&&t.parentPlanetId===e)||null,Me=()=>{$.value&&(K.currentPlanetId=$.value.id)},Ne=()=>{J.value?.parentPlanetId&&(K.currentPlanetId=J.value.parentPlanetId)};return(ee,c)=>J.value?(t(),h(`div`,F,[m(`div`,I,[m(`h1`,L,[o(a(J.value.name)+` `,1),J.value.isMoon?(t(),te(p(_),{key:0,variant:`secondary`},{default:r(()=>[o(a(p(q)(`planet.moon`)),1)]),_:1})):l(``,!0)]),m(`p`,R,a(p(q)(`planet.position`))+`: [`+a(J.value.position.galaxy)+`:`+a(J.value.position.system)+`:`+a(J.value.position.position)+`] `,1),!J.value.isMoon&&$.value?(t(),h(`div`,z,[s(p(g),{onClick:Me,variant:`outline`,size:`sm`},{default:r(()=>[c[0]||=m(`span`,{class:`mr-2`},`🌙`,-1),o(` `+a(p(q)(`planet.switchToMoon`)),1)]),_:1})])):l(``,!0),J.value.isMoon?(t(),h(`div`,B,[s(p(g),{onClick:Ne,variant:`outline`,size:`sm`},{default:r(()=>[o(a(p(q)(`planet.backToPlanet`)),1)]),_:1})])):l(``,!0)]),s(p(T),null,{default:r(()=>[s(p(C),null,{default:r(()=>[s(p(S),null,{default:r(()=>[o(a(p(q)(`overview.resourceOverview`)),1)]),_:1})]),_:1}),s(p(D),null,{default:r(()=>[s(p(j),{"default-value":`overview`,class:`w-full`},{default:r(()=>[s(p(M),{class:`grid w-full grid-cols-3`},{default:r(()=>[s(p(P),{value:`overview`},{default:r(()=>[...c[1]||=[o(`概览`,-1)]]),_:1}),s(p(P),{value:`production`},{default:r(()=>[...c[2]||=[o(`产量详情`,-1)]]),_:1}),s(p(P),{value:`consumption`},{default:r(()=>[...c[3]||=[o(`消耗详情`,-1)]]),_:1})]),_:1}),s(p(N),{value:`overview`,class:`mt-4`},{default:r(()=>[s(p(ce),null,{default:r(()=>[s(p(le),null,{default:r(()=>[s(p(b),null,{default:r(()=>[s(p(w),null,{default:r(()=>[o(a(p(q)(`common.resourceType`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.current`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.max`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.production`))+a(p(q)(`resources.perHour`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.consumption`))+a(p(q)(`resources.perHour`)),1)]),_:1})]),_:1})]),_:1}),s(p(k),null,{default:r(()=>[(t(),h(f,null,n(Q,e=>s(p(b),{key:e.key},{default:r(()=>[s(p(O),{class:`font-medium`},{default:r(()=>[m(`div`,V,[s(v,{type:e.key,size:`sm`},null,8,[`type`]),o(` `+a(p(q)(`resources.${e.key}`)),1)])]),_:2},1024),s(p(O),{class:i([`text-right`,p(x)(J.value.resources[e.key],Y.value?.[e.key]||1/0)])},{default:r(()=>[o(a(p(E)(J.value.resources[e.key])),1)]),_:2},1032,[`class`]),s(p(O),{class:`text-right text-muted-foreground`},{default:r(()=>[o(a(p(E)(Y.value?.[e.key]||0)),1)]),_:2},1024),s(p(O),{class:`text-right text-green-600 dark:text-green-400`},{default:r(()=>[o(` +`+a(p(E)(Oe.value?.[e.key]||0)),1)]),_:2},1024),s(p(O),{class:`text-right text-red-600 dark:text-red-400`},{default:r(()=>[e.key===`energy`?(t(),h(f,{key:0},[o(`-`+a(p(E)(ke.value)),1)],64)):(t(),h(f,{key:1},[o(`-`)],64))]),_:2},1024)]),_:2},1024)),64))]),_:1})]),_:1})]),_:1}),s(p(N),{value:`production`,class:`mt-4`},{default:r(()=>[m(`div`,H,[(t(),h(f,null,n(Q,e=>m(`div`,{key:e.key,class:`border-b last:border-b-0 pb-4 last:pb-0`},[m(`div`,U,[s(v,{type:e.key,size:`sm`},null,8,[`type`]),m(`span`,W,a(p(q)(`resources.${e.key}`)),1)]),X.value?(t(),h(`div`,ue,[e.key===`energy`&&X.value.energy.sources?(t(!0),h(f,{key:0},n(X.value.energy.sources,(e,n)=>(t(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,de,[o(a(p(q)(e.name))+` `,1),e.name.startsWith(`buildings.`)?(t(),h(f,{key:0},[o(`(`+a(p(q)(`common.level`))+` `+a(e.level)+`)`,1)],64)):(t(),h(f,{key:1},[o(`(`+a(e.level)+`)`,1)],64))]),m(`span`,fe,` +`+a(p(E)(Math.floor(e.production)))+`/`+a(p(q)(`resources.hour`)),1)]))),128)):(t(),h(`div`,pe,[m(`span`,G,a(p(q)(X.value[e.key].buildingName))+` (`+a(p(q)(`common.level`))+` `+a(X.value[e.key].buildingLevel)+`) `,1),m(`span`,me,` +`+a(p(E)(Math.floor(X.value[e.key].baseProduction)))+`/`+a(p(q)(`resources.hour`)),1)])),(t(!0),h(f,null,n(X.value[e.key].bonuses,(e,n)=>(t(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,he,a(p(q)(e.name))+` (`+a(e.percentage>0?`+`:``)+a(e.percentage)+`%) `,1),m(`span`,{class:i(e.value>0?`text-green-600 dark:text-green-400`:`text-red-600 dark:text-red-400`)},a(e.value>0?`+`:``)+a(p(E)(Math.floor(e.value)))+`/`+a(p(q)(`resources.hour`)),3)]))),128)),m(`div`,ge,[m(`span`,null,a(p(q)(`overview.totalProduction`)),1),m(`span`,_e,` +`+a(p(E)(Math.floor(X.value[e.key].finalProduction)))+`/`+a(p(q)(`resources.hour`)),1)])])):l(``,!0)])),64))])]),_:1}),s(p(N),{value:`consumption`,class:`mt-4`},{default:r(()=>[m(`div`,ve,[(t(),h(f,null,n(Ae,n=>ae(m(`div`,{key:n.key,class:`flex justify-between text-sm`},[Z.value?(t(),h(`span`,ye,a(p(q)(Z.value[n.key].buildingName))+` (`+a(p(q)(`common.level`))+` `+a(Z.value[n.key].buildingLevel)+`) `,1)):l(``,!0),Z.value?(t(),h(`span`,be,` -`+a(p(E)(Math.floor(Z.value[n.key].consumption)))+`/`+a(p(q)(`resources.hour`)),1)):l(``,!0)]),[[e,Z.value&&Z.value[n.key].buildingLevel>0]])),64)),Z.value?(t(),h(`div`,xe,[m(`span`,null,a(p(q)(`overview.totalConsumption`)),1),m(`span`,Se,` -`+a(p(E)(Math.floor(Z.value.total)))+`/`+a(p(q)(`resources.hour`)),1)])):l(``,!0),Z.value&&Z.value.total===0?(t(),h(`div`,Ce,a(p(q)(`overview.noConsumption`)),1)):l(``,!0)])]),_:1})]),_:1})]),_:1})]),_:1}),s(p(T),null,{default:r(()=>[s(p(C),null,{default:r(()=>[s(p(S),null,{default:r(()=>[o(a(p(q)(`overview.fleetInfo`)),1)]),_:1}),s(p(oe),null,{default:r(()=>[o(a(p(q)(`overview.currentShips`)),1)]),_:1})]),_:1}),s(p(D),null,{default:r(()=>[m(`div`,we,[(t(!0),h(f,null,n(J.value.fleet,(e,n)=>(t(),h(`div`,{key:n},[m(`p`,Te,a(p(De)[n].name),1),m(`p`,Ee,a(e),1)]))),128))])]),_:1})]),_:1})])):l(``,!0)}});export{K as default}; \ No newline at end of file diff --git a/docs/assets/ResearchView-BoGXU7Gy.js b/docs/assets/ResearchView-BoGXU7Gy.js deleted file mode 100644 index debf20d..0000000 --- a/docs/assets/ResearchView-BoGXU7Gy.js +++ /dev/null @@ -1,2 +0,0 @@ -import{$t as e,En as t,J as n,On as r,Rn as i,Yn as a,ar as o,at as s,cn as ee,cr as c,dn as l,fn as u,ln as te,nt as d,on as f,pn as ne,q as re,qt as ie,rn as p,rr as m,sn as h,tt as g,un as _,zn as ae}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import"./vendor-icons-Ccm2_GPI.js";import{t as oe}from"./CardDescription-DduF5EVY.js";import{d as v,v as y}from"./game-config-DRP-gbpS.js";import{$ as se,A as ce,F as le,I as ue,J as de,K as b,L as x,M as S,N as C,X as w,d as T,f as E,j as D,k as O,l as k,m as A,o as j,p as M,x as N}from"./index-B4KMqZ_y.js";import{t as P}from"./useGameConfig-DLqfPHtW.js";import{t as F}from"./CardUnlockOverlay-CspXlcWR.js";import{t as I}from"./UnlockRequirement-DJ9dN5JL.js";var L={key:0,class:`container mx-auto p-4 sm:p-6`},R={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},z={class:`grid grid-cols-2 lg:grid-cols-3 gap-3 sm:gap-4`},fe={class:`mb-2`},B={class:`flex flex-col sm:flex-row sm:justify-between sm:items-start gap-2`},V={class:`space-y-2.5 sm:space-y-3`},pe={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},me={class:`text-muted-foreground mb-1 sm:mb-2`},he={class:`space-y-1 sm:space-y-1.5`},ge={class:`text-xs`},H=ne({__name:`ResearchView`,setup(ne){let H=se(),_e=N(),{t:U}=w(),{TECHNOLOGIES:W,BUILDINGS:ve}=P(),G=f(()=>H.currentPlanet),K=f(()=>H.player),q=a(!1),J=a(``),Y=a(``),ye=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`}],X=e=>{if(!H.currentPlanet||!n(H.currentPlanet,e,H.player.technologies,H.player.researchQueue).valid)return!1;let t=H.player.technologies[e]||0,{queueItem:r}=re(H.currentPlanet,e,t,H.player.officers,H.player.technologies);return H.player.researchQueue.push(r),!0},Z=e=>{if(!G.value)return!1;let t=W.value[e],n=d(t,Q(e)+1);return!n||Object.keys(n).length===0?!0:g(G.value,H.player.technologies,n)},be=e=>{if(!G.value)return U(`researchView.research`);let t=W.value[e],n=Q(e);if(t.maxLevel!==void 0&&n>=t.maxLevel)return U(`researchView.maxLevelReached`);let r=s(H.player.technologies);return K.value.researchQueue.length>=r||Z(e)?U(`researchView.research`):U(`buildingsView.requirementsNotMet`)},xe=e=>{let t=W.value[e],n=d(t,Q(e)+1);if(!n||!G.value)return``;let r=[];for(let[e,t]of Object.entries(n))if(Object.values(v).includes(e)){let n=e,i=G.value.buildings[n]||0,a=ve.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${U(`common.current`)}: Lv ${i})`)}else if(Object.values(y).includes(e)){let n=e,i=H.player.technologies[n]||0,a=W.value[n]?.name||n,o=i>=t?`✓`:`✗`;r.push(`${o} ${a}: Lv ${t} (${U(`common.current`)}: Lv ${i})`)}return r.join(` -`)},Se=e=>{if(!Z(e)){J.value=U(`common.requirementsNotMet`),Y.value=xe(e),q.value=!0;return}X(e)||(J.value=U(`researchView.researchFailed`),Y.value=U(`researchView.researchFailedMessage`),q.value=!0)},Q=e=>K.value.technologies[e]||0,Ce=e=>{if(!G.value)return!1;let t=W.value[e],n=Q(e);if(t.maxLevel!==void 0&&n>=t.maxLevel)return!1;let r=s(H.player.technologies);if(K.value.researchQueue.length>=r)return!1;let i=$(e,n+1);return g(G.value,H.player.technologies,t.requirements)&&G.value.resources.metal>=i.metal&&G.value.resources.crystal>=i.crystal&&G.value.resources.deuterium>=i.deuterium&&G.value.resources.darkMatter>=i.darkMatter},$=(e,t)=>ie(e,t);return(n,a)=>G.value?(t(),_(`div`,L,[u(I,{"required-building":m(v).ResearchLab,"required-level":1},null,8,[`required-building`]),h(`h1`,R,c(m(U)(`researchView.title`)),1),h(`div`,z,[(t(!0),_(p,null,r(Object.values(m(y)),n=>(t(),ee(m(A),{key:n,class:`relative`},{default:i(()=>[u(F,{requirements:m(W)[n].requirements,currentLevel:Q(n)},null,8,[`requirements`,`currentLevel`]),u(m(E),null,{default:i(()=>[h(`div`,fe,[h(`div`,B,[u(m(T),{class:`text-sm sm:text-base lg:text-lg cursor-pointer hover:text-primary transition-colors underline decoration-dotted underline-offset-4 order-2 sm:order-1`,onClick:e=>m(_e).openTechnology(n,Q(n))},{default:i(()=>[l(c(m(W)[n].name),1)]),_:2},1032,[`onClick`]),u(m(b),{variant:`secondary`,class:`text-xs whitespace-nowrap self-start order-1 sm:order-2`},{default:i(()=>[l(` Lv `+c(Q(n)),1)]),_:2},1024)])]),u(m(oe),{class:`text-xs sm:text-sm`},{default:i(()=>[l(c(m(W)[n].description),1)]),_:2},1024)]),_:2},1024),u(m(M),null,{default:i(()=>[h(`div`,V,[h(`div`,pe,[h(`p`,me,c(m(U)(`researchView.researchCost`))+`:`,1),h(`div`,he,[(t(),_(p,null,r(ye,t=>ae(h(`div`,{key:t.key,class:`flex items-center gap-1.5 sm:gap-2`},[u(x,{type:t.key,size:`sm`},null,8,[`type`]),h(`span`,ge,c(m(U)(`resources.${t.key}`))+`:`,1),h(`span`,{class:o([`font-medium text-xs sm:text-sm`,m(k)(G.value.resources[t.key],$(n,Q(n)+1)[t.key])])},c(m(j)($(n,Q(n)+1)[t.key])),3)]),[[e,t.key!==`darkMatter`||$(n,Q(n)+1).darkMatter>0]])),64))])]),u(m(de),{onClick:e=>Se(n),disabled:!Ce(n),class:`w-full`},{default:i(()=>[l(c(be(n)),1)]),_:2},1032,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),u(m(ue),{open:q.value,"onUpdate:open":a[0]||=e=>q.value=e},{default:i(()=>[u(m(C),null,{default:i(()=>[u(m(ce),null,{default:i(()=>[u(m(O),null,{default:i(()=>[l(c(J.value),1)]),_:1}),u(m(S),{class:`whitespace-pre-line`},{default:i(()=>[l(c(Y.value),1)]),_:1})]),_:1}),u(m(D),null,{default:i(()=>[u(m(le),null,{default:i(()=>[l(c(m(U)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):te(``,!0)}});export{H as default}; \ No newline at end of file diff --git a/docs/assets/ResearchView-CxV9s7Q0.js b/docs/assets/ResearchView-CxV9s7Q0.js deleted file mode 100644 index cd816ab..0000000 --- a/docs/assets/ResearchView-CxV9s7Q0.js +++ /dev/null @@ -1,2 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as E}from"./useGameConfig-CVlwnWOp.js";import{t as D}from"./AlertDialog-Bf_xgpJz.js";import{t as O}from"./CardUnlockOverlay-CVKjkS94.js";import{t as k}from"./UnlockRequirement-p2W4t6RX.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-8cT4Hu-1.js b/docs/assets/SelectValue-8cT4Hu-1.js deleted file mode 100644 index b89e425..0000000 --- a/docs/assets/SelectValue-8cT4Hu-1.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Rn as t,ar as n,cn as r,fn as i,hn as a,kn as o,or as s,pn as c,rr as l,sn as u,xn as d}from"./game-logic-BBFCPVtv.js";import{l as f}from"./vendor-others-Bce0hM6h.js";import{$ as p,S as m,_ as h,b as g,d as _,et as v,f as y,g as b,h as x,m as S,p as C,v as w,x as T,y as E}from"./vendor-reka-ui-DR3m_AkV.js";import{X as D,Z as O,q as k}from"./vendor-icons-Ccm2_GPI.js";import{Y as A}from"./index-B4KMqZ_y.js";var j=c({__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(n,{emit:i}){let c=p(n,i);return(n,i)=>(e(),r(l(m),d({"data-slot":`select`},l(c)),{default:t(e=>[o(n.$slots,`default`,s(a(e)))]),_:3},16))}}),M=c({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(a,{emit:s}){let c=a,u=s,m=p(f(c,`class`),u);return(s,u)=>(e(),r(l(b),null,{default:t(()=>[i(l(T),d({"data-slot":`select-content`},{...s.$attrs,...l(m)},{class:l(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`,a.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`,c.class)}),{default:t(()=>[i(l(I)),i(l(_),{class:n(l(A)(`p-1`,a.position===`popper`&&`h-[var(--reka-select-trigger-height)] w-full min-w-[var(--reka-select-trigger-width)] scroll-my-1`))},{default:t(()=>[o(s.$slots,`default`)]),_:3},8,[`class`]),i(l(F))]),_:3},16,[`class`])]),_:3}))}}),N={class:`absolute right-2 flex size-3.5 items-center justify-center`},P=c({__name:`SelectItem`,props:{value:{},disabled:{type:Boolean},textValue:{},asChild:{type:Boolean},as:{},class:{}},setup(n){let a=n,s=v(f(a,`class`));return(n,c)=>(e(),r(l(E),d({"data-slot":`select-item`},l(s),{class:l(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`,a.class)}),{default:t(()=>[u(`span`,N,[i(l(w),null,{default:t(()=>[o(n.$slots,`indicator-icon`,{},()=>[i(l(O),{class:`size-4`})])]),_:3})]),i(l(h),null,{default:t(()=>[o(n.$slots,`default`)]),_:3})]),_:3},16,[`class`]))}}),F=c({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean},as:{},class:{}},setup(n){let a=n,s=v(f(a,`class`));return(n,c)=>(e(),r(l(x),d({"data-slot":`select-scroll-down-button`},l(s),{class:l(A)(`flex cursor-default items-center justify-center py-1`,a.class)}),{default:t(()=>[o(n.$slots,`default`,{},()=>[i(l(D),{class:`size-4`})])]),_:3},16,[`class`]))}}),I=c({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean},as:{},class:{}},setup(n){let a=n,s=v(f(a,`class`));return(n,c)=>(e(),r(l(S),d({"data-slot":`select-scroll-up-button`},l(s),{class:l(A)(`flex cursor-default items-center justify-center py-1`,a.class)}),{default:t(()=>[o(n.$slots,`default`,{},()=>[i(l(k),{class:`size-4`})])]),_:3},16,[`class`]))}}),L=c({__name:`SelectTrigger`,props:{disabled:{type:Boolean},reference:{},asChild:{type:Boolean},as:{},class:{},size:{default:`default`}},setup(n){let a=n,s=v(f(a,`class`,`size`));return(c,u)=>(e(),r(l(C),d({"data-slot":`select-trigger`,"data-size":n.size},l(s),{class:l(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`,a.class)}),{default:t(()=>[o(c.$slots,`default`),i(l(g),{"as-child":``},{default:t(()=>[i(l(D),{class:`size-4 opacity-50`})]),_:1})]),_:3},16,[`data-size`,`class`]))}}),R=c({__name:`SelectValue`,props:{placeholder:{},asChild:{type:Boolean},as:{}},setup(n){let i=n;return(n,a)=>(e(),r(l(y),d({"data-slot":`select-value`},i),{default:t(()=>[o(n.$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/SelectValue-B8Xyt9cq.js b/docs/assets/SelectValue-B8Xyt9cq.js deleted file mode 100644 index 9d02c4e..0000000 --- a/docs/assets/SelectValue-B8Xyt9cq.js +++ /dev/null @@ -1 +0,0 @@ -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-DRmrr36X.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-ByY8npXW.js b/docs/assets/SettingsView-ByY8npXW.js deleted file mode 100644 index 691f99e..0000000 --- a/docs/assets/SettingsView-ByY8npXW.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.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/SettingsView-CqA4xeYn.js b/docs/assets/SettingsView-CqA4xeYn.js deleted file mode 100644 index beee5ac..0000000 --- a/docs/assets/SettingsView-CqA4xeYn.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,En as t,Rn as n,Tn as r,Yn as i,ar as a,cn as o,cr as s,dn as c,fn as l,ln as ee,on as u,pn as d,rn as f,rr as p,sn as m,un as h,wn as g}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import{n as _}from"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import{t as v}from"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{D as te,H as ne,S as re,V as ie,a as ae,c as oe,x as se,y as ce}from"./vendor-icons-Ccm2_GPI.js";import{t as y}from"./CardDescription-DduF5EVY.js";import{$ as le,A as ue,F as de,I as fe,J as b,M as pe,N as x,P as me,X as he,d as S,et as C,f as w,i as T,j as E,k as D,m as O,n as k,p as A,r as j}from"./index-B4KMqZ_y.js";var M=v(),N={class:`container mx-auto p-4 sm:p-6 space-y-6`},P={class:`flex items-center justify-between`},F={class:`text-2xl font-bold`},I={class:`flex items-center justify-between p-4 border rounded-lg`},L={class:`space-y-1`},R={class:`font-medium`},ge={class:`text-sm text-muted-foreground`},_e={class:`flex items-center justify-between p-4 border rounded-lg`},ve={class:`space-y-1`},ye={class:`font-medium`},be={class:`text-sm text-muted-foreground`},xe={class:`flex gap-2`},Se={class:`flex items-center justify-between p-4 border rounded-lg border-destructive/50`},Ce={class:`space-y-1`},we={class:`font-medium text-destructive`},Te={class:`text-sm text-muted-foreground`},Ee={class:`flex flex-col sm:flex-row items-start sm:items-center justify-between p-4 border rounded-lg gap-3`},De={class:`space-y-1 flex-1`},Oe={class:`font-medium`},ke={class:`text-sm text-muted-foreground`},Ae={class:`flex items-center gap-2 sm:gap-4 w-full sm:w-auto`},je={class:`flex items-center gap-2 flex-1 sm:flex-initial`},Me={class:`min-w-[60px] text-center font-medium`},Ne={class:`flex items-center justify-between p-4 border rounded-lg`},Pe={class:`space-y-1`},Fe={class:`font-medium`},Ie={class:`text-sm text-muted-foreground`},Le={class:`space-y-2`},z={class:`flex items-center justify-between text-sm`},Re={class:`text-muted-foreground`},ze={class:`font-medium`},Be={class:`flex items-center justify-between text-sm`},Ve={class:`text-muted-foreground`},He={class:`font-medium`},Ue={class:`pt-2`},We={class:`pt-2 border-t space-y-2`},Ge={class:`text-sm font-medium`},Ke={class:`flex flex-col gap-2`},qe={class:`ml-auto text-xs text-muted-foreground`},B=d({__name:`SettingsView`,setup(d){let{t:v}=he(),B=le(),V=i(),H=i(!1),U=i(!1),W=i(``),G=i(!1),K=i(``),q=i(``),J=null,Y=u(()=>k(B.player.lastManualUpdateCheck||0)),X=()=>{if(Y.value){W.value=``;return}let e=B.player.lastManualUpdateCheck||0,t=300*1e3-(Date.now()-e);if(t<=0){W.value=``;return}let n=Math.floor(t/6e4),r=Math.floor(t%6e4/1e3);W.value=`${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`},Z=null;g(()=>{X(),Z=setInterval(X,1e3)}),r(()=>{Z&&clearInterval(Z)});let Je=()=>{window.open(`https://github.com/${C.author.name}/${C.name}`,`_blank`)},Ye=()=>{window.open(`https://qm.qq.com/q/${C.id}`,`_blank`)},Q=i(!1),$=i(null),Xe=async()=>{if(!(U.value||!Y.value)){U.value=!0;try{let e=await j(B.player.lastManualUpdateCheck||0,e=>{B.player.lastManualUpdateCheck=e});e?($.value=e,Q.value=!0):_.success(v(`settings.upToDate`))}catch(e){console.error(`Failed to check for updates:`,e),_.error(v(`settings.checkUpdateFailed`))}finally{U.value=!1}}},Ze=async()=>{try{H.value=!0;let e=localStorage.getItem(C.name),t=localStorage.getItem(`${C.name}-universe`),n=localStorage.getItem(`${C.name}-npcs`);if(!e){_.error(v(`settings.exportFailed`));return}let r={game:e,npcs:n,universe:t||null},i=`${C.name}-${new Date().toISOString().slice(0,10)}-${Date.now()}.json`,a=JSON.stringify(r,null,2);(0,M.saveAs)(new Blob([a],{type:`application/json`}),i),_.success(v(`settings.exportSuccess`))}catch(e){console.error(`Export failed:`,e),_.error(v(`settings.exportFailed`))}finally{H.value=!1}},Qe=()=>{V.value?.click()},$e=e=>{let t=e.target.files?.[0];t&&(K.value=v(`settings.importConfirmTitle`),q.value=v(`settings.importConfirmMessage`),G.value=!0,B.isPaused=!0,J=()=>et(t))},et=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(C.name,t),_.success(v(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3);return}e.game&&localStorage.setItem(C.name,e.game),e.universe&&localStorage.setItem(`${C.name}-universe`,e.universe),e.npcs&&localStorage.setItem(`${C.name}-npcs`,e.npcs),_.success(v(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3)}else _.error(v(`settings.importFailed`))}catch(e){let t=e instanceof Error?e.message:String(e);_.error(v(`settings.importFailed`)+`: `+t)}},t.readAsText(e)}catch(e){console.error(`Import failed:`,e),_.error(v(`settings.importFailed`))}},tt=()=>{K.value=v(`settings.clearConfirmTitle`),q.value=v(`settings.clearConfirmMessage`),G.value=!0,J=nt},nt=()=>{B.isPaused=!0;try{localStorage.clear(),window.location.reload()}catch(e){console.error(`Failed to clear data:`,e),window.location.reload()}},rt=()=>{B.gameSpeed<10&&(B.gameSpeed=Math.min(10,B.gameSpeed+.5),_.success(v(`settings.speedChanged`,{speed:B.gameSpeed})))},it=()=>{B.gameSpeed>.5&&(B.gameSpeed=Math.max(.5,B.gameSpeed-.5),_.success(v(`settings.speedChanged`,{speed:B.gameSpeed})))},at=()=>{B.gameSpeed=1,_.success(v(`settings.speedReset`))},ot=()=>{B.isPaused=!B.isPaused,B.isPaused?_.info(v(`settings.gamePaused`)):_.success(v(`settings.gameResumed`))},st=()=>{J&&=(J(),null),G.value=!1},ct=()=>{B.isPaused=!1,J=null,G.value=!1,V.value&&(V.value.value=``)};return(r,i)=>(t(),h(`div`,N,[m(`div`,P,[m(`h1`,F,s(p(v)(`nav.settings`)),1)]),l(p(O),null,{default:n(()=>[l(p(w),null,{default:n(()=>[l(p(S),null,{default:n(()=>[c(s(p(v)(`settings.dataManagement`)),1)]),_:1}),l(p(y),null,{default:n(()=>[c(s(p(v)(`settings.dataManagementDesc`)),1)]),_:1})]),_:1}),l(p(A),{class:`space-y-4`},{default:n(()=>[m(`div`,I,[m(`div`,L,[m(`h3`,R,s(p(v)(`settings.exportData`)),1),m(`p`,ge,s(p(v)(`settings.exportDataDesc`)),1)]),l(p(b),{onClick:Ze,disabled:H.value},{default:n(()=>[l(p(ne),{class:`mr-2 h-4 w-4`}),c(` `+s(H.value?p(v)(`settings.exporting`):p(v)(`settings.export`)),1)]),_:1},8,[`disabled`])]),m(`div`,_e,[m(`div`,ve,[m(`h3`,ye,s(p(v)(`settings.importData`)),1),m(`p`,be,s(p(v)(`settings.importDataDesc`)),1)]),m(`div`,xe,[m(`input`,{ref_key:`fileInputRef`,ref:V,type:`file`,accept:`.json`,class:`hidden`,onChange:$e},null,544),l(p(b),{onClick:Qe,variant:`outline`},{default:n(()=>[l(p(ae),{class:`mr-2 h-4 w-4`}),c(` `+s(p(v)(`settings.selectFile`)),1)]),_:1})])]),m(`div`,Se,[m(`div`,Ce,[m(`h3`,we,s(p(v)(`settings.clearData`)),1),m(`p`,Te,s(p(v)(`settings.clearDataDesc`)),1)]),l(p(b),{onClick:tt,variant:`destructive`},{default:n(()=>[l(p(oe),{class:`mr-2 h-4 w-4`}),c(` `+s(p(v)(`settings.clear`)),1)]),_:1})])]),_:1})]),_:1}),l(p(O),null,{default:n(()=>[l(p(w),null,{default:n(()=>[l(p(S),null,{default:n(()=>[c(s(p(v)(`settings.gameSettings`)),1)]),_:1}),l(p(y),null,{default:n(()=>[c(s(p(v)(`settings.gameSettingsDesc`)),1)]),_:1})]),_:1}),l(p(A),{class:`space-y-4`},{default:n(()=>[m(`div`,Ee,[m(`div`,De,[m(`h3`,Oe,s(p(v)(`settings.gameSpeed`)),1),m(`p`,ke,s(p(v)(`settings.gameSpeedDesc`)),1)]),m(`div`,Ae,[m(`div`,je,[l(p(b),{onClick:it,variant:`outline`,size:`sm`,disabled:p(B).gameSpeed<=.5},{default:n(()=>[...i[2]||=[c(`-`,-1)]]),_:1},8,[`disabled`]),m(`span`,Me,s(p(B).gameSpeed||1)+`x`,1),l(p(b),{onClick:rt,variant:`outline`,size:`sm`,disabled:p(B).gameSpeed>=10},{default:n(()=>[...i[3]||=[c(`+`,-1)]]),_:1},8,[`disabled`])]),l(p(b),{onClick:at,variant:`ghost`,size:`sm`},{default:n(()=>[c(s(p(v)(`settings.reset`)),1)]),_:1})])]),m(`div`,Ne,[m(`div`,Pe,[m(`h3`,Fe,s(p(v)(`settings.gamePause`)),1),m(`p`,Ie,s(p(v)(`settings.gamePauseDesc`)),1)]),l(p(b),{onClick:ot,variant:p(B).isPaused?`default`:`outline`},{default:n(()=>[(t(),o(e(p(B).isPaused?p(se):p(re)),{class:`mr-2 h-4 w-4`})),c(` `+s(p(B).isPaused?p(v)(`settings.resume`):p(v)(`settings.pause`)),1)]),_:1},8,[`variant`])])]),_:1})]),_:1}),l(p(O),null,{default:n(()=>[l(p(w),null,{default:n(()=>[l(p(S),null,{default:n(()=>[c(s(p(v)(`settings.about`)),1)]),_:1})]),_:1}),l(p(A),{class:`space-y-4`},{default:n(()=>[m(`div`,Le,[m(`div`,z,[m(`span`,Re,s(p(v)(`settings.version`))+`:`,1),m(`span`,ze,s(p(C).version),1)]),m(`div`,Be,[m(`span`,Ve,s(p(v)(`settings.buildDate`))+`:`,1),m(`span`,He,s(p(C).buildDate),1)]),m(`div`,Ue,[l(p(b),{onClick:Xe,variant:`outline`,size:`sm`,disabled:U.value||!Y.value,class:`w-full`},{default:n(()=>[l(p(ce),{class:a([`mr-2 h-4 w-4`,{"animate-spin":U.value}])},null,8,[`class`]),U.value?(t(),h(f,{key:0},[c(s(p(v)(`settings.checking`)),1)],64)):!Y.value&&W.value?(t(),h(f,{key:1},[c(s(W.value),1)],64)):(t(),h(f,{key:2},[c(s(p(v)(`settings.checkUpdate`)),1)],64))]),_:1},8,[`disabled`])])]),m(`div`,We,[m(`h3`,Ge,s(p(v)(`settings.community`)),1),m(`div`,Ke,[l(p(b),{variant:`outline`,class:`w-full justify-start`,onClick:Je},{default:n(()=>[l(p(ie),{class:`mr-2 h-4 w-4`}),c(` `+s(p(v)(`settings.github`)),1)]),_:1}),p(B).locale===`zh-CN`||p(B).locale===`zh-TW`?(t(),o(p(b),{key:0,variant:`outline`,class:`w-full justify-start`,onClick:Ye},{default:n(()=>[l(p(te),{class:`mr-2 h-4 w-4`}),c(` `+s(p(v)(`settings.qqGroup`))+` `,1),m(`span`,qe,s(p(C).qq),1)]),_:1})):ee(``,!0)])])]),_:1})]),_:1}),l(p(fe),{open:G.value,"onUpdate:open":i[0]||=e=>G.value=e},{default:n(()=>[l(p(x),null,{default:n(()=>[l(p(ue),null,{default:n(()=>[l(p(D),null,{default:n(()=>[c(s(K.value),1)]),_:1}),l(p(pe),null,{default:n(()=>[c(s(q.value),1)]),_:1})]),_:1}),l(p(E),null,{default:n(()=>[l(p(me),{onClick:ct},{default:n(()=>[c(s(p(v)(`common.cancel`)),1)]),_:1}),l(p(de),{onClick:st},{default:n(()=>[c(s(p(v)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),l(T,{open:Q.value,"onUpdate:open":i[1]||=e=>Q.value=e,"version-info":$.value},null,8,[`open`,`version-info`])]))}});export{B as default}; \ No newline at end of file diff --git a/docs/assets/ShipyardView-7hLJW6aW.js b/docs/assets/ShipyardView-7hLJW6aW.js deleted file mode 100644 index c54c89c..0000000 --- a/docs/assets/ShipyardView-7hLJW6aW.js +++ /dev/null @@ -1 +0,0 @@ -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-DGvz1MHk.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-BjAei3DC.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-DRmrr36X.js";import{t as D}from"./useGameConfig-CVlwnWOp.js";import{t as O}from"./AlertDialog-Bf_xgpJz.js";import{t as k}from"./CardUnlockOverlay-CVKjkS94.js";import{t as A}from"./UnlockRequirement-p2W4t6RX.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/ShipyardView-DRH89hEQ.js b/docs/assets/ShipyardView-DRH89hEQ.js deleted file mode 100644 index f95aad8..0000000 --- a/docs/assets/ShipyardView-DRH89hEQ.js +++ /dev/null @@ -1 +0,0 @@ -import{$t as e,En as t,On as n,Rn as r,Yn as i,ar as a,c as o,cn as ee,cr as s,dn as c,fn as l,ln as u,o as te,on as d,pn as ne,r as re,rn as f,rr as p,s as ie,sn as m,sr as ae,tt as oe,un as h,zn as g}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-vue-router-0mfLVB6Y.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import"./vendor-icons-Ccm2_GPI.js";import{t as se}from"./CardDescription-DduF5EVY.js";import{_,d as v}from"./game-config-DRP-gbpS.js";import{$ as y,A as ce,F as le,I as ue,J as de,L as b,M as fe,N as pe,V as x,X as S,d as C,f as w,j as T,k as E,l as D,m as O,o as k,p as A,u as j,x as M}from"./index-B4KMqZ_y.js";import{t as N}from"./useGameConfig-DLqfPHtW.js";import{t as P}from"./CardUnlockOverlay-CspXlcWR.js";import{t as F}from"./UnlockRequirement-DJ9dN5JL.js";var I={key:0,class:`container mx-auto p-4 sm:p-6`},L={class:`text-2xl sm:text-3xl font-bold mb-4 sm:mb-6`},R={class:`mb-4 sm:mb-6 p-3 sm:p-4 bg-muted/50 rounded-lg border`},z={class:`flex items-center justify-between`},B={class:`text-sm sm:text-base font-medium`},me={class:`text-sm sm:text-base font-bold`},he={class:`mt-2`},ge={class:`w-full bg-background rounded-full h-2.5 sm:h-3 overflow-hidden`},_e={class:`grid grid-cols-2 sm:grid-cols-3 gap-3 sm:gap-4`},V={class:`space-y-3 sm:space-y-4`},ve={class:`grid grid-cols-2 gap-2 text-xs sm:text-sm`},ye={class:`text-muted-foreground`},be={class:`font-medium`},xe={class:`text-muted-foreground`},Se={class:`font-medium`},Ce={class:`text-muted-foreground`},we={class:`font-medium`},Te={class:`text-muted-foreground`},Ee={class:`font-medium`},De={class:`text-xs sm:text-sm space-y-1.5 sm:space-y-2`},Oe={class:`text-muted-foreground mb-1 sm:mb-2`},ke={class:`space-y-1 sm:space-y-1.5`},Ae={class:`text-xs`},je={class:`space-y-2`},Me={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`},Ne={class:`font-medium text-muted-foreground`},Pe={class:`space-y-1 sm:space-y-1.5`},Fe={class:`text-xs`},H=ne({__name:`ShipyardView`,setup(ne){let H=y(),Ie=M(),{t:U}=S(),{SHIPS:W}=N(),G=d(()=>H.currentPlanet),K=i(!1),q=i(``),J=i(``),Y=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`darkMatter`}],X=d(()=>G.value?ie(G.value.fleet):0),Z=d(()=>G.value?o(G.value,H.player.technologies):0),Q=i({[_.LightFighter]:0,[_.HeavyFighter]:0,[_.Cruiser]:0,[_.Battleship]:0,[_.Battlecruiser]:0,[_.Bomber]:0,[_.Destroyer]:0,[_.SmallCargo]:0,[_.LargeCargo]:0,[_.ColonyShip]:0,[_.Recycler]:0,[_.EspionageProbe]:0,[_.SolarSatellite]:0,[_.DarkMatterHarvester]:0,[_.Deathstar]:0}),Le=(e,t)=>{if(!H.currentPlanet||!te(H.currentPlanet,e,t,H.player.technologies).valid)return!1;let n=re(H.currentPlanet,e,t,H.player.officers);return H.currentPlanet.buildQueue.push(n),!0},Re=e=>{let t=Q.value[e];if(t<=0){q.value=U(`shipyardView.inputError`),J.value=U(`shipyardView.inputErrorMessage`),K.value=!0;return}Le(e,t)?Q.value[e]=0:(q.value=U(`shipyardView.buildFailed`),J.value=U(`shipyardView.buildFailedMessage`),K.value=!0)},ze=e=>{if(!G.value)return!1;let t=Q.value[e];if(t<=0)return!1;let n=W.value[e],r={metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t};return oe(G.value,H.player.technologies,n.requirements)&&G.value.resources.metal>=r.metal&&G.value.resources.crystal>=r.crystal&&G.value.resources.deuterium>=r.deuterium&&G.value.resources.darkMatter>=r.darkMatter},$=e=>{let t=Q.value[e],n=W.value[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t}};return(i,o)=>G.value?(t(),h(`div`,I,[l(F,{"required-building":p(v).Shipyard,"required-level":1},null,8,[`required-building`]),m(`h1`,L,s(p(U)(`shipyardView.title`)),1),m(`div`,R,[m(`div`,z,[m(`div`,B,s(p(U)(`shipyardView.fleetStorage`))+`:`,1),m(`div`,me,[m(`span`,{class:a(X.value>Z.value?`text-destructive`:`text-primary`)},s(p(k)(X.value)),3),o[1]||=m(`span`,{class:`text-muted-foreground mx-1`},`/`,-1),m(`span`,null,s(p(k)(Z.value)),1)])]),m(`div`,he,[m(`div`,ge,[m(`div`,{class:a([`h-full transition-all duration-300`,X.value>Z.value?`bg-destructive`:`bg-primary`]),style:ae({width:`${Math.min(X.value/Z.value*100,100)}%`})},null,6)])])]),m(`div`,_e,[(t(!0),h(f,null,n(Object.values(p(_)),i=>(t(),ee(p(O),{key:i,class:`relative`},{default:r(()=>[l(P,{requirements:p(W)[i].requirements},null,8,[`requirements`]),l(p(w),{class:`pb-3`},{default:r(()=>[l(p(C),{class:`text-sm sm:text-base lg:text-lg cursor-pointer hover:text-primary transition-colors underline decoration-dotted underline-offset-4 mb-2`,onClick:e=>p(Ie).openShip(i)},{default:r(()=>[c(s(p(W)[i].name),1)]),_:2},1032,[`onClick`]),l(p(se),{class:`text-xs sm:text-sm`},{default:r(()=>[c(s(p(W)[i].description),1)]),_:2},1024)]),_:2},1024),l(p(A),null,{default:r(()=>[m(`div`,V,[m(`div`,ve,[m(`div`,null,[m(`p`,ye,s(p(U)(`shipyardView.attack`)),1),m(`p`,be,s(p(W)[i].attack),1)]),m(`div`,null,[m(`p`,xe,s(p(U)(`shipyardView.shield`)),1),m(`p`,Se,s(p(W)[i].shield),1)]),m(`div`,null,[m(`p`,Ce,s(p(U)(`shipyardView.speed`)),1),m(`p`,we,s(p(W)[i].speed),1)]),m(`div`,null,[m(`p`,Te,s(p(U)(`shipyardView.cargoCapacity`)),1),m(`p`,Ee,s(p(k)(p(W)[i].cargoCapacity)),1)])]),m(`div`,De,[m(`p`,Oe,s(p(U)(`shipyardView.unitCost`))+`:`,1),m(`div`,ke,[(t(),h(f,null,n(Y,t=>g(m(`div`,{key:t.key,class:`flex items-center gap-1.5 sm:gap-2`},[l(b,{type:t.key,size:`sm`},null,8,[`type`]),m(`span`,Ae,s(p(U)(`resources.${t.key}`))+`:`,1),m(`span`,{class:a([`font-medium text-xs sm:text-sm`,p(D)(G.value.resources[t.key],p(W)[i].cost[t.key])])},s(p(k)(p(W)[i].cost[t.key])),3)]),[[e,t.key!==`darkMatter`||p(W)[i].cost.darkMatter>0]])),64))])]),m(`div`,je,[l(p(j),{for:`quantity-${i}`,class:`text-xs sm:text-sm`},{default:r(()=>[c(s(p(U)(`shipyardView.buildQuantity`)),1)]),_:1},8,[`for`]),l(p(x),{id:`quantity-${i}`,modelValue:Q.value[i],"onUpdate:modelValue":e=>Q.value[i]=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:`0`,class:`text-sm`},null,8,[`id`,`modelValue`,`onUpdate:modelValue`])]),Q.value[i]>0?(t(),h(`div`,Me,[m(`p`,Ne,s(p(U)(`shipyardView.totalCost`))+`:`,1),m(`div`,Pe,[(t(),h(f,null,n(Y,t=>g(m(`div`,{key:t.key,class:`flex items-center gap-1.5 sm:gap-2`},[l(b,{type:t.key,size:`sm`},null,8,[`type`]),m(`span`,Fe,s(p(U)(`resources.${t.key}`))+`:`,1),m(`span`,{class:a([`font-medium text-xs sm:text-sm`,p(D)(G.value.resources[t.key],$(i)[t.key])])},s(p(k)($(i)[t.key])),3)]),[[e,t.key!==`darkMatter`||$(i).darkMatter>0]])),64))])])):u(``,!0),l(p(de),{onClick:e=>Re(i),disabled:!ze(i),class:`w-full`},{default:r(()=>[c(s(p(U)(`shipyardView.build`)),1)]),_:1},8,[`onClick`,`disabled`])])]),_:2},1024)]),_:2},1024))),128))]),l(p(ue),{open:K.value,"onUpdate:open":o[0]||=e=>K.value=e},{default:r(()=>[l(p(pe),null,{default:r(()=>[l(p(ce),null,{default:r(()=>[l(p(E),null,{default:r(()=>[c(s(q.value),1)]),_:1}),l(p(fe),{class:`whitespace-pre-line`},{default:r(()=>[c(s(J.value),1)]),_:1})]),_:1}),l(p(T),null,{default:r(()=>[l(p(le),null,{default:r(()=>[c(s(p(U)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])])):u(``,!0)}});export{H as default}; \ No newline at end of file diff --git a/docs/assets/TabsTrigger-BnZOhHbD.js b/docs/assets/TabsTrigger-BnZOhHbD.js deleted file mode 100644 index 138fcfb..0000000 --- a/docs/assets/TabsTrigger-BnZOhHbD.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Rn as t,cn as n,hn as r,kn as i,or as a,pn as o,rr as s,xn as c}from"./game-logic-BBFCPVtv.js";import{l}from"./vendor-others-Bce0hM6h.js";import{$ as u,c as d,et as f,l as p,s as m,u as h}from"./vendor-reka-ui-DR3m_AkV.js";import{Y as g}from"./index-B4KMqZ_y.js";var _=o({__name:`Tabs`,props:{defaultValue:{},orientation:{},dir:{},activationMode:{},modelValue:{},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},emits:[`update:modelValue`],setup(o,{emit:d}){let f=o,p=d,m=u(l(f,`class`),p);return(o,l)=>(e(),n(s(h),c({"data-slot":`tabs`},s(m),{class:s(g)(`flex flex-col gap-2`,f.class)}),{default:t(e=>[i(o.$slots,`default`,a(r(e)))]),_:3},16,[`class`]))}}),v=o({__name:`TabsContent`,props:{value:{},forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(r){let a=r,o=l(a,`class`);return(r,l)=>(e(),n(s(p),c({"data-slot":`tabs-content`,class:s(g)(`flex-1 outline-none`,a.class)},s(o)),{default:t(()=>[i(r.$slots,`default`)]),_:3},16,[`class`]))}}),y=o({__name:`TabsList`,props:{loop:{type:Boolean},asChild:{type:Boolean},as:{},class:{},tabCount:{}},setup(r){let a=r,o=l(a,`class`,`tabCount`);return(l,u)=>(e(),n(s(d),c({"data-slot":`tabs-list`},s(o),{class:s(g)(`bg-muted text-muted-foreground inline-flex w-fit items-center justify-center rounded-lg p-[3px]`,r.tabCount&&r.tabCount>3?r.tabCount>6?`h-[85px] sm:h-9`:`h-[65px] sm:h-9`:`h-9`,a.class)}),{default:t(()=>[i(l.$slots,`default`)]),_:3},16,[`class`]))}}),b=o({__name:`TabsTrigger`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(r){let a=r,o=f(l(a,`class`));return(r,l)=>(e(),n(s(m),c({"data-slot":`tabs-trigger`,class:s(g)(`inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-all`,`text-muted-foreground hover:text-foreground`,`data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-md data-[state=active]:border-border`,`dark:data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-border dark:data-[state=active]:shadow-lg`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring focus-visible:ring-[3px] focus-visible:outline-1`,`disabled:pointer-events-none disabled:opacity-50`,`[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,a.class)},s(o)),{default:t(()=>[i(r.$slots,`default`)]),_:3},16,[`class`]))}});export{_ as i,y as n,v as r,b as t}; \ No newline at end of file diff --git a/docs/assets/TooltipProvider-Cspoy8HK.js b/docs/assets/TooltipProvider-Cspoy8HK.js deleted file mode 100644 index 193e44b..0000000 --- a/docs/assets/TooltipProvider-Cspoy8HK.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Rn as t,cn as n,hn as r,kn as i,or as a,pn as o,rr as s}from"./game-logic-BBFCPVtv.js";import{a as c}from"./vendor-reka-ui-DR3m_AkV.js";var l=o({__name:`TooltipProvider`,props:{delayDuration:{default:0},skipDelayDuration:{},disableHoverableContent:{type:Boolean},disableClosingTrigger:{type:Boolean},disabled:{type:Boolean},ignoreNonKeyboardFocus:{type:Boolean}},setup(o){let l=o;return(o,u)=>(e(),n(s(c),a(r(l)),{default:t(()=>[i(o.$slots,`default`)]),_:3},16))}});export{l as t}; \ No newline at end of file diff --git a/docs/assets/UnlockRequirement-DJ9dN5JL.js b/docs/assets/UnlockRequirement-DJ9dN5JL.js deleted file mode 100644 index 79d5af7..0000000 --- a/docs/assets/UnlockRequirement-DJ9dN5JL.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,Rn as t,cr as n,dn as r,fn as i,ln as a,on as o,pn as s,rr as c,sn as l,un as u}from"./game-logic-BBFCPVtv.js";import{o as d}from"./vendor-vue-router-0mfLVB6Y.js";import{Q as f,k as p}from"./vendor-icons-Ccm2_GPI.js";import{t as m}from"./CardDescription-DduF5EVY.js";import{$ as h,J as g,K as _,X as v,d as y,f as b,m as x,p as S}from"./index-B4KMqZ_y.js";import{t as C}from"./useGameConfig-DLqfPHtW.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=s({__name:`UnlockRequirement`,props:{requiredBuilding:{},requiredLevel:{}},setup(s){let N=s,P=d(),F=h(),{t:I}=v(),{BUILDINGS:L}=C(),R=o(()=>L.value[N.requiredBuilding]?.name||N.requiredBuilding),z=o(()=>F.currentPlanet&&F.currentPlanet.buildings[N.requiredBuilding]||0),B=o(()=>z.value>=N.requiredLevel),V=()=>{P.push(`/buildings`)};return(o,d)=>B.value?a(``,!0):(e(),u(`div`,w,[i(c(x),{class:`max-w-md w-full`},{default:t(()=>[i(c(b),{class:`text-center`},{default:t(()=>[l(`div`,T,[l(`div`,E,[i(c(p),{size:48,class:`text-muted-foreground`})])]),i(c(y),{class:`text-xl sm:text-2xl`},{default:t(()=>[r(n(c(I)(`common.featureLocked`)),1)]),_:1}),i(c(m),{class:`text-sm sm:text-base`},{default:t(()=>[r(n(c(I)(`common.unlockRequired`)),1)]),_:1})]),_:1}),i(c(S),{class:`space-y-4`},{default:t(()=>[l(`div`,D,[l(`p`,O,n(c(I)(`common.requiredBuilding`))+`:`,1),l(`div`,k,[l(`span`,A,n(R.value),1),i(c(_),{variant:`default`},{default:t(()=>[r(`Lv `+n(s.requiredLevel),1)]),_:1})]),z.value===void 0?a(``,!0):(e(),u(`p`,j,n(c(I)(`common.currentLevel`))+`: Lv `+n(z.value),1))]),l(`div`,M,[i(c(g),{onClick:V,class:`flex-1`},{default:t(()=>[i(c(f),{size:16,class:`mr-2`}),r(` `+n(c(I)(`common.goToBuildings`)),1)]),_:1})])]),_:1})]),_:1})]))}});export{N as t}; \ No newline at end of file diff --git a/docs/assets/UnlockRequirement-p2W4t6RX.js b/docs/assets/UnlockRequirement-p2W4t6RX.js deleted file mode 100644 index 4b924db..0000000 --- a/docs/assets/UnlockRequirement-p2W4t6RX.js +++ /dev/null @@ -1 +0,0 @@ -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-BjAei3DC.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-DRmrr36X.js";import{t as C}from"./useGameConfig-CVlwnWOp.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/battle.worker-CkRIHUu5.js b/docs/assets/battle.worker-CkRIHUu5.js deleted file mode 100644 index 7959886..0000000 --- a/docs/assets/battle.worker-CkRIHUu5.js +++ /dev/null @@ -1 +0,0 @@ -(function(){let e={MetalMine:`metalMine`,CrystalMine:`crystalMine`,DeuteriumSynthesizer:`deuteriumSynthesizer`,SolarPlant:`solarPlant`,FusionReactor:`fusionReactor`,RoboticsFactory:`roboticsFactory`,NaniteFactory:`naniteFactory`,Shipyard:`shipyard`,ResearchLab:`researchLab`,MetalStorage:`metalStorage`,CrystalStorage:`crystalStorage`,DeuteriumTank:`deuteriumTank`,DarkMatterCollector:`darkMatterCollector`,DarkMatterTank:`darkMatterTank`,MissileSilo:`missileSilo`,Terraformer:`terraformer`,LunarBase:`lunarBase`,SensorPhalanx:`sensorPhalanx`,JumpGate:`jumpGate`,PlanetDestroyerFactory:`planetDestroyerFactory`},t={EnergyTechnology:`energyTechnology`,LaserTechnology:`laserTechnology`,IonTechnology:`ionTechnology`,HyperspaceTechnology:`hyperspaceTechnology`,PlasmaTechnology:`plasmaTechnology`,ComputerTechnology:`computerTechnology`,EspionageTechnology:`espionageTechnology`,CombustionDrive:`combustionDrive`,ImpulseDrive:`impulseDrive`,HyperspaceDrive:`hyperspaceDrive`,WeaponsTechnology:`weaponsTechnology`,ShieldingTechnology:`shieldingTechnology`,ArmourTechnology:`armourTechnology`,Astrophysics:`astrophysics`,GravitonTechnology:`gravitonTechnology`,DarkMatterTechnology:`darkMatterTechnology`,TerraformingTechnology:`terraformingTechnology`,PlanetDestructionTech:`planetDestructionTech`},n={RocketLauncher:`rocketLauncher`,LightLaser:`lightLaser`,HeavyLaser:`heavyLaser`,GaussCannon:`gaussCannon`,IonCannon:`ionCannon`,PlasmaTurret:`plasmaTurret`,SmallShieldDome:`smallShieldDome`,LargeShieldDome:`largeShieldDome`,AntiBallisticMissile:`antiBallisticMissile`,InterplanetaryMissile:`interplanetaryMissile`,PlanetaryShield:`planetaryShield`},r={LightFighter:`lightFighter`,HeavyFighter:`heavyFighter`,Cruiser:`cruiser`,Battleship:`battleship`,Battlecruiser:`battlecruiser`,Bomber:`bomber`,Destroyer:`destroyer`,SmallCargo:`smallCargo`,LargeCargo:`largeCargo`,ColonyShip:`colonyShip`,Recycler:`recycler`,EspionageProbe:`espionageProbe`,SolarSatellite:`solarSatellite`,DarkMatterHarvester:`darkMatterHarvester`,Deathstar:`deathstar`},i={Commander:`commander`,Admiral:`admiral`,Engineer:`engineer`,Geologist:`geologist`,Technocrat:`technocrat`,DarkMatterSpecialist:`darkMatterSpecialist`};e.MetalMine,e.MetalMine,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.CrystalMine,e.CrystalMine,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.DeuteriumSynthesizer,e.DeuteriumSynthesizer,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.SolarPlant,e.SolarPlant,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.FusionReactor,e.FusionReactor,t.EnergyTechnology,e.DeuteriumSynthesizer,e.RoboticsFactory,t.EnergyTechnology,e.RoboticsFactory,t.EnergyTechnology,e.NaniteFactory,e.RoboticsFactory,e.RoboticsFactory,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.ResearchLab,e.SolarPlant,e.ResearchLab,e.SolarPlant,e.MetalMine,e.CrystalMine,e.NaniteFactory,e.NaniteFactory,e.RoboticsFactory,e.ResearchLab,e.Shipyard,t.ComputerTechnology,e.ResearchLab,e.Shipyard,t.ComputerTechnology,e.Shipyard,e.Shipyard,e.RoboticsFactory,e.RoboticsFactory,e.ResearchLab,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,e.ResearchLab,e.ResearchLab,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.RoboticsFactory,e.MetalMine,e.CrystalMine,e.DeuteriumSynthesizer,e.RoboticsFactory,e.NaniteFactory,t.EnergyTechnology,e.MetalStorage,e.MetalStorage,e.MetalMine,e.MetalMine,e.RoboticsFactory,e.MetalMine,e.RoboticsFactory,e.CrystalStorage,e.CrystalStorage,e.CrystalMine,e.CrystalMine,e.RoboticsFactory,e.CrystalMine,e.RoboticsFactory,e.DeuteriumTank,e.DeuteriumTank,e.DeuteriumSynthesizer,e.DeuteriumSynthesizer,e.RoboticsFactory,e.DeuteriumSynthesizer,e.RoboticsFactory,e.DarkMatterCollector,e.DarkMatterCollector,e.ResearchLab,t.DarkMatterTechnology,e.ResearchLab,t.DarkMatterTechnology,e.RoboticsFactory,e.ResearchLab,t.DarkMatterTechnology,e.NaniteFactory,e.DarkMatterTank,e.DarkMatterTank,e.DarkMatterCollector,t.DarkMatterTechnology,e.DarkMatterCollector,e.RoboticsFactory,e.DarkMatterCollector,e.RoboticsFactory,t.DarkMatterTechnology,e.MissileSilo,e.MissileSilo,e.Shipyard,e.Shipyard,t.ComputerTechnology,e.Shipyard,t.ComputerTechnology,e.NaniteFactory,e.Terraformer,e.Terraformer,e.ResearchLab,e.RoboticsFactory,t.TerraformingTechnology,e.ResearchLab,t.TerraformingTechnology,e.NaniteFactory,e.ResearchLab,t.TerraformingTechnology,e.NaniteFactory,e.LunarBase,e.LunarBase,e.RoboticsFactory,e.RoboticsFactory,e.NaniteFactory,e.SensorPhalanx,e.SensorPhalanx,e.LunarBase,e.LunarBase,t.ComputerTechnology,e.LunarBase,t.ComputerTechnology,e.NaniteFactory,e.JumpGate,e.JumpGate,e.LunarBase,t.HyperspaceTechnology,e.LunarBase,t.HyperspaceTechnology,e.NaniteFactory,e.PlanetDestroyerFactory,e.PlanetDestroyerFactory,e.Shipyard,e.RoboticsFactory,e.NaniteFactory,t.PlanetDestructionTech,e.Shipyard,e.NaniteFactory,t.PlanetDestructionTech,t.HyperspaceTechnology,t.EnergyTechnology,t.EnergyTechnology,e.ResearchLab,e.ResearchLab,e.SolarPlant,e.ResearchLab,e.SolarPlant,e.RoboticsFactory,e.ResearchLab,e.RoboticsFactory,e.NaniteFactory,t.LaserTechnology,t.LaserTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.IonTechnology,t.IonTechnology,e.ResearchLab,t.LaserTechnology,t.EnergyTechnology,e.ResearchLab,t.LaserTechnology,t.EnergyTechnology,e.ResearchLab,t.LaserTechnology,e.NaniteFactory,t.HyperspaceTechnology,t.HyperspaceTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.NaniteFactory,t.PlasmaTechnology,t.PlasmaTechnology,e.ResearchLab,t.EnergyTechnology,t.LaserTechnology,t.IonTechnology,e.ResearchLab,t.EnergyTechnology,t.IonTechnology,e.NaniteFactory,e.ResearchLab,t.EnergyTechnology,t.IonTechnology,e.NaniteFactory,t.ComputerTechnology,t.ComputerTechnology,e.ResearchLab,e.ResearchLab,e.ResearchLab,e.RoboticsFactory,e.ResearchLab,e.NaniteFactory,t.EspionageTechnology,t.EspionageTechnology,e.ResearchLab,e.ResearchLab,t.ComputerTechnology,e.ResearchLab,t.ComputerTechnology,t.WeaponsTechnology,t.WeaponsTechnology,e.ResearchLab,e.ResearchLab,e.Shipyard,e.ResearchLab,e.Shipyard,e.NaniteFactory,t.ShieldingTechnology,t.ShieldingTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.NaniteFactory,t.ArmourTechnology,t.ArmourTechnology,e.ResearchLab,e.ResearchLab,e.Shipyard,e.ResearchLab,e.Shipyard,e.NaniteFactory,t.Astrophysics,t.Astrophysics,e.ResearchLab,t.EspionageTechnology,t.ImpulseDrive,e.ResearchLab,t.EspionageTechnology,e.ResearchLab,t.HyperspaceTechnology,e.NaniteFactory,t.GravitonTechnology,t.GravitonTechnology,e.ResearchLab,t.CombustionDrive,t.CombustionDrive,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.ImpulseDrive,t.ImpulseDrive,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.Shipyard,e.ResearchLab,t.EnergyTechnology,e.Shipyard,t.HyperspaceDrive,t.HyperspaceDrive,e.ResearchLab,t.HyperspaceTechnology,e.ResearchLab,t.HyperspaceTechnology,e.Shipyard,e.ResearchLab,t.HyperspaceTechnology,e.NaniteFactory,t.DarkMatterTechnology,t.DarkMatterTechnology,e.ResearchLab,t.HyperspaceTechnology,e.ResearchLab,t.HyperspaceTechnology,e.RoboticsFactory,t.EnergyTechnology,e.ResearchLab,t.HyperspaceTechnology,e.NaniteFactory,t.EnergyTechnology,t.TerraformingTechnology,t.TerraformingTechnology,e.ResearchLab,t.EnergyTechnology,e.ResearchLab,t.EnergyTechnology,e.RoboticsFactory,e.ResearchLab,t.EnergyTechnology,e.NaniteFactory,t.PlanetDestructionTech,t.PlanetDestructionTech,e.ResearchLab,t.HyperspaceTechnology,t.HyperspaceDrive,t.PlasmaTechnology,e.ResearchLab,t.HyperspaceTechnology,t.HyperspaceDrive,t.PlasmaTechnology,e.NaniteFactory;let a={[r.LightFighter]:{id:r.LightFighter,name:`轻型战斗机`,description:`基础战斗单位`,cost:{metal:3e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,cargoCapacity:50,attack:50,shield:10,armor:400,speed:12500,fuelConsumption:20,storageUsage:5,requirements:{[e.Shipyard]:1,[t.CombustionDrive]:1}},[r.HeavyFighter]:{id:r.HeavyFighter,name:`重型战斗机`,description:`强力战斗单位`,cost:{metal:6e3,crystal:4e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:100,attack:150,shield:25,armor:1e3,speed:1e4,fuelConsumption:75,storageUsage:10,requirements:{[e.Shipyard]:3,[t.ImpulseDrive]:2}},[r.Cruiser]:{id:r.Cruiser,name:`巡洋舰`,description:`中型战舰`,cost:{metal:2e4,crystal:7e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:800,attack:400,shield:50,armor:2700,speed:15e3,fuelConsumption:300,storageUsage:15,requirements:{[e.Shipyard]:5,[t.ImpulseDrive]:4,[t.IonTechnology]:2}},[r.Battleship]:{id:r.Battleship,name:`战列舰`,description:`重型战舰`,cost:{metal:45e3,crystal:15e3,deuterium:0,darkMatter:0,energy:0},buildTime:90,cargoCapacity:1500,attack:1e3,shield:200,armor:6e3,speed:1e4,fuelConsumption:500,storageUsage:25,requirements:{[e.Shipyard]:7,[t.HyperspaceDrive]:4}},[r.Battlecruiser]:{id:r.Battlecruiser,name:`战列巡洋舰`,description:`快速强大的战斗舰船,擅长攻击战列舰`,cost:{metal:3e4,crystal:4e4,deuterium:15e3,darkMatter:0,energy:0},buildTime:70,cargoCapacity:750,attack:700,shield:400,armor:7e3,speed:1e4,fuelConsumption:250,storageUsage:20,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.HyperspaceTechnology]:5,[t.LaserTechnology]:12}},[r.Bomber]:{id:r.Bomber,name:`轰炸机`,description:`专门对付防御设施的轰炸舰`,cost:{metal:5e4,crystal:25e3,deuterium:15e3,darkMatter:0,energy:0},buildTime:100,cargoCapacity:500,attack:1e3,shield:500,armor:7500,speed:4e3,fuelConsumption:700,storageUsage:35,requirements:{[e.Shipyard]:8,[t.ImpulseDrive]:6,[t.PlasmaTechnology]:5}},[r.Destroyer]:{id:r.Destroyer,name:`驱逐舰`,description:`擅长摧毁大型舰船的猎杀者`,cost:{metal:6e4,crystal:5e4,deuterium:15e3,darkMatter:0,energy:0},buildTime:120,cargoCapacity:2e3,attack:2e3,shield:500,armor:11e3,speed:5e3,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:9,[t.HyperspaceDrive]:6,[t.HyperspaceTechnology]:5}},[r.SmallCargo]:{id:r.SmallCargo,name:`小型运输船`,description:`运输资源`,cost:{metal:2e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:15,cargoCapacity:5e3,attack:5,shield:10,armor:400,speed:5e3,fuelConsumption:10,storageUsage:10,requirements:{[e.Shipyard]:2,[t.CombustionDrive]:2}},[r.LargeCargo]:{id:r.LargeCargo,name:`大型运输船`,description:`大量运输资源`,cost:{metal:6e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:25e3,attack:5,shield:25,armor:1200,speed:7500,fuelConsumption:50,storageUsage:20,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.ColonyShip]:{id:r.ColonyShip,name:`殖民船`,description:`建立新殖民地`,cost:{metal:1e4,crystal:2e4,deuterium:1e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:7500,attack:50,shield:100,armor:3e3,speed:2500,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:4,[t.ImpulseDrive]:3}},[r.Recycler]:{id:r.Recycler,name:`回收船`,description:`回收废墟资源`,cost:{metal:1e4,crystal:6e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:2e4,attack:1,shield:10,armor:1600,speed:2e3,fuelConsumption:300,storageUsage:30,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.EspionageProbe]:{id:r.EspionageProbe,name:`间谍探测器`,description:`侦察敌方星球`,cost:{metal:0,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:5,cargoCapacity:5,attack:0,shield:0,armor:100,speed:1e8,fuelConsumption:1,storageUsage:2,requirements:{[e.Shipyard]:3,[t.CombustionDrive]:3}},[r.SolarSatellite]:{id:r.SolarSatellite,name:`太阳能卫星`,description:`提供额外能源,每个产生50点能量`,cost:{metal:0,crystal:2e3,deuterium:500,darkMatter:0,energy:0},buildTime:10,cargoCapacity:0,attack:1,shield:1,armor:200,speed:0,fuelConsumption:0,storageUsage:1,requirements:{[e.Shipyard]:1}},[r.DarkMatterHarvester]:{id:r.DarkMatterHarvester,name:`暗物质采集船`,description:`专门用于采集暗物质的特殊飞船`,cost:{metal:1e5,crystal:15e4,deuterium:5e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:1e3,attack:10,shield:50,armor:2e3,speed:5e3,fuelConsumption:500,storageUsage:50,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.DarkMatterTechnology]:1}},[r.Deathstar]:{id:r.Deathstar,name:`死星`,description:`终极武器,能够摧毁整个行星`,cost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:5e4,energy:0},buildTime:600,cargoCapacity:1e6,attack:2e5,shield:5e4,armor:9e5,speed:100,fuelConsumption:1,storageUsage:100,requirements:{[e.PlanetDestroyerFactory]:3,[t.PlanetDestructionTech]:7,[t.HyperspaceDrive]:7}}},o={[n.RocketLauncher]:{id:n.RocketLauncher,name:`火箭发射器`,description:`基础防御设施`,cost:{metal:2e3,crystal:0,deuterium:0,darkMatter:0,energy:0},buildTime:10,attack:80,shield:20,armor:200,requirements:{[e.Shipyard]:1}},[n.LightLaser]:{id:n.LightLaser,name:`轻型激光炮`,description:`激光防御武器`,cost:{metal:1500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildTime:12,attack:100,shield:25,armor:200,requirements:{[e.Shipyard]:2,[t.LaserTechnology]:3}},[n.HeavyLaser]:{id:n.HeavyLaser,name:`重型激光炮`,description:`强力激光武器`,cost:{metal:6e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,attack:250,shield:100,armor:800,requirements:{[e.Shipyard]:4,[t.LaserTechnology]:6}},[n.GaussCannon]:{id:n.GaussCannon,name:`高斯炮`,description:`电磁加速武器`,cost:{metal:2e4,crystal:15e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:35,attack:1100,shield:200,armor:3500,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.IonCannon]:{id:n.IonCannon,name:`离子炮`,description:`离子武器系统`,cost:{metal:2e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:150,shield:500,armor:800,requirements:{[e.Shipyard]:4,[t.IonTechnology]:4}},[n.PlasmaTurret]:{id:n.PlasmaTurret,name:`等离子炮台`,description:`最强防御武器`,cost:{metal:5e4,crystal:5e4,deuterium:3e4,darkMatter:0,energy:0},buildTime:60,attack:3e3,shield:300,armor:1e4,requirements:{[e.Shipyard]:8,[t.PlasmaTechnology]:7}},[n.SmallShieldDome]:{id:n.SmallShieldDome,name:`小型护盾罩`,description:`保护星球的能量护盾`,cost:{metal:1e4,crystal:1e4,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:1,shield:2e3,armor:2e3,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:3}},[n.LargeShieldDome]:{id:n.LargeShieldDome,name:`大型护盾罩`,description:`强大的星球护盾`,cost:{metal:5e4,crystal:5e4,deuterium:0,darkMatter:0,energy:0},buildTime:60,attack:1,shield:1e4,armor:1e4,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.PlanetaryShield]:{id:n.PlanetaryShield,name:`行星护盾`,description:`保护行星免受毁灭攻击的超级护盾`,cost:{metal:2e6,crystal:2e6,deuterium:1e6,darkMatter:5e4,energy:0},buildTime:180,attack:1,shield:1e5,armor:1e5,requirements:{[e.Shipyard]:10,[t.EnergyTechnology]:10,[t.HyperspaceTechnology]:8}},[n.AntiBallisticMissile]:{id:n.AntiBallisticMissile,name:`反弹道导弹`,description:`拦截敌方导弹,每个可拦截1枚星际导弹`,cost:{metal:8e3,crystal:0,deuterium:2e3,darkMatter:0,energy:0},buildTime:20,attack:1,shield:1,armor:800,requirements:{[e.MissileSilo]:2}},[n.InterplanetaryMissile]:{id:n.InterplanetaryMissile,name:`星际导弹`,description:`可以攻击其他星球的防御设施,射程取决于脉冲引擎等级`,cost:{metal:12500,crystal:2500,deuterium:1e4,darkMatter:0,energy:0},buildTime:30,attack:12e3,shield:1,armor:1500,requirements:{[e.MissileSilo]:4,[t.ImpulseDrive]:1}}};i.Commander,i.Commander,i.Admiral,i.Admiral,i.Engineer,i.Engineer,i.Geologist,i.Geologist,i.Technocrat,i.Technocrat,i.DarkMatterSpecialist,i.DarkMatterSpecialist;let s={SIMULATE_BATTLE:`SIMULATE_BATTLE`,CALCULATE_PLUNDER:`CALCULATE_PLUNDER`,CALCULATE_DEBRIS:`CALCULATE_DEBRIS`,SUCCESS:`SUCCESS`,ERROR:`ERROR`},c=(e,t=0,n=.1)=>Math.floor(e*(1+t*n)),l=(e,t=!1)=>{let n=[];if(e.ships){for(let[t,r]of Object.entries(e.ships))if(r>0){let i=a[t];n.push({type:t,count:r,attack:c(i.attack,e.weaponTech),shield:c(i.shield,e.shieldTech),armor:c(i.armor,e.armorTech)})}}if(t&&e.defense){for(let[t,r]of Object.entries(e.defense))if(r>0){let i=o[t];n.push({type:t,count:r,attack:c(i.attack,e.weaponTech),shield:c(i.shield,e.shieldTech),armor:c(i.armor,e.armorTech)})}}return n},u=(e,t)=>{let n=e.attack,r=t.shield,i=t.armor,a=0,o=0;if(n.01)return{destroyed:0,damagedShield:0};let s=n;if(s>r)s-=r,o=r;else return o=s,{destroyed:0,damagedShield:o};if(s>i)a=1;else{let e=s/i;Math.random(){let n={},i={},a={};for(let n of e)for(let e=0;e0){if(o.count-=s,Object.values(r).includes(o.type)){let e=o.type;i[e]=(i[e]||0)+s}else{let e=o.type;a[e]=(a[e]||0)+s}o.count<=0&&t.splice(e,1)}}for(let r of t)for(let t=0;t0){i.count-=a;let r=i.type;n[r]=(n[r]||0)+a,i.count<=0&&e.splice(t,1)}}let o=e.reduce((e,t)=>e+t.count*t.attack,0),s=t.reduce((e,t)=>e+t.count*t.attack,0);return{attackerLosses:n,defenderLosses:{fleet:i,defense:a},attackerRemainingPower:o,defenderRemainingPower:s}},f=(e,t,n=6)=>{let i=l(e,!1),a=l(t,!0),o={},s={},c={},u=[],f=0;for(let e=0;e0&&(p[e]=n,c[e]=t-n)}let m={};for(let e of i)e.count>0&&(m[e.type]=e.count);let h={},g={};for(let e of a)e.count>0&&(Object.values(r).includes(e.type)?h[e.type]=e.count:g[e.type]=e.count);for(let[e,t]of Object.entries(p))g[e]=(g[e]||0)+t;let _;return _=i.length===0&&a.length===0?`draw`:i.length===0?`defender`:a.length===0?`attacker`:`draw`,{winner:_,rounds:f,attackerLosses:o,defenderLosses:{fleet:s,defense:c},attackerRemaining:m,defenderRemaining:{fleet:h,defense:g},roundDetails:u}},p=(e,t)=>{let n=0;for(let[e,r]of Object.entries(t)){let t=a[e];n+=t.cargoCapacity*r}let r={metal:Math.floor(e.metal*.5),crystal:Math.floor(e.crystal*.5),deuterium:Math.floor(e.deuterium*.5),darkMatter:Math.floor(e.darkMatter*.5),energy:0},i=r.metal+r.crystal+r.deuterium+r.darkMatter;if(n>=i)return r;let o=n/i;return{metal:Math.floor(r.metal*o),crystal:Math.floor(r.crystal*o),deuterium:Math.floor(r.deuterium*o),darkMatter:Math.floor(r.darkMatter*o),energy:0}},m=(e,t)=>{let n=0,r=0;for(let[t,i]of Object.entries(e)){let e=a[t];n+=e.cost.metal*i*.3,r+=e.cost.crystal*i*.3}for(let[e,i]of Object.entries(t.fleet)){let t=a[e];n+=t.cost.metal*i*.3,r+=t.cost.crystal*i*.3}for(let[e,i]of Object.entries(t.defense)){let t=o[e];n+=t.cost.metal*i*.3,r+=t.cost.crystal*i*.3}return{metal:Math.floor(n),crystal:Math.floor(r),deuterium:0,darkMatter:0,energy:0}};self.onmessage=e=>{let{id:t,type:n,payload:r}=e.data;try{let e;switch(n){case s.SIMULATE_BATTLE:{let{attacker:t,defender:n,maxRounds:i=6}=r;e=f(t,n,i);break}case s.CALCULATE_PLUNDER:{let{defenderResources:t,attackerFleet:n}=r;e=p(t,n);break}case s.CALCULATE_DEBRIS:{let{attackerLosses:t,defenderLosses:n}=r;e=m(t,n);break}default:throw Error(`Unknown message type: ${n}`)}let i={id:t,type:s.SUCCESS,success:!0,data:e};self.postMessage(i)}catch(e){let n={id:t,type:s.ERROR,success:!1,error:e instanceof Error?e.message:String(e)};self.postMessage(n)}}})(); \ No newline at end of file diff --git a/docs/assets/empty-Ds0PR_Pd.js b/docs/assets/empty-Ds0PR_Pd.js deleted file mode 100644 index ad779c4..0000000 --- a/docs/assets/empty-Ds0PR_Pd.js +++ /dev/null @@ -1 +0,0 @@ -import{En as e,ar as t,kn as n,pn as r,rr as i,un as a}from"./game-logic-BBFCPVtv.js";import{z as o}from"./vendor-others-Bce0hM6h.js";import{Y as s}from"./index-B4KMqZ_y.js";var c=r({__name:`Empty`,props:{class:{}},setup(r){let o=r;return(r,c)=>(e(),a(`div`,{"data-slot":`empty`,class:t(i(s)(`flex min-w-0 flex-1 flex-col items-center justify-center gap-6 text-balance rounded-lg border-dashed p-6 text-center md:p-12`,o.class))},[n(r.$slots,`default`)],2))}}),l=r({__name:`EmptyContent`,props:{class:{}},setup(r){let o=r;return(r,c)=>(e(),a(`div`,{"data-slot":`empty-content`,class:t(i(s)(`flex w-full min-w-0 max-w-sm flex-col items-center gap-4 text-balance text-sm`,o.class))},[n(r.$slots,`default`)],2))}}),u=r({__name:`EmptyDescription`,props:{class:{}},setup(r){return(r,o)=>(e(),a(`p`,{"data-slot":`empty-description`,class:t(i(s)(`text-muted-foreground [&>a:hover]:text-primary text-sm/relaxed [&>a]:underline [&>a]:underline-offset-4`,r.$attrs.class??``))},[n(r.$slots,`default`)],2))}}),d=r({__name:`EmptyHeader`,props:{class:{}},setup(r){let o=r;return(r,c)=>(e(),a(`div`,{"data-slot":`empty-header`,class:t(i(s)(`flex max-w-sm flex-col items-center gap-2 text-center`,o.class))},[n(r.$slots,`default`)],2))}}),f=[`data-variant`],p=r({__name:`EmptyMedia`,props:{class:{},variant:{}},setup(r){let o=r;return(c,l)=>(e(),a(`div`,{"data-slot":`empty-icon`,"data-variant":r.variant,class:t(i(s)(i(h)({variant:r.variant}),o.class))},[n(c.$slots,`default`)],10,f))}}),m=r({__name:`EmptyTitle`,props:{class:{}},setup(r){let o=r;return(r,c)=>(e(),a(`div`,{"data-slot":`empty-title`,class:t(i(s)(`text-lg font-medium tracking-tight`,o.class))},[n(r.$slots,`default`)],2))}});const h=o(`mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0`,{variants:{variant:{default:`bg-transparent`,icon:`bg-muted text-foreground flex size-10 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*='size-'])]:size-6`}},defaultVariants:{variant:`default`}});export{l as a,u as i,p as n,c as o,d as r,m as t}; \ No newline at end of file diff --git a/docs/assets/game-config-DRP-gbpS.js b/docs/assets/game-config-DRP-gbpS.js deleted file mode 100644 index c0e2772..0000000 --- a/docs/assets/game-config-DRP-gbpS.js +++ /dev/null @@ -1 +0,0 @@ -const e={MetalMine:`metalMine`,CrystalMine:`crystalMine`,DeuteriumSynthesizer:`deuteriumSynthesizer`,SolarPlant:`solarPlant`,FusionReactor:`fusionReactor`,RoboticsFactory:`roboticsFactory`,NaniteFactory:`naniteFactory`,Shipyard:`shipyard`,ResearchLab:`researchLab`,MetalStorage:`metalStorage`,CrystalStorage:`crystalStorage`,DeuteriumTank:`deuteriumTank`,DarkMatterCollector:`darkMatterCollector`,DarkMatterTank:`darkMatterTank`,MissileSilo:`missileSilo`,Terraformer:`terraformer`,LunarBase:`lunarBase`,SensorPhalanx:`sensorPhalanx`,JumpGate:`jumpGate`,PlanetDestroyerFactory:`planetDestroyerFactory`},t={EnergyTechnology:`energyTechnology`,LaserTechnology:`laserTechnology`,IonTechnology:`ionTechnology`,HyperspaceTechnology:`hyperspaceTechnology`,PlasmaTechnology:`plasmaTechnology`,ComputerTechnology:`computerTechnology`,EspionageTechnology:`espionageTechnology`,CombustionDrive:`combustionDrive`,ImpulseDrive:`impulseDrive`,HyperspaceDrive:`hyperspaceDrive`,WeaponsTechnology:`weaponsTechnology`,ShieldingTechnology:`shieldingTechnology`,ArmourTechnology:`armourTechnology`,Astrophysics:`astrophysics`,GravitonTechnology:`gravitonTechnology`,DarkMatterTechnology:`darkMatterTechnology`,TerraformingTechnology:`terraformingTechnology`,PlanetDestructionTech:`planetDestructionTech`},n={RocketLauncher:`rocketLauncher`,LightLaser:`lightLaser`,HeavyLaser:`heavyLaser`,GaussCannon:`gaussCannon`,IonCannon:`ionCannon`,PlasmaTurret:`plasmaTurret`,SmallShieldDome:`smallShieldDome`,LargeShieldDome:`largeShieldDome`,AntiBallisticMissile:`antiBallisticMissile`,InterplanetaryMissile:`interplanetaryMissile`,PlanetaryShield:`planetaryShield`},r={LightFighter:`lightFighter`,HeavyFighter:`heavyFighter`,Cruiser:`cruiser`,Battleship:`battleship`,Battlecruiser:`battlecruiser`,Bomber:`bomber`,Destroyer:`destroyer`,SmallCargo:`smallCargo`,LargeCargo:`largeCargo`,ColonyShip:`colonyShip`,Recycler:`recycler`,EspionageProbe:`espionageProbe`,SolarSatellite:`solarSatellite`,DarkMatterHarvester:`darkMatterHarvester`,Deathstar:`deathstar`},i={Attack:`attack`,Transport:`transport`,Colonize:`colonize`,Spy:`spy`,Deploy:`deploy`,Expedition:`expedition`,HarvestDarkMatter:`harvestDarkMatter`,Recycle:`recycle`,Destroy:`destroy`,MissileAttack:`missileAttack`},a={Hostile:`hostile`,Neutral:`neutral`,Friendly:`friendly`},o={GiftResources:`giftResources`,Attack:`attack`,Spy:`spy`,StealDebris:`stealDebris`,AllyAttacked:`allyAttacked`},s={Commander:`commander`,Admiral:`admiral`,Engineer:`engineer`,Geologist:`geologist`,Technocrat:`technocrat`,DarkMatterSpecialist:`darkMatterSpecialist`},c={[e.MetalMine]:{id:e.MetalMine,name:`金属矿`,description:`开采金属资源`,baseCost:{metal:60,crystal:15,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.5,spaceUsage:1,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.CrystalMine]:{id:e.CrystalMine,name:`晶体矿`,description:`开采晶体资源`,baseCost:{metal:48,crystal:24,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.6,spaceUsage:1,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.DeuteriumSynthesizer]:{id:e.DeuteriumSynthesizer,name:`重氢合成器`,description:`合成重氢资源`,baseCost:{metal:225,crystal:75,deuterium:0,darkMatter:0,energy:0},baseTime:20,costMultiplier:1.5,spaceUsage:2,planetOnly:!0,requirements:{[e.SolarPlant]:1},levelRequirements:{10:{[e.RoboticsFactory]:2},20:{[e.RoboticsFactory]:5,[e.ResearchLab]:3},30:{[e.NaniteFactory]:1,[e.ResearchLab]:8}}},[e.SolarPlant]:{id:e.SolarPlant,name:`太阳能电站`,description:`提供能源`,baseCost:{metal:75,crystal:30,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:1.5,spaceUsage:2,levelRequirements:{15:{[e.RoboticsFactory]:3},25:{[e.RoboticsFactory]:6,[e.ResearchLab]:5},35:{[e.NaniteFactory]:1,[e.ResearchLab]:10}}},[e.FusionReactor]:{id:e.FusionReactor,name:`核聚变反应堆`,description:`使用重氢产生大量能源`,baseCost:{metal:900,crystal:360,deuterium:180,darkMatter:0,energy:0},baseTime:30,costMultiplier:1.8,spaceUsage:4,requirements:{[t.EnergyTechnology]:3,[e.DeuteriumSynthesizer]:5},levelRequirements:{10:{[e.RoboticsFactory]:5,[t.EnergyTechnology]:6},20:{[e.RoboticsFactory]:8,[t.EnergyTechnology]:10,[e.NaniteFactory]:2}}},[e.RoboticsFactory]:{id:e.RoboticsFactory,name:`机器人工厂`,description:`加快建造速度`,baseCost:{metal:400,crystal:120,deuterium:200,darkMatter:0,energy:0},baseTime:40,costMultiplier:2,spaceUsage:4,requirements:{[e.MetalMine]:2,[e.CrystalMine]:2,[e.DeuteriumSynthesizer]:2},levelRequirements:{5:{[e.ResearchLab]:3,[e.SolarPlant]:8},8:{[e.ResearchLab]:6,[e.SolarPlant]:12,[e.MetalMine]:12,[e.CrystalMine]:12}}},[e.NaniteFactory]:{id:e.NaniteFactory,name:`纳米工厂`,description:`增加建造队列数量,每级+1队列`,baseCost:{metal:1e6,crystal:5e5,deuterium:1e5,darkMatter:0,energy:0},baseTime:240,costMultiplier:2,spaceUsage:8,maxLevel:10,requirements:{[e.RoboticsFactory]:10},levelRequirements:{3:{[e.ResearchLab]:10,[e.Shipyard]:8,[t.ComputerTechnology]:8},5:{[e.ResearchLab]:12,[e.Shipyard]:10,[t.ComputerTechnology]:10}}},[e.Shipyard]:{id:e.Shipyard,name:`船坞`,description:`建造舰船`,baseCost:{metal:400,crystal:200,deuterium:100,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,spaceUsage:5,fleetStorageBonus:1e3,requirements:{[e.RoboticsFactory]:2},levelRequirements:{8:{[e.RoboticsFactory]:5,[e.ResearchLab]:5},12:{[e.RoboticsFactory]:8,[e.ResearchLab]:8,[e.NaniteFactory]:2}}},[e.ResearchLab]:{id:e.ResearchLab,name:`研究实验室`,description:`研究科技`,baseCost:{metal:200,crystal:400,deuterium:200,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,spaceUsage:3,requirements:{[e.MetalMine]:3,[e.CrystalMine]:3,[e.DeuteriumSynthesizer]:3},levelRequirements:{8:{[e.RoboticsFactory]:5,[e.MetalMine]:10,[e.CrystalMine]:10,[e.DeuteriumSynthesizer]:10},12:{[e.RoboticsFactory]:8,[e.NaniteFactory]:1,[t.EnergyTechnology]:5}}},[e.MetalStorage]:{id:e.MetalStorage,name:`金属仓库`,description:`增加金属存储上限`,baseCost:{metal:1e3,crystal:0,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.MetalMine]:2},levelRequirements:{8:{[e.MetalMine]:15,[e.RoboticsFactory]:3},12:{[e.MetalMine]:25,[e.RoboticsFactory]:6}}},[e.CrystalStorage]:{id:e.CrystalStorage,name:`晶体仓库`,description:`增加晶体存储上限`,baseCost:{metal:1e3,crystal:500,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.CrystalMine]:2},levelRequirements:{8:{[e.CrystalMine]:15,[e.RoboticsFactory]:3},12:{[e.CrystalMine]:25,[e.RoboticsFactory]:6}}},[e.DeuteriumTank]:{id:e.DeuteriumTank,name:`重氢罐`,description:`增加重氢存储上限`,baseCost:{metal:1e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},baseTime:15,costMultiplier:2,spaceUsage:1,requirements:{[e.DeuteriumSynthesizer]:2},levelRequirements:{8:{[e.DeuteriumSynthesizer]:15,[e.RoboticsFactory]:3},12:{[e.DeuteriumSynthesizer]:25,[e.RoboticsFactory]:6}}},[e.DarkMatterCollector]:{id:e.DarkMatterCollector,name:`暗物质收集器`,description:`收集稀有的暗物质资源`,baseCost:{metal:5e4,crystal:1e5,deuterium:5e4,darkMatter:0,energy:0},baseTime:90,costMultiplier:2,spaceUsage:6,planetOnly:!0,requirements:{[e.ResearchLab]:5,[t.DarkMatterTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:8,[t.DarkMatterTechnology]:3,[e.RoboticsFactory]:8},8:{[e.ResearchLab]:10,[t.DarkMatterTechnology]:5,[e.NaniteFactory]:2}}},[e.DarkMatterTank]:{id:e.DarkMatterTank,name:`暗物质储罐`,description:`增加暗物质存储上限`,baseCost:{metal:1e4,crystal:1e4,deuterium:5e3,darkMatter:0,energy:0},baseTime:20,costMultiplier:2,spaceUsage:2,planetOnly:!0,requirements:{[e.DarkMatterCollector]:2,[t.DarkMatterTechnology]:1},levelRequirements:{8:{[e.DarkMatterCollector]:8,[e.RoboticsFactory]:3},12:{[e.DarkMatterCollector]:15,[e.RoboticsFactory]:6,[t.DarkMatterTechnology]:3}}},[e.MissileSilo]:{id:e.MissileSilo,name:`导弹发射井`,description:`存储和发射导弹,每级可存储10枚导弹`,baseCost:{metal:2e4,crystal:2e4,deuterium:1e3,darkMatter:0,energy:0},baseTime:45,costMultiplier:2,spaceUsage:5,maxLevel:10,requirements:{[e.Shipyard]:1},levelRequirements:{5:{[e.Shipyard]:5,[t.ComputerTechnology]:3},8:{[e.Shipyard]:8,[t.ComputerTechnology]:6,[e.NaniteFactory]:2}}},[e.Terraformer]:{id:e.Terraformer,name:`地形改造器`,description:`改造行星地形,每级增加30个可用空间`,baseCost:{metal:0,crystal:5e4,deuterium:1e5,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,spaceUsage:5,planetOnly:!0,requirements:{[e.ResearchLab]:10,[e.RoboticsFactory]:8,[t.TerraformingTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:12,[t.TerraformingTechnology]:3,[e.NaniteFactory]:1},8:{[e.ResearchLab]:14,[t.TerraformingTechnology]:5,[e.NaniteFactory]:3}}},[e.LunarBase]:{id:e.LunarBase,name:`月球基地`,description:`增加月球可用空间`,baseCost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:0,energy:0},baseTime:45,costMultiplier:2,spaceUsage:0,moonOnly:!0,levelRequirements:{5:{[e.RoboticsFactory]:5},8:{[e.RoboticsFactory]:8,[e.NaniteFactory]:1}}},[e.SensorPhalanx]:{id:e.SensorPhalanx,name:`传感器阵列`,description:`侦测周围星系的舰队活动`,baseCost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,spaceUsage:6,moonOnly:!0,requirements:{[e.LunarBase]:1},levelRequirements:{5:{[e.LunarBase]:5,[t.ComputerTechnology]:5},8:{[e.LunarBase]:8,[t.ComputerTechnology]:8,[e.NaniteFactory]:2}}},[e.JumpGate]:{id:e.JumpGate,name:`跳跃门`,description:`瞬间传送舰队到其他月球`,baseCost:{metal:2e6,crystal:4e6,deuterium:2e6,darkMatter:5e4,energy:0},baseTime:240,costMultiplier:2,spaceUsage:10,moonOnly:!0,maxLevel:5,requirements:{[e.LunarBase]:1,[t.HyperspaceTechnology]:7},levelRequirements:{3:{[e.LunarBase]:5,[t.HyperspaceTechnology]:10,[e.NaniteFactory]:3}}},[e.PlanetDestroyerFactory]:{id:e.PlanetDestroyerFactory,name:`行星毁灭者工厂`,description:`建造能够摧毁行星的终极武器`,baseCost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:1e5,energy:0},baseTime:300,costMultiplier:2,spaceUsage:15,planetOnly:!0,maxLevel:3,requirements:{[e.Shipyard]:12,[e.RoboticsFactory]:10,[e.NaniteFactory]:5,[t.PlanetDestructionTech]:1},levelRequirements:{3:{[e.Shipyard]:14,[e.NaniteFactory]:8,[t.PlanetDestructionTech]:3,[t.HyperspaceTechnology]:10}}}},l={[t.EnergyTechnology]:{id:t.EnergyTechnology,name:`能源技术`,description:`加快研究速度`,baseCost:{metal:0,crystal:800,deuterium:400,darkMatter:0,energy:0},baseTime:30,costMultiplier:2,requirements:{[e.ResearchLab]:1},levelRequirements:{5:{[e.ResearchLab]:3,[e.SolarPlant]:10},8:{[e.ResearchLab]:5,[e.SolarPlant]:15,[e.RoboticsFactory]:3},12:{[e.ResearchLab]:8,[e.RoboticsFactory]:6,[e.NaniteFactory]:1}}},[t.LaserTechnology]:{id:t.LaserTechnology,name:`激光技术`,description:`开发激光武器`,baseCost:{metal:200,crystal:100,deuterium:0,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:1,[t.EnergyTechnology]:2},levelRequirements:{6:{[e.ResearchLab]:5,[t.EnergyTechnology]:5,[e.Shipyard]:3},10:{[e.ResearchLab]:8,[t.EnergyTechnology]:8,[e.Shipyard]:6}}},[t.IonTechnology]:{id:t.IonTechnology,name:`离子技术`,description:`开发离子武器`,baseCost:{metal:1e3,crystal:300,deuterium:100,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:4,[t.LaserTechnology]:5,[t.EnergyTechnology]:4},levelRequirements:{5:{[e.ResearchLab]:8,[t.LaserTechnology]:10,[t.EnergyTechnology]:8},8:{[e.ResearchLab]:10,[t.LaserTechnology]:12,[e.NaniteFactory]:2}}},[t.HyperspaceTechnology]:{id:t.HyperspaceTechnology,name:`超空间技术`,description:`研究超空间跳跃`,baseCost:{metal:0,crystal:4e3,deuterium:2e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:7,[t.EnergyTechnology]:5},levelRequirements:{5:{[e.ResearchLab]:10,[t.EnergyTechnology]:8,[e.Shipyard]:5},8:{[e.ResearchLab]:12,[t.EnergyTechnology]:10,[e.NaniteFactory]:2}}},[t.PlasmaTechnology]:{id:t.PlasmaTechnology,name:`等离子技术`,description:`开发等离子武器`,baseCost:{metal:2e3,crystal:4e3,deuterium:1e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:4,[t.EnergyTechnology]:8,[t.LaserTechnology]:10,[t.IonTechnology]:5},levelRequirements:{5:{[e.ResearchLab]:10,[t.EnergyTechnology]:12,[t.IonTechnology]:8,[e.NaniteFactory]:1},8:{[e.ResearchLab]:12,[t.EnergyTechnology]:15,[t.IonTechnology]:10,[e.NaniteFactory]:3}}},[t.ComputerTechnology]:{id:t.ComputerTechnology,name:`计算机技术`,description:`增加研究队列数量,每级+1队列`,baseCost:{metal:0,crystal:400,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,fleetStorageBonus:500,maxLevel:10,requirements:{[e.ResearchLab]:1},levelRequirements:{3:{[e.ResearchLab]:5},5:{[e.ResearchLab]:8,[e.RoboticsFactory]:5},8:{[e.ResearchLab]:10,[e.NaniteFactory]:2}}},[t.EspionageTechnology]:{id:t.EspionageTechnology,name:`间谍技术`,description:`提高间谍探测效果,每级提高1级侦查深度`,baseCost:{metal:200,crystal:1e3,deuterium:200,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:3},levelRequirements:{5:{[e.ResearchLab]:6,[t.ComputerTechnology]:3},8:{[e.ResearchLab]:8,[t.ComputerTechnology]:5}}},[t.WeaponsTechnology]:{id:t.WeaponsTechnology,name:`武器技术`,description:`提高舰船和防御的攻击力,每级+10%`,baseCost:{metal:800,crystal:200,deuterium:0,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:4},levelRequirements:{5:{[e.ResearchLab]:7,[e.Shipyard]:4},10:{[e.ResearchLab]:10,[e.Shipyard]:8,[e.NaniteFactory]:2}}},[t.ShieldingTechnology]:{id:t.ShieldingTechnology,name:`护盾技术`,description:`提高舰船和防御的护盾值,每级+10%`,baseCost:{metal:200,crystal:600,deuterium:0,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:6,[t.EnergyTechnology]:3},levelRequirements:{5:{[e.ResearchLab]:8,[t.EnergyTechnology]:6},10:{[e.ResearchLab]:10,[t.EnergyTechnology]:10,[e.NaniteFactory]:2}}},[t.ArmourTechnology]:{id:t.ArmourTechnology,name:`装甲技术`,description:`提高舰船和防御的装甲值,每级+10%`,baseCost:{metal:1e3,crystal:0,deuterium:0,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:2},levelRequirements:{5:{[e.ResearchLab]:6,[e.Shipyard]:3},10:{[e.ResearchLab]:10,[e.Shipyard]:7,[e.NaniteFactory]:1}}},[t.Astrophysics]:{id:t.Astrophysics,name:`天体物理学`,description:`每级增加1个殖民地槽位,增加探险成功率`,baseCost:{metal:4e3,crystal:8e3,deuterium:4e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:1.75,requirements:{[e.ResearchLab]:3,[t.EspionageTechnology]:4,[t.ImpulseDrive]:3},levelRequirements:{5:{[e.ResearchLab]:8,[t.EspionageTechnology]:8},10:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:5,[e.NaniteFactory]:3}}},[t.GravitonTechnology]:{id:t.GravitonTechnology,name:`引力技术`,description:`研究引力操纵,死星的必要技术`,baseCost:{metal:0,crystal:0,deuterium:0,darkMatter:3e5,energy:0},baseTime:0,costMultiplier:3,maxLevel:1,requirements:{[e.ResearchLab]:12}},[t.CombustionDrive]:{id:t.CombustionDrive,name:`燃烧引擎`,description:`基础推进系统`,baseCost:{metal:400,crystal:0,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:1,[t.EnergyTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:5,[t.EnergyTechnology]:3,[e.Shipyard]:2},8:{[e.ResearchLab]:8,[t.EnergyTechnology]:5,[e.Shipyard]:5}}},[t.ImpulseDrive]:{id:t.ImpulseDrive,name:`脉冲引擎`,description:`高级推进系统`,baseCost:{metal:2e3,crystal:4e3,deuterium:600,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:2,[t.EnergyTechnology]:1},levelRequirements:{5:{[e.ResearchLab]:6,[t.EnergyTechnology]:4,[e.Shipyard]:3},8:{[e.ResearchLab]:8,[t.EnergyTechnology]:6,[e.Shipyard]:6}}},[t.HyperspaceDrive]:{id:t.HyperspaceDrive,name:`超空间引擎`,description:`超空间推进系统`,baseCost:{metal:1e4,crystal:2e4,deuterium:6e3,darkMatter:0,energy:0},baseTime:60,costMultiplier:2,requirements:{[e.ResearchLab]:7,[t.HyperspaceTechnology]:3},levelRequirements:{5:{[e.ResearchLab]:10,[t.HyperspaceTechnology]:6,[e.Shipyard]:8},8:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:8,[e.NaniteFactory]:3}}},[t.DarkMatterTechnology]:{id:t.DarkMatterTechnology,name:`暗物质技术`,description:`研究暗物质的性质和应用`,baseCost:{metal:1e5,crystal:2e5,deuterium:1e5,darkMatter:0,energy:0},baseTime:180,costMultiplier:2,requirements:{[e.ResearchLab]:8,[t.HyperspaceTechnology]:5},levelRequirements:{3:{[e.ResearchLab]:10,[t.HyperspaceTechnology]:8,[e.RoboticsFactory]:10,[t.EnergyTechnology]:10},5:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:10,[e.NaniteFactory]:2,[t.EnergyTechnology]:12}}},[t.TerraformingTechnology]:{id:t.TerraformingTechnology,name:`地形改造技术`,description:`研究行星地形改造技术,每级为所有行星增加30个可用空间`,baseCost:{metal:0,crystal:2e4,deuterium:4e4,darkMatter:0,energy:0},baseTime:90,costMultiplier:2,requirements:{[e.ResearchLab]:8,[t.EnergyTechnology]:6},levelRequirements:{5:{[e.ResearchLab]:12,[t.EnergyTechnology]:10,[e.RoboticsFactory]:10},8:{[e.ResearchLab]:14,[t.EnergyTechnology]:12,[e.NaniteFactory]:3}}},[t.PlanetDestructionTech]:{id:t.PlanetDestructionTech,name:`行星毁灭技术`,description:`研究如何摧毁整个行星的恐怖技术`,baseCost:{metal:4e6,crystal:8e6,deuterium:4e6,darkMatter:2e5,energy:0},baseTime:300,costMultiplier:2,maxLevel:5,requirements:{[e.ResearchLab]:12,[t.HyperspaceTechnology]:8,[t.HyperspaceDrive]:6,[t.PlasmaTechnology]:7},levelRequirements:{3:{[e.ResearchLab]:14,[t.HyperspaceTechnology]:12,[t.HyperspaceDrive]:10,[t.PlasmaTechnology]:10,[e.NaniteFactory]:5}}}},u={[r.LightFighter]:{id:r.LightFighter,name:`轻型战斗机`,description:`基础战斗单位`,cost:{metal:3e3,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,cargoCapacity:50,attack:50,shield:10,armor:400,speed:12500,fuelConsumption:20,storageUsage:5,requirements:{[e.Shipyard]:1,[t.CombustionDrive]:1}},[r.HeavyFighter]:{id:r.HeavyFighter,name:`重型战斗机`,description:`强力战斗单位`,cost:{metal:6e3,crystal:4e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:100,attack:150,shield:25,armor:1e3,speed:1e4,fuelConsumption:75,storageUsage:10,requirements:{[e.Shipyard]:3,[t.ImpulseDrive]:2}},[r.Cruiser]:{id:r.Cruiser,name:`巡洋舰`,description:`中型战舰`,cost:{metal:2e4,crystal:7e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:800,attack:400,shield:50,armor:2700,speed:15e3,fuelConsumption:300,storageUsage:15,requirements:{[e.Shipyard]:5,[t.ImpulseDrive]:4,[t.IonTechnology]:2}},[r.Battleship]:{id:r.Battleship,name:`战列舰`,description:`重型战舰`,cost:{metal:45e3,crystal:15e3,deuterium:0,darkMatter:0,energy:0},buildTime:90,cargoCapacity:1500,attack:1e3,shield:200,armor:6e3,speed:1e4,fuelConsumption:500,storageUsage:25,requirements:{[e.Shipyard]:7,[t.HyperspaceDrive]:4}},[r.Battlecruiser]:{id:r.Battlecruiser,name:`战列巡洋舰`,description:`快速强大的战斗舰船,擅长攻击战列舰`,cost:{metal:3e4,crystal:4e4,deuterium:15e3,darkMatter:0,energy:0},buildTime:70,cargoCapacity:750,attack:700,shield:400,armor:7e3,speed:1e4,fuelConsumption:250,storageUsage:20,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.HyperspaceTechnology]:5,[t.LaserTechnology]:12}},[r.Bomber]:{id:r.Bomber,name:`轰炸机`,description:`专门对付防御设施的轰炸舰`,cost:{metal:5e4,crystal:25e3,deuterium:15e3,darkMatter:0,energy:0},buildTime:100,cargoCapacity:500,attack:1e3,shield:500,armor:7500,speed:4e3,fuelConsumption:700,storageUsage:35,requirements:{[e.Shipyard]:8,[t.ImpulseDrive]:6,[t.PlasmaTechnology]:5}},[r.Destroyer]:{id:r.Destroyer,name:`驱逐舰`,description:`擅长摧毁大型舰船的猎杀者`,cost:{metal:6e4,crystal:5e4,deuterium:15e3,darkMatter:0,energy:0},buildTime:120,cargoCapacity:2e3,attack:2e3,shield:500,armor:11e3,speed:5e3,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:9,[t.HyperspaceDrive]:6,[t.HyperspaceTechnology]:5}},[r.SmallCargo]:{id:r.SmallCargo,name:`小型运输船`,description:`运输资源`,cost:{metal:2e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:15,cargoCapacity:5e3,attack:5,shield:10,armor:400,speed:5e3,fuelConsumption:10,storageUsage:10,requirements:{[e.Shipyard]:2,[t.CombustionDrive]:2}},[r.LargeCargo]:{id:r.LargeCargo,name:`大型运输船`,description:`大量运输资源`,cost:{metal:6e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,cargoCapacity:25e3,attack:5,shield:25,armor:1200,speed:7500,fuelConsumption:50,storageUsage:20,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.ColonyShip]:{id:r.ColonyShip,name:`殖民船`,description:`建立新殖民地`,cost:{metal:1e4,crystal:2e4,deuterium:1e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:7500,attack:50,shield:100,armor:3e3,speed:2500,fuelConsumption:1e3,storageUsage:40,requirements:{[e.Shipyard]:4,[t.ImpulseDrive]:3}},[r.Recycler]:{id:r.Recycler,name:`回收船`,description:`回收废墟资源`,cost:{metal:1e4,crystal:6e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:60,cargoCapacity:2e4,attack:1,shield:10,armor:1600,speed:2e3,fuelConsumption:300,storageUsage:30,requirements:{[e.Shipyard]:4,[t.CombustionDrive]:6}},[r.EspionageProbe]:{id:r.EspionageProbe,name:`间谍探测器`,description:`侦察敌方星球`,cost:{metal:0,crystal:1e3,deuterium:0,darkMatter:0,energy:0},buildTime:5,cargoCapacity:5,attack:0,shield:0,armor:100,speed:1e8,fuelConsumption:1,storageUsage:2,requirements:{[e.Shipyard]:3,[t.CombustionDrive]:3}},[r.SolarSatellite]:{id:r.SolarSatellite,name:`太阳能卫星`,description:`提供额外能源,每个产生50点能量`,cost:{metal:0,crystal:2e3,deuterium:500,darkMatter:0,energy:0},buildTime:10,cargoCapacity:0,attack:1,shield:1,armor:200,speed:0,fuelConsumption:0,storageUsage:1,requirements:{[e.Shipyard]:1}},[r.DarkMatterHarvester]:{id:r.DarkMatterHarvester,name:`暗物质采集船`,description:`专门用于采集暗物质的特殊飞船`,cost:{metal:1e5,crystal:15e4,deuterium:5e4,darkMatter:0,energy:0},buildTime:120,cargoCapacity:1e3,attack:10,shield:50,armor:2e3,speed:5e3,fuelConsumption:500,storageUsage:50,requirements:{[e.Shipyard]:8,[t.HyperspaceDrive]:5,[t.DarkMatterTechnology]:1}},[r.Deathstar]:{id:r.Deathstar,name:`死星`,description:`终极武器,能够摧毁整个行星`,cost:{metal:5e6,crystal:4e6,deuterium:1e6,darkMatter:5e4,energy:0},buildTime:600,cargoCapacity:1e6,attack:2e5,shield:5e4,armor:9e5,speed:100,fuelConsumption:1,storageUsage:100,requirements:{[e.PlanetDestroyerFactory]:3,[t.PlanetDestructionTech]:7,[t.HyperspaceDrive]:7}}},d={[n.RocketLauncher]:{id:n.RocketLauncher,name:`火箭发射器`,description:`基础防御设施`,cost:{metal:2e3,crystal:0,deuterium:0,darkMatter:0,energy:0},buildTime:10,attack:80,shield:20,armor:200,requirements:{[e.Shipyard]:1}},[n.LightLaser]:{id:n.LightLaser,name:`轻型激光炮`,description:`激光防御武器`,cost:{metal:1500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildTime:12,attack:100,shield:25,armor:200,requirements:{[e.Shipyard]:2,[t.LaserTechnology]:3}},[n.HeavyLaser]:{id:n.HeavyLaser,name:`重型激光炮`,description:`强力激光武器`,cost:{metal:6e3,crystal:2e3,deuterium:0,darkMatter:0,energy:0},buildTime:20,attack:250,shield:100,armor:800,requirements:{[e.Shipyard]:4,[t.LaserTechnology]:6}},[n.GaussCannon]:{id:n.GaussCannon,name:`高斯炮`,description:`电磁加速武器`,cost:{metal:2e4,crystal:15e3,deuterium:2e3,darkMatter:0,energy:0},buildTime:35,attack:1100,shield:200,armor:3500,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.IonCannon]:{id:n.IonCannon,name:`离子炮`,description:`离子武器系统`,cost:{metal:2e3,crystal:6e3,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:150,shield:500,armor:800,requirements:{[e.Shipyard]:4,[t.IonTechnology]:4}},[n.PlasmaTurret]:{id:n.PlasmaTurret,name:`等离子炮台`,description:`最强防御武器`,cost:{metal:5e4,crystal:5e4,deuterium:3e4,darkMatter:0,energy:0},buildTime:60,attack:3e3,shield:300,armor:1e4,requirements:{[e.Shipyard]:8,[t.PlasmaTechnology]:7}},[n.SmallShieldDome]:{id:n.SmallShieldDome,name:`小型护盾罩`,description:`保护星球的能量护盾`,cost:{metal:1e4,crystal:1e4,deuterium:0,darkMatter:0,energy:0},buildTime:30,attack:1,shield:2e3,armor:2e3,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:3}},[n.LargeShieldDome]:{id:n.LargeShieldDome,name:`大型护盾罩`,description:`强大的星球护盾`,cost:{metal:5e4,crystal:5e4,deuterium:0,darkMatter:0,energy:0},buildTime:60,attack:1,shield:1e4,armor:1e4,requirements:{[e.Shipyard]:6,[t.EnergyTechnology]:6}},[n.PlanetaryShield]:{id:n.PlanetaryShield,name:`行星护盾`,description:`保护行星免受毁灭攻击的超级护盾`,cost:{metal:2e6,crystal:2e6,deuterium:1e6,darkMatter:5e4,energy:0},buildTime:180,attack:1,shield:1e5,armor:1e5,requirements:{[e.Shipyard]:10,[t.EnergyTechnology]:10,[t.HyperspaceTechnology]:8}},[n.AntiBallisticMissile]:{id:n.AntiBallisticMissile,name:`反弹道导弹`,description:`拦截敌方导弹,每个可拦截1枚星际导弹`,cost:{metal:8e3,crystal:0,deuterium:2e3,darkMatter:0,energy:0},buildTime:20,attack:1,shield:1,armor:800,requirements:{[e.MissileSilo]:2}},[n.InterplanetaryMissile]:{id:n.InterplanetaryMissile,name:`星际导弹`,description:`可以攻击其他星球的防御设施,射程取决于脉冲引擎等级`,cost:{metal:12500,crystal:2500,deuterium:1e4,darkMatter:0,energy:0},buildTime:30,attack:12e3,shield:1,armor:1500,requirements:{[e.MissileSilo]:4,[t.ImpulseDrive]:1}}},f={[s.Commander]:{id:s.Commander,name:`指挥官`,description:`提升建筑速度和管理能力`,cost:{metal:0,crystal:5e4,deuterium:25e3,darkMatter:7e3,energy:0},weeklyMaintenance:{metal:0,crystal:5e3,deuterium:2500,darkMatter:900,energy:0},benefits:{buildingSpeedBonus:10,additionalBuildQueue:1,storageCapacityBonus:10}},[s.Admiral]:{id:s.Admiral,name:`上将`,description:`提升舰队作战能力`,cost:{metal:5e4,crystal:25e3,deuterium:0,darkMatter:7e3,energy:0},weeklyMaintenance:{metal:5e3,crystal:2500,deuterium:0,darkMatter:900,energy:0},benefits:{additionalFleetSlots:2,fleetSpeedBonus:10,fuelConsumptionReduction:10}},[s.Engineer]:{id:s.Engineer,name:`工程师`,description:`增强防御和能量系统`,cost:{metal:4e4,crystal:2e4,deuterium:1e4,darkMatter:7e3,energy:0},weeklyMaintenance:{metal:4e3,crystal:2e3,deuterium:1e3,darkMatter:900,energy:0},benefits:{defenseBonus:15,energyProductionBonus:10,buildingSpeedBonus:5}},[s.Geologist]:{id:s.Geologist,name:`地质学家`,description:`提高资源开采效率`,cost:{metal:3e4,crystal:3e4,deuterium:2e4,darkMatter:7e3,energy:0},weeklyMaintenance:{metal:3e3,crystal:3e3,deuterium:2e3,darkMatter:900,energy:0},benefits:{resourceProductionBonus:15,storageCapacityBonus:10}},[s.Technocrat]:{id:s.Technocrat,name:`技术专家`,description:`加快科技研究速度`,cost:{metal:2e4,crystal:4e4,deuterium:2e4,darkMatter:7e3,energy:0},weeklyMaintenance:{metal:2e3,crystal:4e3,deuterium:2e3,darkMatter:900,energy:0},benefits:{researchSpeedBonus:15}},[s.DarkMatterSpecialist]:{id:s.DarkMatterSpecialist,name:`暗物质专家`,description:`提升暗物质采集效率`,cost:{metal:5e4,crystal:1e5,deuterium:5e4,darkMatter:100,energy:0},weeklyMaintenance:{metal:5e3,crystal:1e4,deuterium:5e3,darkMatter:10,energy:0},benefits:{darkMatterProductionBonus:25}}},p={minDebrisField:1e5,baseChance:1,maxChance:20,chancePerDebris:1e5,baseSize:100,lunarBaseSpaceBonus:30},m={baseSize:300,terraformerSpaceBonus:30,terraformingTechSpaceBonus:30},h={baseStorage:1e3,shipyardBonus:1e3,computerTechBonus:500},g={MIN_REPUTATION:-100,MAX_REPUTATION:100,HOSTILE_THRESHOLD:-20,FRIENDLY_THRESHOLD:20,REPUTATION_CHANGES:{GIFT_BASE:0,GIFT_PER_1K_RESOURCES:2,GIFT_MIN_VALUE:500,GIFT_MAX_SINGLE:20,ATTACK:-15,ATTACK_WIN:-25,ATTACK_DESTROY_PLANET:-50,SPY_DETECTED:-5,SPY_UNDETECTED:-2,STEAL_DEBRIS:-10,DESTROY_FLEET:-3,HELP_ATTACK_ENEMY:15,LONG_PEACE_DECAY:1,TRADE:5,ALLY_ATTACKED:-10,ALLY_HELPED:5},NATURAL_DECAY:{ENABLED:!0,INTERVAL:168*3600,TOWARDS_NEUTRAL_RATE:2},BEHAVIOR_MODIFIERS:{HOSTILE_ATTACK_MULTIPLIER:2,HOSTILE_SPY_MULTIPLIER:1.5,FRIENDLY_ATTACK_PROBABILITY:0,FRIENDLY_SPY_PROBABILITY:.5,NEUTRAL_ATTACK_PROBABILITY:1,NEUTRAL_SPY_PROBABILITY:1},NPC_GIFT_CONFIG:{ENABLED:!0,MIN_REPUTATION:60,CHECK_INTERVAL:24*3600,GIFT_PROBABILITY:.05,GIFT_AMOUNT:{METAL:{min:1e3,max:5e3},CRYSTAL:{min:500,max:2500},DEUTERIUM:{min:200,max:1e3}}},GIFT_ACCEPTANCE_CONFIG:{NPC_REJECTION_BASE_PROBABILITY:.3,NPC_REJECTION_REPUTATION_MODIFIER:.01,MIN_REJECTION_PROBABILITY:.05,MAX_REJECTION_PROBABILITY:.8,GIFT_EXPIRATION_DAYS:7,REJECTION_REPUTATION_PENALTY:-5}},_={SIMULATE_BATTLE:`SIMULATE_BATTLE`,CALCULATE_PLUNDER:`CALCULATE_PLUNDER`,CALCULATE_DEBRIS:`CALCULATE_DEBRIS`,SUCCESS:`SUCCESS`,ERROR:`ERROR`};export{r as _,h as a,m as c,e as d,n as f,a as g,s as h,g as i,u as l,i as m,c as n,p as o,o as p,d as r,f as s,_ as t,l as u,t as v}; \ No newline at end of file diff --git a/docs/assets/game-i18n-BC9uiVvf.js b/docs/assets/game-i18n-BC9uiVvf.js deleted file mode 100644 index 4fcabd5..0000000 --- a/docs/assets/game-i18n-BC9uiVvf.js +++ /dev/null @@ -1,120 +0,0 @@ -var e={common:{confirm:`确认`,cancel:`取消`,delete:`删除`,edit:`编辑`,save:`保存`,close:`关闭`,back:`返回`,next:`下一步`,previous:`上一步`,submit:`提交`,reset:`重置`,search:`搜索`,filter:`筛选`,loading:`加载中...`,noData:`暂无数据`,error:`错误`,success:`成功`,warning:`警告`,info:`信息`,resourceType:`资源类型`,playerName:`指挥官`,timeHour:`时`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`功能已锁定`,unlockRequired:`需要解锁前置建筑`,requiredBuilding:`所需建筑`,currentLevel:`当前等级`,goToBuildings:`前往建筑页面`,locked:`已锁定`,viewRequirements:`查看前置条件`,requirementsNotMet:`前置条件未满足`,current:`当前`,level:`等级`,gmModeActivated:`GM 模式已激活!请查看导航菜单。`},errors:{requirementsNotMet:`不满足前置条件`,insufficientResources:`资源不足`,insufficientFleetStorage:`舰队仓储空间不足`,shieldDomeLimit:`护盾罩数量限制`,missileSiloLimit:`导弹发射井容量不足`,insufficientMissiles:`星际导弹数量不足`,invalidMissileCount:`导弹数量无效`,targetOutOfRange:`目标超出射程`,cannotAttackOwnPlanet:`不能攻击自己的星球`,launchFailed:`发射失败`,fleetMissionsFull:`舰队任务槽位已满`,insufficientFleet:`舰队数量不足`,insufficientFuel:`燃料不足`,planetOnly:`该建筑只能在行星上建造`,moonOnly:`该建筑只能在月球上建造`,buildQueueFull:`建造队列已满`,insufficientSpace:`空间不足`,buildingLevelZero:`建筑等级为0,无法拆除`,researchQueueFull:`研究队列已满`,moonExists:`已存在月球`,insufficientDebris:`残骸场不足`},nav:{overview:`总览`,buildings:`建筑`,research:`研究`,shipyard:`船坞`,defense:`防御`,fleet:`舰队`,officers:`军官`,simulator:`模拟`,galaxy:`星系`,diplomacy:`外交`,messages:`消息`,settings:`设置`,gm:`GM`},sidebar:{language:`语言`,lightMode:`日间模式`,darkMode:`夜间模式`,collapse:`收起菜单`,expand:`展开菜单`},resources:{metal:`金属`,crystal:`晶体`,deuterium:`重氢`,darkMatter:`暗物质`,energy:`电力`,production:`产量`,consumption:`消耗`,capacity:`容量`,current:`当前储量`,max:`最大容量`,perHour:`小时`,perMinute:`分钟`,hour:`小时`,noEnergy:`电力不足`},planet:{planet:`星球`,moon:`月球`,colony:`殖民地`,position:`位置`,coordinates:`坐标`,switchToMoon:`查看月球`,backToPlanet:`返回母星`,switchPlanet:`切换星球`,currentPlanet:`当前星球`,fields:`场地`,temperature:`温度`,homePlanet:`母星`,planetPrefix:`星球`,moonSuffix:`的月球`,colonyPrefix:`殖民地`},player:{points:`总积分`},buildings:{metalMine:`金属矿`,crystalMine:`晶体矿`,deuteriumSynthesizer:`重氢合成器`,solarPlant:`太阳能电站`,fusionReactor:`核聚变反应堆`,roboticsFactory:`机器人工厂`,naniteFactory:`纳米工厂`,shipyard:`船坞`,researchLab:`研究实验室`,metalStorage:`金属仓库`,crystalStorage:`晶体仓库`,deuteriumTank:`重氢罐`,darkMatterCollector:`暗物质收集器`,darkMatterTank:`暗物质储罐`,missileSilo:`导弹发射井`,terraformer:`地形改造器`,lunarBase:`月球基地`,sensorPhalanx:`传感器阵列`,jumpGate:`跳跃门`,planetDestroyerFactory:`行星毁灭者工厂`,buildTime:`建造时间`,production:`产量`,consumption:`消耗`,totalCost:`累积成本`,totalPoints:`累积积分`,levelRange:`等级范围`,storageCapacity:`容量`,energyProduction:`电力产出`,fleetStorage:`舰队仓储`,buildQueueBonus:`建造队列`,spaceBonus:`空间加成`,buildSpeedBonus:`建造速度加成`,researchSpeedBonus:`研究速度加成`,missileCapacity:`导弹容量`},buildingDescriptions:{metalMine:`开采金属资源`,crystalMine:`开采晶体资源`,deuteriumSynthesizer:`合成重氢资源`,solarPlant:`提供能源`,fusionReactor:`使用重氢产生大量能源`,roboticsFactory:`加快建造速度`,naniteFactory:`增加建造队列数量,每级+1队列(最多10级)`,shipyard:`建造舰船`,researchLab:`研究科技`,metalStorage:`增加金属存储上限`,crystalStorage:`增加晶体存储上限`,deuteriumTank:`增加重氢存储上限`,darkMatterCollector:`收集稀有的暗物质资源`,darkMatterTank:`增加暗物质存储上限`,missileSilo:`存储和发射导弹,每级可存储10枚导弹`,terraformer:`改造行星地形,每级增加30个可用空间`,lunarBase:`增加月球可用空间,每级+30空间`,sensorPhalanx:`侦测周围星系的舰队活动`,jumpGate:`瞬间传送舰队到其他月球`,planetDestroyerFactory:`建造能够摧毁行星的终极武器`},ships:{lightFighter:`轻型战斗机`,heavyFighter:`重型战斗机`,cruiser:`巡洋舰`,battleship:`战列舰`,battlecruiser:`战列巡洋舰`,bomber:`轰炸机`,destroyer:`驱逐舰`,smallCargo:`小型运输船`,largeCargo:`大型运输船`,colonyShip:`殖民船`,recycler:`回收船`,espionageProbe:`间谍探测器`,solarSatellite:`太阳能卫星`,darkMatterHarvester:`暗物质采集船`,deathstar:`死星`},shipDescriptions:{lightFighter:`基础战斗单位`,heavyFighter:`重装战斗机`,cruiser:`中型战舰,攻守平衡`,battleship:`强力战舰`,battlecruiser:`快速强大的战斗舰船,擅长攻击战列舰`,bomber:`专门对付防御设施的轰炸舰`,destroyer:`擅长摧毁大型舰船的猎杀者`,smallCargo:`运输少量资源`,largeCargo:`运输大量资源`,colonyShip:`用于殖民新星球`,recycler:`收集残骸场资源`,espionageProbe:`侦察敌方星球`,solarSatellite:`提供额外能源,每个产生50点电力`,darkMatterHarvester:`专门用于采集暗物质的特殊飞船`,deathstar:`终极武器,能够摧毁整个行星`},defenses:{rocketLauncher:`火箭发射器`,lightLaser:`轻型激光炮`,heavyLaser:`重型激光炮`,gaussCannon:`高斯炮`,ionCannon:`离子炮`,plasmaTurret:`等离子炮塔`,smallShieldDome:`小型护盾罩`,largeShieldDome:`大型护盾罩`,antiBallisticMissile:`反弹道导弹`,interplanetaryMissile:`星际导弹`,planetaryShield:`行星护盾`},defenseDescriptions:{rocketLauncher:`基础防御设施`,lightLaser:`轻型电力武器`,heavyLaser:`重型电力武器`,gaussCannon:`高速动能武器`,ionCannon:`破坏护盾的利器`,plasmaTurret:`强力防御设施`,smallShieldDome:`保护整个星球的小型护盾`,largeShieldDome:`保护整个星球的大型护盾`,antiBallisticMissile:`拦截敌方导弹,每个可拦截1枚星际导弹`,interplanetaryMissile:`可以攻击其他星球的防御设施`,planetaryShield:`保护行星免受毁灭攻击的超级护盾`},research:{researchTime:`研究时间`,totalCost:`累积成本`,totalPoints:`累积积分`,levelRange:`等级范围`,attackBonus:`攻击加成`,shieldBonus:`护盾加成`,armorBonus:`装甲加成`,spyLevel:`侦查等级`,researchQueueBonus:`研究队列`,colonySlots:`殖民地槽位`,forAllPlanets:`(全局)`,speedBonus:`速度加成`,researchSpeedBonus:`研究速度加成`},technologies:{energyTechnology:`能源技术`,laserTechnology:`激光技术`,ionTechnology:`离子技术`,hyperspaceTechnology:`超空间技术`,plasmaTechnology:`等离子技术`,computerTechnology:`计算机技术`,espionageTechnology:`间谍技术`,weaponsTechnology:`武器技术`,shieldingTechnology:`护盾技术`,armourTechnology:`装甲技术`,astrophysics:`天体物理学`,gravitonTechnology:`引力技术`,combustionDrive:`燃烧引擎`,impulseDrive:`脉冲引擎`,hyperspaceDrive:`超空间引擎`,darkMatterTechnology:`暗物质技术`,terraformingTechnology:`地形改造技术`,planetDestructionTech:`行星毁灭技术`},technologyDescriptions:{energyTechnology:`提高能源利用效率`,laserTechnology:`激光武器和防御的基础`,ionTechnology:`离子武器技术`,hyperspaceTechnology:`超空间跳跃技术`,plasmaTechnology:`等离子武器技术`,computerTechnology:`增加研究队列数量,每级+1队列(最多10级)`,espionageTechnology:`提高间谍探测效果,每级提高1级侦查深度`,weaponsTechnology:`提高舰船和防御的攻击力,每级+10%`,shieldingTechnology:`提高舰船和防御的护盾值,每级+10%`,armourTechnology:`提高舰船和防御的装甲值,每级+10%`,astrophysics:`每级增加1个殖民地槽位,增加探险成功率`,gravitonTechnology:`研究引力操纵,死星的必要技术`,combustionDrive:`基础推进技术`,impulseDrive:`中级推进技术`,hyperspaceDrive:`高级推进技术`,darkMatterTechnology:`研究暗物质的性质和应用`,terraformingTechnology:`研究行星地形改造技术,每级为所有行星增加30个可用空间`,planetDestructionTech:`研究如何摧毁整个行星的恐怖技术`},officers:{commander:`指挥官`,admiral:`上将`,engineer:`工程师`,geologist:`地质学家`,technocrat:`技术专家`,darkMatterSpecialist:`暗物质专家`,resourceBonus:`资源产量加成`,darkMatterBonus:`暗物质产量加成`,energyBonus:`电力产量加成`},officerDescriptions:{commander:`提升建筑速度和管理能力`,admiral:`提升舰队战斗力和速度`,engineer:`提升能源和防御能力`,geologist:`提升资源产量`,technocrat:`提升研究速度和间谍能力`,darkMatterSpecialist:`提升暗物质采集效率`},queue:{buildQueueBonus:`建造队列`,spaceBonus:`空间加成`,researchQueueBonus:`研究队列`,building:`建造中`,researching:`研究中`,remaining:`剩余时间`,cancel:`取消`,cancelBuild:`取消建造`,cancelResearch:`取消研究`,confirmCancel:`确定要取消吗?将返还50%的资源。`,level:`等级`,quantity:`数量`,upgradeToLevel:`升级到等级`},overview:{title:`星球总览`,resourceOverview:`资源概览`,fleetInfo:`舰队`,currentShips:`当前星球的舰船数量`,productionSources:`资源获取来源`,productionSourcesDesc:`详细的资源产量及加成信息`,consumptionSources:`电力消耗来源`,consumptionSourcesDesc:`各建筑的电力消耗详情`,totalProduction:`总产量`,totalConsumption:`总消耗`,noConsumption:`当前无电力消耗`},buildingsView:{title:`建筑`,usedSpace:`已用空间`,spaceUsage:`占用空间`,level:`等级`,upgradeCost:`升级消耗`,buildTime:`建造时间`,upgrade:`升级`,maxLevelReached:`等级已满`,requirementsNotMet:`条件不足`,upgradeFailed:`升级失败`,upgradeFailedMessage:`请检查资源是否足够、空间是否充足或是否有其他建造任务。`,demolish:`拆除`,demolishRefund:`拆除返还`,demolishFailed:`拆除失败`,demolishFailedMessage:`无法拆除该建筑,请检查建造队列是否已满或建筑等级是否为0。`,confirmDemolish:`确认拆除`,confirmDemolishMessage:`确定要拆除`},researchView:{title:`研究`,researchCost:`研究消耗`,research:`研究`,maxLevelReached:`等级已满`,researchFailed:`研究失败`,researchFailedMessage:`请检查资源是否足够、前置条件是否满足,或是否有其他研究任务。`},shipyard:{attack:`攻击力`,shield:`护盾`,armor:`装甲`,speed:`速度`,cargoCapacity:`载货量`,fuelConsumption:`燃料消耗`,buildCost:`建造成本`,buildTime:`建造时间`,perUnit:`每个单位`,batchCalculator:`批量建造计算器`,quantity:`数量`,totalCost:`总成本`,totalTime:`总时间`},shipyardView:{title:`船坞`,fleetStorage:`舰队仓储`,attack:`攻击力`,shield:`护盾`,speed:`速度`,cargoCapacity:`载货量`,unitCost:`单位成本`,buildQuantity:`建造数量`,totalCost:`总成本`,build:`建造`,inputError:`输入错误`,inputErrorMessage:`请输入建造数量!`,buildFailed:`建造失败`,buildFailedMessage:`请检查资源是否足够或前置条件是否满足。`},defense:{attack:`攻击力`,shield:`护盾`,armor:`装甲`,buildCost:`建造成本`,buildTime:`建造时间`,perUnit:`每个单位`,batchCalculator:`批量建造计算器`,quantity:`数量`,totalCost:`总成本`,totalTime:`总时间`},defenseView:{title:`防御设施`,attack:`攻击力`,shield:`护盾`,armor:`装甲`,buildTime:`建造时间`,seconds:`秒`,unitCost:`单位成本`,buildQuantity:`建造数量`,totalCost:`总成本`,build:`建造`,shieldDomeBuilt:`护盾罩已建造`,missileCapacity:`导弹容量`,inputError:`输入错误`,inputErrorMessage:`请输入建造数量!`,buildFailed:`建造失败`,buildFailedMessage:`请检查资源是否足够或前置条件是否满足。护盾罩只能建造一个。`},fleetView:{title:`舰队管理`,fleetOverview:`舰队总览`,sendFleet:`派遣舰队`,flightMissions:`飞行任务`,currentPlanetFleet:`当前星球舰队`,attack:`攻击`,shield:`护盾`,armor:`装甲`,speed:`速度`,cargo:`载货`,selectFleet:`选择舰队`,selectFleetDescription:`选择要派遣的舰船数量`,available:`可用`,all:`全部`,targetCoordinates:`目标坐标`,galaxy:`银河系`,system:`星系`,position:`位置`,missionType:`任务类型`,missionInfo:`任务信息`,fuelConsumption:`燃料消耗`,flightTime:`飞行时间`,attackMission:`攻击`,transport:`运输`,colonize:`殖民`,spy:`侦察`,deploy:`部署`,recycle:`回收`,destroy:`行星毁灭`,transportResources:`运输资源`,totalCargoCapacity:`总载货量`,used:`已用`,noFlightMissions:`暂无飞行任务`,outbound:`前往`,returning:`返回`,fleetComposition:`舰队组成`,carryingResources:`携带资源`,arrivalTime:`到达时间`,returnTime:`返回时间`,recallFleet:`召回舰队`,sendFailed:`派遣失败`,sendFailedMessage:`请检查舰队数量、燃料是否充足,或载货量是否超出限制。`,recallFailed:`召回失败`,recallFailedMessage:`该任务无法召回。`,unknownPlanet:`未知星球`,fleetMissionSlots:`舰队任务槽位`,noShipsSelected:`未选择舰船`,cannotSendToOwnPlanet:`无法派遣舰队到自己的星球`,cargoExceedsCapacity:`载货量超出限制`,noColonyShip:`需要殖民船才能执行殖民任务`,noDebrisAtTarget:`目标坐标没有残骸场或残骸场已空`,noDeathstar:`需要死星才能执行毁灭任务`,giftMode:`赠送模式`,giftModeDescription:`将资源作为礼物赠送给`,estimatedReputationGain:`预计好感度增加`},officersView:{title:`军官`,activated:`已激活`,inactive:`未激活`,activeStatus:`激活状态`,expirationTime:`到期时间`,remainingTime:`剩余时间`,recruitCost:`招募成本`,days:`天`,benefitsBonus:`效果加成`,resourceProduction:`资源产量`,darkMatterProduction:`暗物质产量`,energyProduction:`电量产出`,buildingSpeed:`建筑速度`,researchSpeed:`研究速度`,fleetSpeed:`舰队速度`,fuelConsumption:`燃料消耗`,defense:`防御力`,storageCapacity:`仓储容量`,buildQueue:`建筑队列`,fleetSlots:`舰队槽位`,hire:`招募`,renew:`续约`,dismiss:`解雇`,hireTitle:`招募军官`,hireMessage:`确定要招募 {name} 吗?有效期为7天。`,renewTitle:`续约军官`,renewMessage:`确定要为 {name} 续约7天吗?`,dismissTitle:`解雇军官`,dismissMessage:`确定要解雇 {name} 吗?不会返还任何费用。`,hireFailed:`招募失败`,renewFailed:`续约失败`,insufficientResources:`资源不足!`},galaxyView:{title:`星系`,selectCoordinates:`选择坐标`,galaxy:`银河系`,selectGalaxy:`选择银河系`,system:`星系`,selectSystem:`选择星系`,view:`查看`,myPlanet:`我的星球`,myPlanets:`查看我的星系`,npcPlanets:`NPC星球`,selectPlanetToView:`选择星球以查看其所在星系`,totalPositions:`共10个星球位置`,mine:`我的`,hostile:`敌对`,emptySlot:`空位 - 可殖民`,scout:`侦察`,attack:`攻击`,missileAttack:`导弹攻击`,colonize:`殖民`,switch:`切换`,recycle:`回收`,sendGift:`赠送礼物`,debris:`残骸`,debrisField:`残骸场`,scoutPlanetTitle:`侦察星球`,attackPlanetTitle:`攻击星球`,missileAttackTitle:`导弹攻击`,colonizePlanetTitle:`殖民星球`,recyclePlanetTitle:`回收残骸`,giftPlanetTitle:`赠送礼物`,scoutPlanetMessage:`确定要派遣间谍探测器侦察星球 [{coordinates}] 吗? - -请前往舰队页面选择舰船并派遣。`,attackPlanetMessage:`确定要攻击星球 [{coordinates}] 吗? - -请前往舰队页面选择舰船并派遣。`,missileAttackMessage:`向星球 [{coordinates}] 发射导弹`,missileCount:`导弹数量`,availableMissiles:`可用导弹`,missileRange:`射程`,systems:`系统`,distance:`距离`,flightTime:`飞行时间`,launchMissile:`发射`,missileLaunched:`导弹已发射`,cancel:`取消`,colonizePlanetMessage:`确定要殖民位置 [{coordinates}] 吗? - -请前往舰队页面派遣殖民船。`,recyclePlanetMessage:`确定要回收位置 [{coordinates}] 的残骸吗? - -请前往舰队页面派遣回收船。`,giftPlanetMessage:`确定要向星球 [{coordinates}] 赠送资源吗? - -请前往舰队页面选择运输船并装载资源。`},messagesView:{title:`消息中心`,battles:`战斗`,spy:`侦查`,npc:`NPC`,battleReports:`战斗报告`,spyReports:`间谍报告`,noBattleReports:`暂无战斗报告`,noSpyReports:`暂无间谍报告`,battleReport:`战斗报告`,spyReport:`间谍报告`,victory:`胜利`,defeat:`失败`,draw:`平局`,attackerFleet:`攻击方舰队`,defenderFleet:`防守方舰队`,defenderDefense:`防守方防御`,attackerLosses:`攻击方损失`,defenderLosses:`防守方损失`,noLosses:`无损失`,plunder:`掠夺资源`,debrisField:`残骸场`,resources:`资源`,fleet:`舰队`,defense:`防御`,buildings:`建筑`,unread:`未读`,targetPlanet:`目标星球`,attackerRemaining:`攻击方剩余`,defenderRemaining:`防守方剩余`,moonChance:`月球生成概率`,showRoundDetails:`显示回合详情`,hideRoundDetails:`隐藏回合详情`,round:`第{round}回合`,attackerRemainingPower:`攻击方剩余火力`,defenderRemainingPower:`防守方剩余火力`,spied:`被侦查`,spiedNotification:`被侦查通知`,noSpiedNotifications:`暂无被侦查通知`,detected:`已发现`,undetected:`未发现`,missions:`任务`,noMissionReports:`暂无任务报告`,success:`成功`,failed:`失败`,npcActivity:`NPC活动`,noNPCActivity:`暂无NPC活动通知`,npcRecycleActivity:`NPC回收残骸`,gifts:`礼物`,giftRejected:`被拒绝`,noGiftNotifications:`暂无礼物通知`,noGiftRejected:`暂无拒绝记录`,giftFrom:`{npcName}的礼物`,giftRejectedBy:`{npcName}拒绝了礼物`,giftResources:`礼物资源`,rejectedResources:`被拒绝的资源`,expectedReputation:`预计好感度`,currentReputation:`当前好感度`,acceptGift:`接受`,rejectGift:`拒绝`,rejectionReason:{hostile:`对方对你有敌意,不接受礼物`,neutral_distrust:`对方对你缺乏信任`,polite_decline:`对方礼貌地拒绝了`}},missionReports:{transportSuccess:`运输任务成功完成`,transportFailed:`运输任务失败`,colonizeSuccess:`殖民任务成功,新星球已建立`,colonizeFailed:`殖民任务失败`,deploySuccess:`部署任务成功完成`,deployFailed:`部署任务失败`,recycleSuccess:`回收任务成功完成`,recycleFailed:`回收任务失败,目标位置没有残骸`,destroySuccess:`行星毁灭任务成功执行`,destroyFailed:`行星毁灭任务失败`,missileAttackSuccess:`导弹攻击成功`,missileAttackFailed:`导弹攻击失败,目标星球不存在`,missileAttackIntercepted:`所有导弹被拦截`,hits:`枚命中`},simulatorView:{title:`战斗模拟器`,attacker:`攻击方`,defender:`防守方`,attackerConfig:`攻击方配置`,attackerConfigDesc:`设置攻击方的舰队和科技等级`,defenderConfig:`防守方配置`,defenderConfigDesc:`设置防守方的舰队、防御和科技等级`,fleet:`舰队`,defenseStructures:`防御设施`,techLevels:`科技等级`,weapon:`武器`,shield:`护盾`,armor:`装甲`,defenderResources:`防守方资源(用于掠夺计算)`,startSimulation:`开始模拟`,reset:`重置`,battleResult:`战斗结果`,attackerVictory:`攻击方胜利`,defenderVictory:`防守方胜利`,draw:`平局`,afterRounds:`经过 {rounds} 回合战斗`,attackerLosses:`攻击方损失`,defenderLosses:`防守方损失`,noLosses:`无损失`,attackerRemaining:`攻击方剩余`,defenderRemaining:`防守方剩余`,allDestroyed:`全部摧毁`,plunderableResources:`可掠夺资源`,debrisField:`残骸场`,moonChance:`月球生成概率`,showRoundDetails:`显示回合详情`,hideRoundDetails:`隐藏回合详情`,round:`第 {round} 回合`,attackerRemainingPower:`攻击方剩余火力`,defenderRemainingPower:`防守方剩余火力`},settings:{dataManagement:`数据管理`,dataManagementDesc:`导出、导入或清除游戏数据`,exportData:`导出数据`,exportDataDesc:`将游戏进度导出为JSON文件`,export:`导出`,exporting:`导出中...`,exportSuccess:`导出成功`,exportFailed:`导出失败,请重试`,importData:`导入数据`,importDataDesc:`从JSON文件恢复游戏进度`,selectFile:`导入`,importSuccess:`导入成功`,importConfirmTitle:`确认导入数据`,importConfirmMessage:`导入数据将覆盖当前游戏进度,此操作不可撤销。确定要继续吗?`,importFailed:`导入失败,请检查文件格式`,clearData:`清除数据`,clearDataDesc:`删除所有游戏数据并重置游戏`,clear:`清除`,clearConfirmTitle:`确认清除数据`,clearConfirmMessage:`这将删除所有游戏数据并重新开始,此操作不可撤销。确定要继续吗?`,gameSettings:`游戏设置`,gameSettingsDesc:`调整游戏参数和偏好设置`,gamePause:`游戏暂停`,gamePauseDesc:`暂停或恢复游戏时间和资源生产`,pause:`暂停`,resume:`恢复`,gamePaused:`游戏已暂停`,gameResumed:`游戏已恢复`,playerName:`玩家名称`,gameSpeed:`资源产出速度`,gameSpeedDesc:`当前资源产出速度倍率`,speedChanged:`资源产出速度已更改为 {speed}x`,speedReset:`资源产出速度已重置为 1x`,reset:`重置`,about:`关于`,version:`版本`,latestVersion:`最新版本`,checkUpdate:`检查更新`,checking:`检查中...`,newVersionAvailable:`发现新版本 {version}`,upToDate:`已是最新版本`,checkUpdateCooldown:`请稍后再试(5分钟冷却时间)`,checkUpdateFailed:`检查更新失败,请检查网络连接`,viewUpdate:`查看更新`,updateAvailable:`有新版本可用。点击查看更新内容。`,download:`下载`,goToDownload:`前往下载`,buildDate:`构建日期`,community:`社区`,github:`GitHub 仓库`,qqGroup:`QQ 交流群`},gmView:{title:`GM 管理面板`,adminOnly:`仅管理员`,selectPlanet:`选择星球`,choosePlanet:`选择一个星球`,resources:`资源`,buildings:`建筑`,research:`科技`,ships:`舰船`,defense:`防御`,officers:`军官`,modifyResources:`修改资源`,resourcesDesc:`快速修改星球资源数量`,modifyBuildings:`修改建筑`,buildingsDesc:`快速设置建筑等级`,modifyResearch:`修改科技`,researchDesc:`快速设置科技等级`,modifyShips:`修改舰船`,shipsDesc:`快速设置舰船数量`,modifyDefense:`修改防御`,defenseDesc:`快速设置防御数量`,modifyOfficers:`修改军官`,officersDesc:`快速设置军官到期时间`,days:`天`,npcTesting:`NPC 测试`,npcTestingDesc:`测试NPC侦查和攻击行为`,selectNPC:`选择NPC`,chooseNPC:`选择一个NPC`,targetPlanet:`目标星球`,chooseTarget:`选择目标星球`,testSpy:`测试侦查`,testAttack:`测试攻击`,testSpyAndAttack:`测试侦查&攻击`,testSpyMessage:`点击确认以加速侦查任务`,testAttackMessage:`点击确认以加速攻击任务`,testSpyAndAttackMessage:`点击确认以加速任务执行`,initializeFleet:`初始化NPC舰队`,accelerateMissions:`加速所有任务(5秒)`,selectNPCFirst:`请先选择一个NPC`,npcNoProbes:`NPC没有间谍探测器`,npcNoSpyReport:`NPC需要先侦查`,npcMissionFailed:`创建任务失败`,npcNoPlanets:`NPC没有星球`,npcWillSpyIn5s:`{npcName}将在5秒后侦查`,npcWillAttackIn5s:`{npcName}将在5秒后攻击`,npcWillSpyAndAttack:`{npcName}将在5秒后侦查,10秒后攻击`,acceleratedMissions:`已加速{count}个任务至5秒后`,npcFleetInitialized:`{npcName}舰队已初始化`,npcFleetDetails:`100 间谍探测器 -500 轻型战机 -300 重型战机 -200 巡洋舰 -100 战列舰 -50 轰炸机 -30 毁灭者 -20 战列巡洋舰`,dangerZone:`危险区域`,dangerZoneDesc:`以下操作不可撤销,请谨慎操作`,resetGame:`重置游戏`,resetGameConfirm:`确定要重置游戏吗?这将删除所有数据!`},alerts:{npcSpyIncoming:`NPC侦查即将到达`,npcAttackIncoming:`NPC舰队来袭!`,npcFleetIncoming:`NPC舰队接近`,ships:`艘舰船`,spiedBy:`被侦查`,attackedBy:`被攻击`,detectionSuccess:`侦查被发现`,detectionFailed:`侦查未被发现`,npcSpiedYourPlanet:`NPC侦查了你的星球`,npcAttackedYourPlanet:`NPC攻击了你的星球`},diplomacy:{title:`外交`,description:`管理与NPC的外交关系`,tabs:{all:`全部`,friendly:`友好`,neutral:`中立`,hostile:`敌对`},noNpcs:`暂无NPC`,noFriendlyNpcs:`暂无友好NPC`,noNeutralNpcs:`暂无中立NPC`,noHostileNpcs:`暂无敌对NPC`,recentEvents:`最近事件`,recentEventsDescription:`最近的外交活动记录`,ago:`前`,status:{friendly:`友好`,neutral:`中立`,hostile:`敌对`},planets:`个星球`,allies:`个盟友`,reputation:`好感度`,alliedWith:`盟友`,more:`更多`,actions:{gift:`赠送资源`,viewPlanets:`查看星球`},lastEvent:`最近活动`,events:{gift:`赠送资源`,attack:`攻击`,allyAttacked:`攻击盟友`,spy:`侦查`,stealDebris:`抢夺残骸`},reports:{giftedResources:`赠送了 {metal}金属 {crystal}晶体 {deuterium}氘`,receivedGiftFromPlayer:`收到玩家的礼物`,giftedToNpc:`你向{npcName}赠送了资源。好感度+{reputation}`,rejectedPlayerGift:`拒绝了玩家的礼物`,npcRejectedGift:`{npcName}拒绝了你的礼物。好感度{reputation}`,attackedNpc:`攻击了{npcName}`,wasAttackedByPlayer:`被玩家攻击`,youAttackedNpc:`你攻击了{npcName}`,playerAttackedAlly:`玩家攻击了盟友{allyName}`,allyDispleased:`{allyName}对你攻击盟友{targetName}感到不满`,wasSpiedByPlayer:`被玩家侦查(被发现:{detected})`,spyDetected:`你的侦查被{npcName}发现了`,stoleDebrisFromTerritory:`从{npcName}的领地抢夺了残骸`,playerStoleDebris:`玩家从领地抢夺了残骸`,recycledDebrisNearNpc:`你在{npcName}的星球附近回收了残骸。他们很不高兴。`,giftedResourcesToPlayer:`向玩家赠送了资源`,receivedGiftFromNpc:`收到了{npcName}的礼物`,acceptedGiftFromNpc:`你接受了{npcName}的礼物:{metal}金属 {crystal}晶体 {deuterium}氘`,playerRejectedGift:`玩家拒绝了礼物`,rejectedGiftFromNpc:`你拒绝了{npcName}的礼物。好感度{reputation}`}},pagination:{previous:`上一页`,next:`下一页`,first:`首页`,last:`末页`,page:`第 {page} 页`},notFound:{title:`页面未找到`,description:`抱歉,您访问的页面不存在`,goHome:`返回首页`}},t={common:{confirm:`確認`,cancel:`取消`,delete:`刪除`,edit:`編輯`,save:`儲存`,close:`關閉`,back:`返回`,next:`下一步`,previous:`上一步`,submit:`提交`,reset:`重置`,search:`搜尋`,filter:`篩選`,loading:`載入中...`,noData:`暫無資料`,error:`錯誤`,success:`成功`,warning:`警告`,info:`資訊`,resourceType:`資源類型`,playerName:`指揮官`,timeHour:`時`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`功能已鎖定`,unlockRequired:`需要解鎖前置建築`,requiredBuilding:`所需建築`,currentLevel:`當前等級`,goToBuildings:`前往建築頁面`,locked:`已鎖定`,viewRequirements:`查看前置條件`,requirementsNotMet:`前置條件未滿足`,current:`當前`,level:`等級`,gmModeActivated:`GM 模式已啟用!請查看導航選單。`},errors:{requirementsNotMet:`不滿足前置條件`,insufficientResources:`資源不足`,insufficientFleetStorage:`艦隊倉儲空間不足`,shieldDomeLimit:`護盾罩數量限制`,missileSiloLimit:`導彈發射井容量已滿`,insufficientMissiles:`星際導彈數量不足`,invalidMissileCount:`導彈數量無效`,targetOutOfRange:`目標超出射程`,cannotAttackOwnPlanet:`不能攻擊自己的星球`,fleetMissionsFull:`艦隊任務槽位已滿`,insufficientFleet:`艦隊數量不足`,insufficientFuel:`燃料不足`,planetOnly:`該建築只能在行星上建造`,moonOnly:`該建築只能在月球上建造`,buildQueueFull:`建造隊列已滿`,insufficientSpace:`空間不足`,buildingLevelZero:`建築等級為0,無法拆除`,researchQueueFull:`研究隊列已滿`,moonExists:`已存在月球`,insufficientDebris:`殘骸場不足`},nav:{overview:`總覽`,buildings:`建築`,research:`研究`,shipyard:`船塢`,defense:`防禦`,fleet:`艦隊`,officers:`軍官`,simulator:`模擬`,galaxy:`星系`,diplomacy:`Diplomacy`,messages:`訊息`,settings:`設定`,gm:`GM`},sidebar:{language:`語言`,lightMode:`日間模式`,darkMode:`夜間模式`,collapse:`收起選單`,expand:`展開選單`},resources:{metal:`金屬`,crystal:`晶體`,deuterium:`重氫`,darkMatter:`暗物質`,energy:`電力`,production:`產量`,consumption:`消耗`,capacity:`容量`,current:`當前儲量`,max:`最大容量`,perHour:`小時`,perMinute:`分鐘`,hour:`小時`,noEnergy:`電力不足`},planet:{planet:`星球`,moon:`月球`,colony:`殖民地`,position:`位置`,coordinates:`座標`,switchToMoon:`查看月球`,backToPlanet:`返回母星`,switchPlanet:`切換星球`,currentPlanet:`當前星球`,fields:`場地`,temperature:`溫度`,homePlanet:`母星`,planetPrefix:`星球`,moonSuffix:`的月球`,colonyPrefix:`殖民地`},player:{points:`總積分`},buildings:{metalMine:`金屬礦`,crystalMine:`晶體礦`,deuteriumSynthesizer:`重氫合成器`,solarPlant:`太陽能電站`,fusionReactor:`核聚變反應堆`,roboticsFactory:`機器人工廠`,naniteFactory:`納米工廠`,shipyard:`船塢`,researchLab:`研究實驗室`,metalStorage:`金屬倉庫`,crystalStorage:`晶體倉庫`,deuteriumTank:`重氫罐`,darkMatterCollector:`暗物質收集器`,darkMatterTank:`暗物質儲罐`,missileSilo:`導彈發射井`,terraformer:`地形改造器`,lunarBase:`月球基地`,sensorPhalanx:`傳感器陣列`,jumpGate:`跳躍門`,planetDestroyerFactory:`行星毀滅者工廠`,buildTime:`建造時間`,production:`產量`,consumption:`消耗`,totalCost:`累積成本`,totalPoints:`累積積分`,levelRange:`等級範圍`,capacity:`容量/效果`,storageCapacity:`容量`,energyProduction:`電力產出`,fleetStorage:`艦隊倉儲`,buildQueue:`建造隊列`,buildQueueBonus:`建造隊列`,spaceBonus:`空間加成`,buildSpeedBonus:`建造速度加成`,researchSpeedBonus:`研究速度加成`,planetSpace:`行星空間`,moonSpace:`月球空間`,missileCapacity:`導彈容量`},buildingDescriptions:{metalMine:`開採金屬資源`,crystalMine:`開採晶體資源`,deuteriumSynthesizer:`合成重氫資源`,solarPlant:`提供能源`,fusionReactor:`使用重氫產生大量能源`,roboticsFactory:`加快建造速度`,naniteFactory:`增加建造佇列數量,每級+1佇列(最多10級)`,shipyard:`建造艦船`,researchLab:`研究科技`,metalStorage:`增加金屬儲存上限`,crystalStorage:`增加晶體儲存上限`,deuteriumTank:`增加重氫儲存上限`,darkMatterCollector:`收集稀有的暗物質資源`,darkMatterTank:`增加暗物質儲存上限`,missileSilo:`存儲和發射導彈,每級可存儲10枚導彈`,terraformer:`改造行星地形,每級增加30個可用空間`,lunarBase:`增加月球可用空間,每級+30空間`,sensorPhalanx:`偵測周圍星系的艦隊活動`,jumpGate:`瞬間傳送艦隊到其他月球`,planetDestroyerFactory:`建造能夠摧毀行星的終極武器`},ships:{lightFighter:`輕型戰鬥機`,heavyFighter:`重型戰鬥機`,cruiser:`巡洋艦`,battleship:`戰列艦`,battlecruiser:`戰列巡洋艦`,bomber:`轟炸機`,destroyer:`驅逐艦`,smallCargo:`小型運輸船`,largeCargo:`大型運輸船`,colonyShip:`殖民船`,recycler:`回收船`,espionageProbe:`間諜探測器`,solarSatellite:`太陽能衛星`,darkMatterHarvester:`暗物質採集船`,deathstar:`死星`},shipDescriptions:{lightFighter:`基礎戰鬥單位`,heavyFighter:`重裝戰鬥機`,cruiser:`中型戰艦,攻守平衡`,battleship:`強力戰艦`,battlecruiser:`快速強大的戰鬥艦船,擅長攻擊戰列艦`,bomber:`專門對付防禦設施的轟炸艦`,destroyer:`擅長摧毀大型艦船的獵殺者`,smallCargo:`運輸少量資源`,largeCargo:`運輸大量資源`,colonyShip:`用於殖民新星球`,recycler:`收集殘骸場資源`,espionageProbe:`偵察敵方星球`,solarSatellite:`提供額外能源,每個產生50點電力`,darkMatterHarvester:`專門用於採集暗物質的特殊飛船`,deathstar:`終極武器,能夠摧毀整個行星`},defenses:{rocketLauncher:`火箭發射器`,lightLaser:`輕型激光炮`,heavyLaser:`重型激光炮`,gaussCannon:`高斯炮`,ionCannon:`離子炮`,plasmaTurret:`等離子炮塔`,smallShieldDome:`小型護盾罩`,largeShieldDome:`大型護盾罩`,antiBallisticMissile:`反彈道導彈`,interplanetaryMissile:`星際導彈`,planetaryShield:`行星護盾`},defenseDescriptions:{rocketLauncher:`基礎防禦設施`,lightLaser:`輕型電力武器`,heavyLaser:`重型電力武器`,gaussCannon:`高速動能武器`,ionCannon:`破壞護盾的利器`,plasmaTurret:`強力防禦設施`,smallShieldDome:`保護整個星球的小型護盾`,largeShieldDome:`保護整個星球的大型護盾`,antiBallisticMissile:`攔截敵方導彈,每個可攔截1枚星際導彈`,interplanetaryMissile:`可以攻擊其他星球的防禦設施`,planetaryShield:`保護行星免受毀滅攻擊的超級護盾`},research:{researchTime:`研究時間`,totalCost:`累積成本`,totalPoints:`累積積分`,levelRange:`等級範圍`,capacity:`容量/效果`,attackBonus:`攻擊加成`,shieldBonus:`護盾加成`,armorBonus:`裝甲加成`,spyLevel:`偵查等級`,researchQueueBonus:`研究隊列`,colonySlots:`殖民地槽位`,forAllPlanets:`(全局)`,speedBonus:`速度加成`,researchSpeedBonus:`研究速度加成`},technologies:{energyTechnology:`能源技術`,laserTechnology:`激光技術`,ionTechnology:`離子技術`,hyperspaceTechnology:`超空間技術`,plasmaTechnology:`等離子技術`,computerTechnology:`計算機技術`,espionageTechnology:`間諜技術`,weaponsTechnology:`武器技術`,shieldingTechnology:`護盾技術`,armourTechnology:`裝甲技術`,astrophysics:`天體物理學`,gravitonTechnology:`引力技術`,combustionDrive:`燃燒引擎`,impulseDrive:`脈衝引擎`,hyperspaceDrive:`超空間引擎`,darkMatterTechnology:`暗物質技術`,terraformingTechnology:`地形改造技術`,planetDestructionTech:`行星毀滅技術`},technologyDescriptions:{energyTechnology:`提高能源利用效率`,laserTechnology:`激光武器和防禦的基礎`,ionTechnology:`離子武器技術`,hyperspaceTechnology:`超空間跳躍技術`,plasmaTechnology:`等離子武器技術`,computerTechnology:`增加研究佇列數量,每級+1佇列(最多10級)`,espionageTechnology:`提高間諜探測效果,每級提高1級偵查深度`,weaponsTechnology:`提高艦船和防禦的攻擊力,每級+10%`,shieldingTechnology:`提高艦船和防禦的護盾值,每級+10%`,armourTechnology:`提高艦船和防禦的裝甲值,每級+10%`,astrophysics:`每級增加1個殖民地槽位,增加探險成功率`,gravitonTechnology:`研究引力操縱,死星的必要技術`,combustionDrive:`基礎推進技術`,impulseDrive:`中級推進技術`,hyperspaceDrive:`高級推進技術`,darkMatterTechnology:`研究暗物質的性質和應用`,terraformingTechnology:`研究行星地形改造技術,每級為所有行星增加30個可用空間`,planetDestructionTech:`研究如何摧毀整個行星的恐怖技術`},officers:{commander:`指揮官`,admiral:`上將`,engineer:`工程師`,geologist:`地質學家`,technocrat:`技術專家`,darkMatterSpecialist:`暗物質專家`,resourceBonus:`資源生產加成`,darkMatterBonus:`暗物質生產加成`,energyBonus:`電力產量加成`},officerDescriptions:{commander:`提升建築速度和管理能力`,admiral:`提升艦隊戰鬥力和速度`,engineer:`提升能源和防禦能力`,geologist:`提升資源產量`,technocrat:`提升研究速度和間諜能力`,darkMatterSpecialist:`提升暗物質採集效率`},queue:{buildQueue:`建造佇列`,researchQueue:`研究佇列`,building:`建造中`,researching:`研究中`,remaining:`剩餘時間`,cancel:`取消`,cancelBuild:`取消建造`,cancelResearch:`取消研究`,confirmCancel:`確定要取消嗎?將返還50%的資源。`,level:`等級`,gmModeActivated:``,upgradeToLevel:`升級到等級`},overview:{title:`星球總覽`,resourceOverview:`資源概覽`,fleetInfo:`艦隊資訊`,currentShips:`當前星球的艦船數量`,productionSources:`生產來源`,productionSourcesDesc:`詳細資源生產和加成資訊`,consumptionSources:`電力消耗來源`,consumptionSourcesDesc:`各建築的電力消耗詳情`,totalProduction:`總產量`,totalConsumption:`總消耗`,noConsumption:`當前無電力消耗`},buildingsView:{title:`建築`,usedSpace:`已用空間`,spaceUsage:`佔用空間`,level:`等級`,gmModeActivated:``,upgradeCost:`升級消耗`,buildTime:`建造時間`,upgrade:`升級`,maxLevelReached:`等級已滿`,requirementsNotMet:`條件不足`,upgradeFailed:`升級失敗`,upgradeFailedMessage:`請檢查資源是否足夠、空間是否充足或是否有其他建造任務。`,demolish:`拆除`,demolishRefund:`拆除返還`,demolishFailed:`拆除失敗`,demolishFailedMessage:`無法拆除該建築,請檢查建造隊列是否已滿或建築等級是否為0。`,confirmDemolish:`確認拆除`,confirmDemolishMessage:`確定要拆除以下建築嗎?`},researchView:{title:`研究`,researchCost:`研究消耗`,research:`研究`,maxLevelReached:`等級已滿`,researchFailed:`研究失敗`,researchFailedMessage:`請檢查資源是否足夠、前置條件是否滿足,或是否有其他研究任務。`},shipyard:{attack:`攻擊力`,missileAttack:`導彈攻擊`,shield:`護盾`,armor:`裝甲`,speed:`速度`,cargoCapacity:`載貨量`,fuelConsumption:`燃料消耗`,buildCost:`建造成本`,buildTime:`建造時間`,perUnit:`每個單位`,batchCalculator:`批量建造計算器`,quantity:`數量`,totalCost:`總成本`,totalTime:`總時間`},shipyardView:{title:`船塢`,fleetStorage:`艦隊倉儲`,attack:`攻擊力`,missileAttack:`導彈攻擊`,shield:`護盾`,speed:`速度`,cargoCapacity:`載貨量`,unitCost:`單位成本`,buildQuantity:`建造數量`,totalCost:`總成本`,build:`建造`,inputError:`輸入錯誤`,inputErrorMessage:`請輸入建造數量!`,buildFailed:`建造失敗`,buildFailedMessage:`請檢查資源是否足夠或前置條件是否滿足。`},defense:{attack:`攻擊力`,missileAttack:`導彈攻擊`,shield:`護盾`,armor:`裝甲`,buildCost:`建造成本`,buildTime:`建造時間`,perUnit:`每個單位`,batchCalculator:`批量建造計算器`,quantity:`數量`,totalCost:`總成本`,totalTime:`總時間`},defenseView:{title:`防禦設施`,attack:`攻擊力`,missileAttack:`導彈攻擊`,shield:`護盾`,armor:`裝甲`,buildTime:`建造時間`,seconds:`秒`,unitCost:`單位成本`,buildQuantity:`建造數量`,totalCost:`總成本`,build:`建造`,shieldDomeBuilt:`護盾罩已建造`,missileCapacity:`導彈容量`,inputError:`輸入錯誤`,inputErrorMessage:`請輸入建造數量!`,buildFailed:`建造失敗`,buildFailedMessage:`請檢查資源是否足夠或前置條件是否滿足。護盾罩只能建造一個。`},fleetView:{title:`艦隊管理`,fleetOverview:`艦隊總覽`,sendFleet:`派遣艦隊`,flightMissions:`飛行任務`,currentPlanetFleet:`當前星球艦隊`,attack:`攻擊`,missileAttack:`導彈攻擊`,shield:`護盾`,armor:`裝甲`,speed:`速度`,cargo:`載貨`,selectFleet:`選擇艦隊`,selectFleetDescription:`選擇要派遣的艦船數量`,available:`可用`,all:`全部`,targetCoordinates:`目標座標`,galaxy:`銀河系`,diplomacy:`Diplomacy`,system:`星系`,position:`位置`,missionType:`任務類型`,missionInfo:`任務資訊`,fuelConsumption:`燃料消耗`,flightTime:`飛行時間`,attackMission:`攻擊`,transport:`運輸`,colonize:`殖民`,spy:`偵察`,deploy:`部署`,recycle:`回收`,transportResources:`運輸資源`,totalCargoCapacity:`總載貨量`,used:`已用`,noFlightMissions:`暫無飛行任務`,outbound:`前往`,returning:`返回`,fleetComposition:`艦隊組成`,carryingResources:`攜帶資源`,arrivalTime:`到達時間`,returnTime:`返回時間`,recallFleet:`召回艦隊`,sendFailed:`派遣失敗`,sendFailedMessage:`請檢查艦隊數量、燃料是否充足,或載貨量是否超出限制。`,recallFailed:`召回失敗`,recallFailedMessage:`該任務無法召回。`,unknownPlanet:`未知星球`,fleetMissionSlots:`艦隊任務槽位`,noShipsSelected:`未選擇艦船`,cannotSendToOwnPlanet:`無法派遣艦隊到自己的星球`,cargoExceedsCapacity:`載貨量超出限制`,noColonyShip:`需要殖民船才能執行殖民任務`,noDebrisAtTarget:`目標坐標沒有殘骸場或殘骸場已空`,noDeathstar:`需要死星才能執行毀滅任務`,giftMode:`贈送模式`,giftModeDescription:`將資源作為禮物贈送給`,estimatedReputationGain:`預計好感度增加`},officersView:{title:`軍官`,activated:`已啟用`,inactive:`未啟用`,activeStatus:`啟用狀態`,expirationTime:`到期時間`,remainingTime:`剩餘時間`,recruitCost:`招募成本`,days:`天`,benefitsBonus:`效果加成`,resourceProduction:`資源產量`,darkMatterProduction:`暗物質產量`,energyProduction:`電量產出`,buildingSpeed:`建築速度`,researchSpeed:`研究速度`,fleetSpeed:`艦隊速度`,fuelConsumption:`燃料消耗`,defense:`防禦力`,storageCapacity:`倉儲容量`,buildQueue:`建築佇列`,fleetSlots:`艦隊槽位`,hire:`招募`,renew:`續約`,dismiss:`解雇`,hireTitle:`招募軍官`,hireMessage:`確定要招募 {name} 嗎?有效期為7天。`,renewTitle:`續約軍官`,renewMessage:`確定要為 {name} 續約7天嗎?`,dismissTitle:`解雇軍官`,dismissMessage:`確定要解雇 {name} 嗎?不會返還任何費用。`,hireFailed:`招募失敗`,renewFailed:`續約失敗`,insufficientResources:`資源不足!`},galaxyView:{title:`星系`,selectCoordinates:`選擇座標`,galaxy:`銀河系`,diplomacy:`Diplomacy`,selectGalaxy:`選擇銀河系`,system:`星系`,selectSystem:`選擇星系`,view:`查看`,myPlanet:`我的星球`,myPlanets:`查看我的星系`,npcPlanets:`NPC星球`,selectPlanetToView:`選擇星球以查看其所在星系`,totalPositions:`共10個星球位置`,mine:`我的`,hostile:`敵對`,emptySlot:`空位 - 可殖民`,scout:`偵察`,attack:`攻擊`,missileAttack:`導彈攻擊`,colonize:`殖民`,switch:`切換`,recycle:`回收`,debrisField:`殘骸場`,scoutPlanetTitle:`偵察星球`,attackPlanetTitle:`攻擊星球`,missileAttackTitle:`導彈攻擊`,colonizePlanetTitle:`殖民星球`,recyclePlanetTitle:`回收殘骸`,scoutPlanetMessage:`確定要派遣間諜探測器偵察星球 [{coordinates}] 嗎? - -請前往艦隊頁面選擇艦船並派遣。`,attackPlanetMessage:`確定要攻擊星球 [{coordinates}] 嗎? - -請前往艦隊頁面選擇艦船並派遣。`,missileAttackMessage:`向星球 [{coordinates}] 發射星際導彈`,missileCount:`導彈數量`,availableMissiles:`可用導彈`,missileRange:`導彈射程`,systems:`星系`,distance:`距離`,flightTime:`飛行時間`,launchMissile:`發射`,cancel:`取消`,colonizePlanetMessage:`確定要殖民位置 [{coordinates}] 嗎? - -請前往艦隊頁面派遣殖民船。`,recyclePlanetMessage:`確定要回收位置 [{coordinates}] 的殘骸嗎? - -請前往艦隊頁面派遣回收船。`,sendGift:`贈送禮物`,debris:`殘骸`,giftPlanetTitle:`贈送禮物`,giftPlanetMessage:`確定要向星球 [{coordinates}] 贈送資源嗎? - -請前往艦隊頁面選擇運輸船並裝載資源。`},messagesView:{title:`訊息中心`,battles:`戰鬥`,spy:`偵查`,npc:`NPC`,battleReports:`戰鬥報告`,spyReports:`間諜報告`,noBattleReports:`暫無戰鬥報告`,noSpyReports:`暫無間諜報告`,battleReport:`戰鬥報告`,spyReport:`間諜報告`,victory:`勝利`,defeat:`失敗`,draw:`平局`,attackerFleet:`攻擊方艦隊`,defenderFleet:`防守方艦隊`,defenderDefense:`防守方防禦`,attackerLosses:`攻擊方損失`,defenderLosses:`防守方損失`,noLosses:`無損失`,plunder:`掠奪資源`,debrisField:`殘骸場`,resources:`資源`,fleet:`艦隊`,defense:`防禦`,buildings:`建築`,unread:`未讀`,targetPlanet:`目標星球`,attackerRemaining:`攻擊方剩餘`,defenderRemaining:`防守方剩餘`,moonChance:`月球生成機率`,showRoundDetails:`顯示回合詳情`,hideRoundDetails:`隱藏回合詳情`,round:`第{round}回合`,attackerRemainingPower:`攻擊方剩餘火力`,defenderRemainingPower:`防守方剩餘火力`,spied:`被偵查`,spiedNotification:`被偵查通知`,noSpiedNotifications:`暫無被偵查通知`,detected:`已發現`,undetected:`未發現`,missions:`任務`,noMissionReports:`暫無任務報告`,success:`成功`,failed:`失敗`,npcActivity:`NPC活動`,noNPCActivity:`暫無NPC活動通知`,npcRecycleActivity:`NPC回收殘骸`,gifts:`禮物`,giftRejected:`被拒絕`,noGiftNotifications:`暫無禮物通知`,noGiftRejected:`暫無拒絕記錄`,giftFrom:`{npcName}的禮物`,giftRejectedBy:`{npcName}拒絕了禮物`,giftResources:`禮物資源`,rejectedResources:`被拒絕的資源`,expectedReputation:`預計好感度`,currentReputation:`當前好感度`,acceptGift:`接受`,rejectGift:`拒絕`,rejectionReason:{hostile:`對方對你有敵意,不接受禮物`,neutral_distrust:`對方對你缺乏信任`,polite_decline:`對方禮貌地拒絕了`}},missionReports:{transportSuccess:`運輸任務成功完成`,transportFailed:`運輸任務失敗`,colonizeSuccess:`殖民任務成功,新星球已建立`,colonizeFailed:`殖民任務失敗`,deploySuccess:`部署任務成功完成`,deployFailed:`部署任務失敗`,recycleSuccess:`回收任務成功完成`,recycleFailed:`回收任務失敗,目標位置沒有殘骸`,destroySuccess:`行星毀滅任務成功執行`,destroyFailed:`行星毀滅任務失敗`},simulatorView:{title:`戰鬥模擬器`,attacker:`攻擊方`,defender:`防守方`,attackerConfig:`攻擊方配置`,attackerConfigDesc:`設置攻擊方的艦隊和科技等級`,defenderConfig:`防守方配置`,defenderConfigDesc:`設置防守方的艦隊、防禦和科技等級`,fleet:`艦隊`,defenseStructures:`防禦設施`,techLevels:`科技等級`,weapon:`武器`,shield:`護盾`,armor:`裝甲`,defenderResources:`防守方資源(用於掠奪計算)`,startSimulation:`開始模擬`,reset:`重置`,battleResult:`戰鬥結果`,attackerVictory:`攻擊方勝利`,defenderVictory:`防守方勝利`,draw:`平局`,afterRounds:`經過 {rounds} 回合戰鬥`,attackerLosses:`攻擊方損失`,defenderLosses:`防守方損失`,noLosses:`無損失`,attackerRemaining:`攻擊方剩餘`,defenderRemaining:`防守方剩餘`,allDestroyed:`全部摧毀`,plunderableResources:`可掠奪資源`,debrisField:`殘骸場`,moonChance:`月球生成機率`,showRoundDetails:`顯示回合詳情`,hideRoundDetails:`隱藏回合詳情`,round:`第 {round} 回合`,attackerRemainingPower:`攻擊方剩餘火力`,defenderRemainingPower:`防守方剩餘火力`},settings:{dataManagement:`資料管理`,dataManagementDesc:`匯出、匯入或清除遊戲資料`,exportData:`匯出資料`,exportDataDesc:`將遊戲進度匯出為JSON檔案`,export:`匯出`,exporting:`匯出中...`,exportSuccess:`匯出成功`,exportFailed:`匯出失敗,請重試`,importData:`匯入資料`,importDataDesc:`從JSON檔案恢復遊戲進度`,selectFile:`匯入`,importSuccess:`匯入成功`,importConfirmTitle:`確認匯入資料`,importConfirmMessage:`匯入資料將覆蓋目前遊戲進度,此操作不可撤銷。確定要繼續嗎?`,importFailed:`匯入失敗,請檢查檔案格式`,clearData:`清除資料`,clearDataDesc:`刪除所有遊戲資料並重置遊戲`,clear:`清除`,clearConfirmTitle:`確認清除資料`,clearConfirmMessage:`這將刪除所有遊戲資料並重新開始,此操作不可撤銷。確定要繼續嗎?`,gameSettings:`遊戲設定`,gameSettingsDesc:`調整遊戲參數和偏好設定`,gamePause:`遊戲暫停`,gamePauseDesc:`暫停或恢復遊戲時間和資源生產`,pause:`暫停`,resume:`恢復`,gamePaused:`遊戲已暫停`,gameResumed:`遊戲已恢復`,playerName:`玩家名稱`,gameSpeed:`資源產出速度`,gameSpeedDesc:`目前資源產出速度倍率`,speedChanged:`資源產出速度已更改為 {speed}x`,speedReset:`資源產出速度已重置為 1x`,reset:`重置`,about:`關於`,version:`版本`,latestVersion:`最新版本`,checkUpdate:`檢查更新`,checking:`檢查中...`,newVersionAvailable:`發現新版本 {version}`,upToDate:`已是最新版本`,checkUpdateCooldown:`請稍後再試(5分鐘冷卻時間)`,checkUpdateFailed:`檢查更新失敗,請檢查網路連線`,viewUpdate:`查看更新`,updateAvailable:`有新版本可用。點擊查看更新內容。`,download:`下載`,goToDownload:`前往下載`,buildDate:`建置日期`,community:`社群`,github:`GitHub 儲存庫`,qqGroup:`QQ 交流群`},gmView:{title:`GM 管理面板`,adminOnly:`僅管理員`,selectPlanet:`選擇星球`,choosePlanet:`選擇一個星球`,resources:`資源`,buildings:`建築`,research:`科技`,ships:`艦船`,defense:`防禦`,officers:`軍官`,modifyResources:`修改資源`,resourcesDesc:`快速修改星球資源數量`,modifyBuildings:`修改建築`,buildingsDesc:`快速設定建築等級`,modifyResearch:`修改科技`,researchDesc:`快速設定科技等級`,modifyShips:`修改艦船`,shipsDesc:`快速設定艦船數量`,modifyDefense:`修改防禦`,defenseDesc:`快速設定防禦數量`,modifyOfficers:`修改軍官`,officersDesc:`快速設定軍官到期時間`,days:`天`,npcTesting:`NPC 測試`,npcTestingDesc:`測試NPC偵查和攻擊行為`,selectNPC:`選擇NPC`,chooseNPC:`選擇一個NPC`,targetPlanet:`目標星球`,chooseTarget:`選擇目標星球`,testSpy:`測試偵查`,testAttack:`測試攻擊`,testSpyAndAttack:`測試偵查&攻擊`,testSpyMessage:`點擊確認以加速偵查任務`,testAttackMessage:`點擊確認以加速攻擊任務`,testSpyAndAttackMessage:`點擊確認以加速任務執行`,initializeFleet:`初始化NPC艦隊`,accelerateMissions:`加速所有任務(5秒)`,selectNPCFirst:`請先選擇一個NPC`,npcNoProbes:`NPC沒有間諜探測器`,npcNoSpyReport:`NPC需要先偵查`,npcMissionFailed:`創建任務失敗`,npcNoPlanets:`NPC沒有星球`,npcWillSpyIn5s:`{npcName}將在5秒後偵查`,npcWillAttackIn5s:`{npcName}將在5秒後攻擊`,npcWillSpyAndAttack:`{npcName}將在5秒後偵查,10秒後攻擊`,acceleratedMissions:`已加速{count}個任務至5秒後`,npcFleetInitialized:`{npcName}艦隊已初始化`,npcFleetDetails:`100 間諜探測器 -500 輕型戰機 -300 重型戰機 -200 巡洋艦 -100 戰列艦 -50 轟炸機 -30 毀滅者 -20 戰列巡洋艦`,dangerZone:`危險區域`,dangerZoneDesc:`以下操作不可撤銷,請謹慎操作`,resetGame:`重置遊戲`,resetGameConfirm:`確定要重置遊戲嗎?這將刪除所有資料!`},alerts:{npcSpyIncoming:`NPC偵查即將到達`,npcAttackIncoming:`NPC艦隊來襲!`,npcFleetIncoming:`NPC艦隊接近`,ships:`艘艦船`,spiedBy:`被偵查`,attackedBy:`被攻擊`,detectionSuccess:`偵查被發現`,detectionFailed:`偵查未被發現`,npcSpiedYourPlanet:`NPC偵查了你的星球`,npcAttackedYourPlanet:`NPC攻擊了你的星球`},diplomacy:{title:`外交`,description:`管理與NPC的外交關係`,tabs:{all:`全部`,friendly:`友好`,neutral:`中立`,hostile:`敵對`},noNpcs:`沒有NPC`,noFriendlyNpcs:`沒有友好的NPC`,noNeutralNpcs:`沒有中立的NPC`,noHostileNpcs:`沒有敵對的NPC`,recentEvents:`最近事件`,recentEventsDescription:`最近的外交活動記錄`,ago:`前`,status:{friendly:`友好`,neutral:`中立`,hostile:`敵對`},planets:`星球`,allies:`盟友`,reputation:`聲望`,alliedWith:`結盟對象`,more:`更多`,actions:{gift:`贈送禮物`,viewPlanets:`查看星球`},lastEvent:`最近事件`,events:{gift:`已贈送禮物`,attack:`攻擊`,missileAttack:`導彈攻擊`,allyAttacked:`盟友被攻擊`,spy:`間諜活動`,stealDebris:`掠奪殘骸`},reports:{giftedResources:`贈送了 {metal}金屬 {crystal}晶體 {deuterium}氘`,receivedGiftFromPlayer:`收到玩家的禮物`,giftedToNpc:`你向{npcName}贈送了資源。好感度+{reputation}`,rejectedPlayerGift:`拒絕了玩家的禮物`,npcRejectedGift:`{npcName}拒絕了你的禮物。好感度{reputation}`,attackedNpc:`攻擊了{npcName}`,wasAttackedByPlayer:`被玩家攻擊`,youAttackedNpc:`你攻擊了{npcName}`,playerAttackedAlly:`玩家攻擊了盟友{allyName}`,allyDispleased:`{allyName}對你攻擊盟友{targetName}感到不滿`,wasSpiedByPlayer:`被玩家偵查(被發現:{detected})`,spyDetected:`你的偵查被{npcName}發現了`,stoleDebrisFromTerritory:`從{npcName}的領地掠奪了殘骸`,playerStoleDebris:`玩家從領地掠奪了殘骸`,recycledDebrisNearNpc:`你在{npcName}的星球附近回收了殘骸。他們很不高興。`,giftedResourcesToPlayer:`向玩家贈送了資源`,receivedGiftFromNpc:`收到了{npcName}的禮物`,acceptedGiftFromNpc:`你接受了{npcName}的禮物:{metal}金屬 {crystal}晶體 {deuterium}氘`,playerRejectedGift:`玩家拒絕了禮物`,rejectedGiftFromNpc:`你拒絕了{npcName}的禮物。好感度{reputation}`}},pagination:{previous:`上一頁`,next:`下一頁`,first:`首頁`,last:`末頁`,page:`第 {page} 頁`},notFound:{title:`找不到頁面`,description:`抱歉,您訪問的頁面不存在`,goHome:`返回首頁`}},n={common:{confirm:`Confirm`,cancel:`Cancel`,delete:`Delete`,edit:`Edit`,save:`Save`,close:`Close`,back:`Back`,next:`Next`,previous:`Previous`,submit:`Submit`,reset:`Reset`,search:`Search`,filter:`Filter`,loading:`Loading...`,noData:`No Data`,error:`Error`,success:`Success`,warning:`Warning`,info:`Info`,resourceType:`Resource Type`,playerName:`Commander`,timeHour:`h`,timeMinute:`m`,timeSecond:`s`,featureLocked:`Feature Locked`,unlockRequired:`Building Required`,requiredBuilding:`Required Building`,currentLevel:`Current Level`,goToBuildings:`Go to Buildings`,locked:`Locked`,viewRequirements:`View Requirements`,requirementsNotMet:`Requirements Not Met`,current:`Current`,level:`Level`,gmModeActivated:`GM Mode Activated! Check the navigation menu.`},errors:{requirementsNotMet:`Requirements not met`,insufficientResources:`Insufficient resources`,insufficientFleetStorage:`Insufficient fleet storage`,shieldDomeLimit:`Shield dome limit reached`,missileSiloLimit:`Missile silo capacity exceeded`,insufficientMissiles:`Insufficient interplanetary missiles`,invalidMissileCount:`Invalid missile count`,targetOutOfRange:`Target out of range`,cannotAttackOwnPlanet:`Cannot attack your own planet`,fleetMissionsFull:`Fleet mission slots full`,insufficientFleet:`Insufficient fleet`,insufficientFuel:`Insufficient fuel`,planetOnly:`This building can only be built on planets`,moonOnly:`This building can only be built on moons`,buildQueueFull:`Build queue full`,insufficientSpace:`Insufficient space`,buildingLevelZero:`Building level is 0, cannot demolish`,researchQueueFull:`Research queue full`,moonExists:`Moon already exists`,insufficientDebris:`Insufficient debris field`},nav:{overview:`Overview`,buildings:`Buildings`,research:`Research`,shipyard:`Shipyard`,defense:`Defense`,fleet:`Fleet`,officers:`Officers`,simulator:`Simulator`,galaxy:`Galaxy`,diplomacy:`Diplomacy`,messages:`Messages`,settings:`Settings`,gm:`GM`},sidebar:{language:`Language`,lightMode:`Light Mode`,darkMode:`Dark Mode`,collapse:`Collapse`,expand:`Expand`},resources:{metal:`Metal`,crystal:`Crystal`,deuterium:`Deuterium`,darkMatter:`Dark Matter`,energy:`Energy`,production:`Production`,consumption:`Consumption`,capacity:`Capacity`,current:`Current`,max:`Max Capacity`,perHour:`hour`,perMinute:`min`,hour:`hour`,noEnergy:`No Energy`},planet:{planet:`Planet`,moon:`Moon`,colony:`Colony`,position:`Position`,coordinates:`Coordinates`,switchToMoon:`View Moon`,backToPlanet:`Back to Planet`,switchPlanet:`Switch Planet`,currentPlanet:`Current Planet`,fields:`Fields`,temperature:`Temperature`,homePlanet:`Home Planet`,planetPrefix:`Planet`,moonSuffix:`'s Moon`,colonyPrefix:`Colony`},player:{points:`Total Points`},buildings:{metalMine:`Metal Mine`,crystalMine:`Crystal Mine`,deuteriumSynthesizer:`Deuterium Synthesizer`,solarPlant:`Solar Plant`,fusionReactor:`Fusion Reactor`,roboticsFactory:`Robotics Factory`,naniteFactory:`Nanite Factory`,shipyard:`Shipyard`,researchLab:`Research Lab`,metalStorage:`Metal Storage`,crystalStorage:`Crystal Storage`,deuteriumTank:`Deuterium Tank`,darkMatterCollector:`Dark Matter Collector`,darkMatterTank:`Dark Matter Tank`,missileSilo:`Missile Silo`,terraformer:`Terraformer`,lunarBase:`Lunar Base`,sensorPhalanx:`Sensor Phalanx`,jumpGate:`Jump Gate`,planetDestroyerFactory:`Planet Destroyer Factory`,buildTime:`Build Time`,production:`Production`,consumption:`Consumption`,totalCost:`Total Cost`,totalPoints:`Total Points`,levelRange:`Level Range`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueueBonus:`Build Queue`,spaceBonus:`Space Bonus`,buildSpeedBonus:`Build Speed Bonus`,researchSpeedBonus:`Research Speed Bonus`,missileCapacity:`Missile Capacity`},buildingDescriptions:{metalMine:`Extracts metal resources`,crystalMine:`Extracts crystal resources`,deuteriumSynthesizer:`Synthesizes deuterium resources`,solarPlant:`Provides energy`,fusionReactor:`Uses deuterium to generate large amounts of energy`,roboticsFactory:`Accelerates construction speed`,naniteFactory:`Increases build queue capacity, +1 per level (max 10 levels)`,shipyard:`Constructs ships`,researchLab:`Researches technologies`,metalStorage:`Increases metal storage capacity`,crystalStorage:`Increases crystal storage capacity`,deuteriumTank:`Increases deuterium storage capacity`,darkMatterCollector:`Collects rare dark matter resources`,darkMatterTank:`Increases dark matter storage capacity`,missileSilo:`Stores and launches missiles, 10 missiles per level`,terraformer:`Terraforms planet surface, adds 30 available space per level`,lunarBase:`Increases available space on the moon, +30 space per level`,sensorPhalanx:`Detects fleet activities in surrounding systems`,jumpGate:`Instantly transfers fleets to other moons`,planetDestroyerFactory:`Constructs ultimate weapons capable of destroying planets`},ships:{lightFighter:`Light Fighter`,heavyFighter:`Heavy Fighter`,cruiser:`Cruiser`,battleship:`Battleship`,battlecruiser:`Battlecruiser`,bomber:`Bomber`,destroyer:`Destroyer`,smallCargo:`Small Cargo`,largeCargo:`Large Cargo`,colonyShip:`Colony Ship`,recycler:`Recycler`,espionageProbe:`Espionage Probe`,solarSatellite:`Solar Satellite`,darkMatterHarvester:`Dark Matter Harvester`,deathstar:`Deathstar`},shipDescriptions:{lightFighter:`Basic combat unit`,heavyFighter:`Heavily armored fighter`,cruiser:`Medium warship, balanced offense and defense`,battleship:`Powerful warship`,battlecruiser:`Fast powerful warship, excels at attacking battleships`,bomber:`Specialized ship for attacking defense structures`,destroyer:`Hunter specialized in destroying large ships`,smallCargo:`Transports small amounts of resources`,largeCargo:`Transports large amounts of resources`,colonyShip:`Used to colonize new planets`,recycler:`Collects debris field resources`,espionageProbe:`Scouts enemy planets`,solarSatellite:`Provides extra energy, generates 50 energy per satellite`,darkMatterHarvester:`Special ship for harvesting dark matter`,deathstar:`Ultimate weapon capable of destroying entire planets`},defenses:{rocketLauncher:`Rocket Launcher`,lightLaser:`Light Laser`,heavyLaser:`Heavy Laser`,gaussCannon:`Gauss Cannon`,ionCannon:`Ion Cannon`,plasmaTurret:`Plasma Turret`,smallShieldDome:`Small Shield Dome`,largeShieldDome:`Large Shield Dome`,antiBallisticMissile:`Anti-Ballistic Missile`,interplanetaryMissile:`Interplanetary Missile`,planetaryShield:`Planetary Shield`},defenseDescriptions:{rocketLauncher:`Basic defense facility`,lightLaser:`Light energy weapon`,heavyLaser:`Heavy energy weapon`,gaussCannon:`High-speed kinetic weapon`,ionCannon:`Effective against shields`,plasmaTurret:`Powerful defense facility`,smallShieldDome:`Small shield protecting the entire planet`,largeShieldDome:`Large shield protecting the entire planet`,antiBallisticMissile:`Intercepts enemy missiles, can intercept 1 interplanetary missile each`,interplanetaryMissile:`Can attack defense structures on other planets`,planetaryShield:`Super shield protecting planet from destruction attacks`},research:{researchTime:`Research Time`,totalCost:`Total Cost`,totalPoints:`Total Points`,levelRange:`Level Range`,attackBonus:`Attack Bonus`,shieldBonus:`Shield Bonus`,armorBonus:`Armor Bonus`,spyLevel:`Spy Level`,researchQueueBonus:`Research Queue`,colonySlots:`Colony Slots`,forAllPlanets:`(Global)`,speedBonus:`Speed Bonus`,researchSpeedBonus:`Research Speed Bonus`},technologies:{energyTechnology:`Energy Technology`,laserTechnology:`Laser Technology`,ionTechnology:`Ion Technology`,hyperspaceTechnology:`Hyperspace Technology`,plasmaTechnology:`Plasma Technology`,computerTechnology:`Computer Technology`,espionageTechnology:`Espionage Technology`,weaponsTechnology:`Weapons Technology`,shieldingTechnology:`Shielding Technology`,armourTechnology:`Armour Technology`,astrophysics:`Astrophysics`,gravitonTechnology:`Graviton Technology`,combustionDrive:`Combustion Drive`,impulseDrive:`Impulse Drive`,hyperspaceDrive:`Hyperspace Drive`,darkMatterTechnology:`Dark Matter Technology`,terraformingTechnology:`Terraforming Technology`,planetDestructionTech:`Planet Destruction Technology`},technologyDescriptions:{energyTechnology:`Improves energy efficiency`,laserTechnology:`Foundation of laser weapons and defense`,ionTechnology:`Ion weapon technology`,hyperspaceTechnology:`Hyperspace jump technology`,plasmaTechnology:`Plasma weapon technology`,computerTechnology:`Increases research queue capacity, +1 per level (max 10 levels)`,espionageTechnology:`Improves spy probe effectiveness, +1 espionage level per level`,weaponsTechnology:`Increases ship and defense attack power by 10% per level`,shieldingTechnology:`Increases ship and defense shields by 10% per level`,armourTechnology:`Increases ship and defense armour by 10% per level`,astrophysics:`Each level adds 1 colony slot and increases expedition success rate`,gravitonTechnology:`Studies graviton manipulation, required for Death Star`,combustionDrive:`Basic propulsion technology`,impulseDrive:`Intermediate propulsion technology`,hyperspaceDrive:`Advanced propulsion technology`,darkMatterTechnology:`Research into dark matter properties and applications`,terraformingTechnology:`Research planet terraforming technology, adds 30 available space to all planets per level`,planetDestructionTech:`Terrifying technology for destroying entire planets`},officers:{commander:`Commander`,admiral:`Admiral`,engineer:`Engineer`,geologist:`Geologist`,technocrat:`Technocrat`,darkMatterSpecialist:`Dark Matter Specialist`,resourceBonus:`Resource Production Bonus`,darkMatterBonus:`Dark Matter Production Bonus`,energyBonus:`Energy Production Bonus`},officerDescriptions:{commander:`Improves building speed and management`,admiral:`Improves fleet combat and speed`,engineer:`Improves energy and defense`,geologist:`Improves resource production`,technocrat:`Improves research speed and espionage`,darkMatterSpecialist:`Improves dark matter collection efficiency`},queue:{buildQueueBonus:`Build Queue`,spaceBonus:`Space Bonus`,buildSpeedBonus:`Build Speed Bonus`,researchSpeedBonus:`Research Speed Bonus`,researchQueueBonus:`Research Queue`,building:`Building`,researching:`Researching`,remaining:`Remaining`,cancel:`Cancel`,cancelBuild:`Cancel Build`,cancelResearch:`Cancel Research`,confirmCancel:`Are you sure you want to cancel? 50% of resources will be refunded.`,level:`Level`,quantity:`Quantity`,upgradeToLevel:`Upgrade to Level`},overview:{title:`Planet Overview`,resourceOverview:`Resources`,fleetInfo:`Fleet`,currentShips:`Ships on this planet`,productionSources:`Production Sources`,productionSourcesDesc:`Detailed resource production and bonus information`,consumptionSources:`Consumption Sources`,consumptionSourcesDesc:`Energy consumption details for buildings`,totalProduction:`Total Production`,totalConsumption:`Total Consumption`,noConsumption:`No energy consumption`},buildingsView:{title:`Buildings`,usedSpace:`Used Space`,spaceUsage:`Space Usage`,level:`Level`,upgradeCost:`Upgrade Cost`,buildTime:`Build Time`,upgrade:`Upgrade`,maxLevelReached:`Max Level Reached`,requirementsNotMet:`Requirements Not Met`,upgradeFailed:`Upgrade Failed`,upgradeFailedMessage:`Please check if you have enough resources, space, or if there are other build tasks.`,demolish:`Demolish`,demolishRefund:`Demolish Refund`,demolishFailed:`Demolish Failed`,demolishFailedMessage:`Unable to demolish this building. Please check if the build queue is full or the building level is 0.`,confirmDemolish:`Confirm Demolish`,confirmDemolishMessage:`Are you sure you want to demolish`},researchView:{title:`Research`,researchCost:`Research Cost`,research:`Research`,maxLevelReached:`Max Level Reached`,researchFailed:`Research Failed`,researchFailedMessage:`Please check if you have enough resources, prerequisites are met, or if there are other research tasks.`},shipyard:{attack:`Attack`,missileAttack:`Missile Attack`,shield:`Shield`,armor:`Armor`,speed:`Speed`,cargoCapacity:`Cargo Capacity`,fuelConsumption:`Fuel Consumption`,buildCost:`Build Cost`,buildTime:`Build Time`,perUnit:`Per Unit`,batchCalculator:`Batch Calculator`,quantity:`Quantity`,totalCost:`Total Cost`,totalTime:`Total Time`},shipyardView:{title:`Shipyard`,fleetStorage:`Fleet Storage`,attack:`Attack`,missileAttack:`Missile Attack`,shield:`Shield`,speed:`Speed`,cargoCapacity:`Cargo Capacity`,unitCost:`Unit Cost`,buildQuantity:`Build Quantity`,totalCost:`Total Cost`,build:`Build`,inputError:`Input Error`,inputErrorMessage:`Please enter build quantity!`,buildFailed:`Build Failed`,buildFailedMessage:`Please check if you have enough resources or if prerequisites are met.`},defense:{attack:`Attack`,missileAttack:`Missile Attack`,shield:`Shield`,armor:`Armor`,buildCost:`Build Cost`,buildTime:`Build Time`,perUnit:`Per Unit`,batchCalculator:`Batch Calculator`,quantity:`Quantity`,totalCost:`Total Cost`,totalTime:`Total Time`},defenseView:{title:`Defense`,attack:`Attack`,missileAttack:`Missile Attack`,shield:`Shield`,armor:`Armor`,buildTime:`Build Time`,seconds:`s`,unitCost:`Unit Cost`,buildQuantity:`Build Quantity`,totalCost:`Total Cost`,build:`Build`,shieldDomeBuilt:`Shield dome already built`,missileCapacity:`Missile Capacity`,inputError:`Input Error`,inputErrorMessage:`Please enter build quantity!`,buildFailed:`Build Failed`,buildFailedMessage:`Please check if you have enough resources or if prerequisites are met. Shield domes can only be built once.`},fleetView:{title:`Fleet Management`,fleetOverview:`Fleet Overview`,sendFleet:`Send Fleet`,flightMissions:`Flight Missions`,currentPlanetFleet:`Current Planet Fleet`,attack:`Attack`,missileAttack:`Missile Attack`,shield:`Shield`,armor:`Armor`,speed:`Speed`,cargo:`Cargo`,selectFleet:`Select Fleet`,selectFleetDescription:`Select the number of ships to send`,available:`Available`,all:`All`,targetCoordinates:`Target Coordinates`,galaxy:`Galaxy`,system:`System`,position:`Position`,missionType:`Mission Type`,missionInfo:`Mission Info`,fuelConsumption:`Fuel Consumption`,flightTime:`Flight Time`,attackMission:`Attack`,transport:`Transport`,colonize:`Colonize`,spy:`Spy`,deploy:`Deploy`,recycle:`Recycle`,destroy:`Planet Destruction`,transportResources:`Transport Resources`,totalCargoCapacity:`Total Cargo Capacity`,used:`Used`,noFlightMissions:`No flight missions`,outbound:`Outbound`,returning:`Returning`,fleetComposition:`Fleet Composition`,carryingResources:`Carrying Resources`,arrivalTime:`Arrival Time`,returnTime:`Return Time`,recallFleet:`Recall Fleet`,sendFailed:`Send Failed`,sendFailedMessage:`Please check fleet count, fuel availability, or cargo capacity limits.`,recallFailed:`Recall Failed`,recallFailedMessage:`This mission cannot be recalled.`,unknownPlanet:`Unknown Planet`,fleetMissionSlots:`Fleet Mission Slots`,noShipsSelected:`No ships selected`,cannotSendToOwnPlanet:`Cannot send fleet to your own planet`,cargoExceedsCapacity:`Cargo exceeds capacity`,noColonyShip:`Colony ship required for colonization mission`,noDebrisAtTarget:`No debris field at target coordinates or debris field is empty`,noDeathstar:`Deathstar required for destruction mission`,giftMode:`Gift Mode`,giftModeDescription:`Send resources as a gift to`,estimatedReputationGain:`Estimated reputation gain`},officersView:{title:`Officers`,activated:`Activated`,inactive:`Inactive`,activeStatus:`Active Status`,expirationTime:`Expiration Time`,remainingTime:`Remaining Time`,recruitCost:`Recruitment Cost`,days:`days`,benefitsBonus:`Benefits Bonus`,resourceProduction:`Resource Production`,darkMatterProduction:`Dark Matter Production`,energyProduction:`Energy Production`,buildingSpeed:`Building Speed`,researchSpeed:`Research Speed`,fleetSpeed:`Fleet Speed`,fuelConsumption:`Fuel Consumption`,defense:`Defense`,storageCapacity:`Storage Capacity`,buildQueueBonus:`Build Queue`,spaceBonus:`Space Bonus`,buildSpeedBonus:`Build Speed Bonus`,researchSpeedBonus:`Research Speed Bonus`,fleetSlots:`Fleet Slots`,hire:`Hire`,renew:`Renew`,dismiss:`Dismiss`,hireTitle:`Hire Officer`,hireMessage:`Are you sure you want to hire {name}? Valid for 7 days.`,renewTitle:`Renew Officer`,renewMessage:`Are you sure you want to renew {name} for 7 days?`,dismissTitle:`Dismiss Officer`,dismissMessage:`Are you sure you want to dismiss {name}? No refunds will be given.`,hireFailed:`Hire Failed`,renewFailed:`Renew Failed`,insufficientResources:`Insufficient resources!`},galaxyView:{title:`Galaxy`,selectCoordinates:`Select Coordinates`,galaxy:`Galaxy`,selectGalaxy:`Select Galaxy`,system:`System`,selectSystem:`Select System`,view:`View`,myPlanet:`My Planet`,myPlanets:`View My Systems`,npcPlanets:`NPC Planets`,selectPlanetToView:`Select planet to view its system`,totalPositions:`10 planet positions total`,mine:`Mine`,hostile:`Hostile`,emptySlot:`Empty - Colonizable`,scout:`Scout`,attack:`Attack`,missileAttack:`Missile Attack`,colonize:`Colonize`,switch:`Switch`,recycle:`Recycle`,debrisField:`Debris Field`,scoutPlanetTitle:`Scout Planet`,attackPlanetTitle:`Attack Planet`,missileAttackTitle:`Missile Attack`,colonizePlanetTitle:`Colonize Planet`,recyclePlanetTitle:`Recycle Debris`,scoutPlanetMessage:`Are you sure you want to send espionage probes to scout planet [{coordinates}]? - -Please go to the fleet page to select ships and send.`,attackPlanetMessage:`Are you sure you want to attack planet [{coordinates}]? - -Please go to the fleet page to select ships and send.`,missileAttackMessage:`Launch interplanetary missiles to attack planet [{coordinates}]`,missileCount:`Missile Count`,availableMissiles:`Available Missiles`,missileRange:`Missile Range`,systems:`systems`,distance:`Distance`,flightTime:`Flight Time`,launchMissile:`Launch`,cancel:`Cancel`,colonizePlanetMessage:`Are you sure you want to colonize position [{coordinates}]? - -Please go to the fleet page to send a colony ship.`,recyclePlanetMessage:`Are you sure you want to recycle debris at position [{coordinates}]? - -Please go to the fleet page to send recycler ships.`,sendGift:`Send Gift`,debris:`Debris`,giftPlanetTitle:`Send Gift`,giftPlanetMessage:`Are you sure you want to send resources as a gift to planet [{coordinates}]? - -Please go to the fleet page to select transport ships and load resources.`},messagesView:{title:`Messages`,battles:`Battles`,spy:`Spy`,npc:`NPC`,battleReports:`Battle Reports`,spyReports:`Spy Reports`,noBattleReports:`No battle reports`,noSpyReports:`No spy reports`,battleReport:`Battle Report`,spyReport:`Spy Report`,victory:`Victory`,defeat:`Defeat`,draw:`Draw`,attackerFleet:`Attacker Fleet`,defenderFleet:`Defender Fleet`,defenderDefense:`Defender Defense`,attackerLosses:`Attacker Losses`,defenderLosses:`Defender Losses`,noLosses:`No losses`,plunder:`Plunder`,debrisField:`Debris Field`,resources:`Resources`,fleet:`Fleet`,defense:`Defense`,buildings:`Buildings`,unread:`Unread`,targetPlanet:`Target Planet`,spied:`Spied`,spiedNotification:`Spied Notification`,noSpiedNotifications:`No spied notifications`,detected:`Detected`,undetected:`Undetected`,missions:`Missions`,noMissionReports:`No mission reports`,success:`Success`,failed:`Failed`,npcActivity:`NPC Activity`,noNPCActivity:`No NPC activity notifications`,npcRecycleActivity:`NPC Recycling Debris`,gifts:`Gifts`,giftRejected:`Rejected`,noGiftNotifications:`No gift notifications`,noGiftRejected:`No rejected gifts`,giftFrom:`Gift from {npcName}`,giftRejectedBy:`{npcName} rejected the gift`,giftResources:`Gift resources`,rejectedResources:`Rejected resources`,expectedReputation:`Expected reputation`,currentReputation:`Current reputation`,acceptGift:`Accept`,rejectGift:`Reject`,rejectionReason:{hostile:`They are hostile towards you and do not accept gifts`,neutral_distrust:`They lack trust in you`,polite_decline:`They politely declined`}},missionReports:{transportSuccess:`Transport mission completed successfully`,transportFailed:`Transport mission failed`,colonizeSuccess:`Colonization mission successful, new planet established`,colonizeFailed:`Colonization mission failed`,deploySuccess:`Deployment mission completed successfully`,deployFailed:`Deployment mission failed`,recycleSuccess:`Recycling mission completed successfully`,recycleFailed:`Recycling mission failed, no debris at target location`,destroySuccess:`Planet destruction mission executed successfully`,destroyFailed:`Planet destruction mission failed`},simulatorView:{title:`Battle Simulator`,attacker:`Attacker`,defender:`Defender`,attackerConfig:`Attacker Configuration`,attackerConfigDesc:`Configure attacker fleet and technology levels`,defenderConfig:`Defender Configuration`,defenderConfigDesc:`Configure defender fleet, defense, and technology levels`,fleet:`Fleet`,defenseStructures:`Defense Structures`,techLevels:`Technology Levels`,weapon:`Weapon`,shield:`Shield`,armor:`Armor`,defenderResources:`Defender Resources (for plunder calculation)`,startSimulation:`Start Simulation`,reset:`Reset`,battleResult:`Battle Result`,attackerVictory:`Attacker Victory`,defenderVictory:`Defender Victory`,draw:`Draw`,afterRounds:`After {rounds} rounds`,attackerLosses:`Attacker Losses`,defenderLosses:`Defender Losses`,noLosses:`No losses`,attackerRemaining:`Attacker Remaining`,defenderRemaining:`Defender Remaining`,allDestroyed:`All destroyed`,plunderableResources:`Plunderable Resources`,debrisField:`Debris Field`,moonChance:`Moon chance`,showRoundDetails:`Show round details`,hideRoundDetails:`Hide round details`,round:`Round {round}`,attackerRemainingPower:`Attacker remaining power`,defenderRemainingPower:`Defender remaining power`,spied:`Spied`,spiedNotification:`Spied Notification`,noSpiedNotifications:`No spied notifications`,detected:`Detected`,undetected:`Undetected`},settings:{dataManagement:`Data Management`,dataManagementDesc:`Export, import, or clear game data`,exportData:`Export Data`,exportDataDesc:`Export game progress as JSON file`,export:`Export`,exporting:`Exporting...`,exportSuccess:`Export successful`,exportFailed:`Export failed, please try again`,importData:`Import Data`,importDataDesc:`Restore game progress from JSON file`,selectFile:`Select File`,importSuccess:`Import successful`,importConfirmTitle:`Confirm Import`,importConfirmMessage:`Importing will overwrite current game progress. This action cannot be undone. Continue?`,importFailed:`Import failed, please check file format`,clearData:`Clear Data`,clearDataDesc:`Delete all game data and reset`,clear:`Clear`,clearConfirmTitle:`Confirm Clear Data`,clearConfirmMessage:`This will delete all game data and start over. This action cannot be undone. Continue?`,gameSettings:`Game Settings`,gameSettingsDesc:`Adjust game parameters and preferences`,gamePause:`Game Pause`,gamePauseDesc:`Pause or resume game time and resource production`,pause:`Pause`,resume:`Resume`,gamePaused:`Game paused`,gameResumed:`Game resumed`,playerName:`Player Name`,gameSpeed:`Resource Production Speed`,gameSpeedDesc:`Current resource production speed multiplier`,speedChanged:`Resource production speed changed to {speed}x`,speedReset:`Resource production speed reset to 1x`,reset:`Reset`,about:`About`,version:`Version`,latestVersion:`Latest Version`,checkUpdate:`Check Update`,checking:`Checking...`,newVersionAvailable:`New version {version} available`,upToDate:`Already up to date`,checkUpdateCooldown:`Please try again later (5 minute cooldown)`,checkUpdateFailed:`Failed to check for updates, please check your network connection`,viewUpdate:`View Update`,updateAvailable:`A new version is available. Click to view release notes.`,download:`Download`,goToDownload:`Go to Download`,buildDate:`Build Date`,community:`Community`,github:`GitHub Repository`,qqGroup:`QQ Group`},gmView:{title:`GM Control Panel`,adminOnly:`Admin Only`,selectPlanet:`Select Planet`,choosePlanet:`Choose a planet`,resources:`Resources`,buildings:`Buildings`,research:`Research`,ships:`Ships`,defense:`Defense`,officers:`Officers`,modifyResources:`Modify Resources`,resourcesDesc:`Quickly modify planet resources`,modifyBuildings:`Modify Buildings`,buildingsDesc:`Quickly set building levels`,modifyResearch:`Modify Research`,researchDesc:`Quickly set research levels`,modifyShips:`Modify Ships`,shipsDesc:`Quickly set ship counts`,modifyDefense:`Modify Defense`,defenseDesc:`Quickly set defense counts`,modifyOfficers:`Modify Officers`,officersDesc:`Quickly set officer expiration time`,days:`d`,npcTesting:`NPC Testing`,npcTestingDesc:`Test NPC spy and attack behavior`,selectNPC:`Select NPC`,chooseNPC:`Choose an NPC`,targetPlanet:`Target Planet`,chooseTarget:`Choose target planet`,testSpy:`Test Spy`,testAttack:`Test Attack`,testSpyAndAttack:`Test Spy & Attack`,testSpyMessage:`Click confirm to accelerate the spy mission`,testAttackMessage:`Click confirm to accelerate the attack mission`,testSpyAndAttackMessage:`Click confirm to accelerate the missions`,initializeFleet:`Initialize NPC Fleet`,accelerateMissions:`Accelerate All Missions (5s)`,selectNPCFirst:`Please select an NPC first`,npcNoProbes:`NPC has no spy probes`,npcNoSpyReport:`NPC needs to spy first`,npcMissionFailed:`Failed to create mission`,npcNoPlanets:`NPC has no planets`,npcWillSpyIn5s:`{npcName} will spy in 5 seconds`,npcWillAttackIn5s:`{npcName} will attack in 5 seconds`,npcWillSpyAndAttack:`{npcName} will spy in 5s and attack in 10s`,acceleratedMissions:`Accelerated {count} missions to 5 seconds`,npcFleetInitialized:`{npcName} fleet initialized`,npcFleetDetails:`100 Spy Probes -500 Light Fighters -300 Heavy Fighters -200 Cruisers -100 Battleships -50 Bombers -30 Destroyers -20 Battlecruisers`,dangerZone:`Danger Zone`,dangerZoneDesc:`The following operations are irreversible`,resetGame:`Reset Game`,resetGameConfirm:`Are you sure you want to reset the game? This will delete all data!`},alerts:{npcSpyIncoming:`NPC Spy Probe Incoming`,npcAttackIncoming:`NPC Fleet Attack Incoming!`,npcFleetIncoming:`NPC Fleet Approaching`,ships:`ships`,spiedBy:`Spied By`,attackedBy:`Attacked By`,detectionSuccess:`Spy detected`,detectionFailed:`Spy not detected`,npcSpiedYourPlanet:`NPC spied your planet`,npcAttackedYourPlanet:`NPC attacked your planet`},diplomacy:{title:`Diplomacy`,description:`Manage diplomatic relations with NPCs`,tabs:{all:`All`,friendly:`Friendly`,neutral:`Neutral`,hostile:`Hostile`},noNpcs:`No NPCs`,noFriendlyNpcs:`No friendly NPCs`,noNeutralNpcs:`No neutral NPCs`,noHostileNpcs:`No hostile NPCs`,recentEvents:`Recent Events`,recentEventsDescription:`Recent diplomatic activity log`,ago:`ago`,status:{friendly:`Friendly`,neutral:`Neutral`,hostile:`Hostile`},planets:`planets`,allies:`allies`,reputation:`Reputation`,alliedWith:`Allied with`,more:`more`,actions:{gift:`Send Gift`,viewPlanets:`View Planets`},lastEvent:`Last Event`,events:{gift:`Sent Gift`,attack:`Attack`,missileAttack:`Missile Attack`,allyAttacked:`Ally Attacked`,spy:`Espionage`,stealDebris:`Debris Stolen`},reports:{giftedResources:`Gifted {metal}M {crystal}C {deuterium}D`,receivedGiftFromPlayer:`Received gift from player`,giftedToNpc:`You gifted resources to {npcName}. Reputation +{reputation}`,rejectedPlayerGift:`Rejected player's gift`,npcRejectedGift:`{npcName} rejected your gift. Reputation {reputation}`,attackedNpc:`Attacked {npcName}`,wasAttackedByPlayer:`Was attacked by player`,youAttackedNpc:`You attacked {npcName}`,playerAttackedAlly:`Player attacked ally {allyName}`,allyDispleased:`{allyName} is displeased that you attacked their ally {targetName}`,wasSpiedByPlayer:`Was spied by player (detected: {detected})`,spyDetected:`Your espionage was detected by {npcName}`,stoleDebrisFromTerritory:`Stole debris from {npcName}'s territory`,playerStoleDebris:`Player stole debris from territory`,recycledDebrisNearNpc:`You recycled debris near {npcName}'s planet. They are displeased.`,giftedResourcesToPlayer:`Gifted resources to player`,receivedGiftFromNpc:`Received gift from {npcName}`,acceptedGiftFromNpc:`You accepted a gift from {npcName}: {metal}M {crystal}C {deuterium}D`,playerRejectedGift:`Player rejected gift`,rejectedGiftFromNpc:`You rejected a gift from {npcName}. Reputation {reputation}`}},pagination:{previous:`Previous`,next:`Next`,first:`First`,last:`Last`,page:`Page {page}`},notFound:{title:`Page Not Found`,description:`Sorry, the page you are looking for does not exist`,goHome:`Go Home`}},r={common:{confirm:`Bestätigen`,cancel:`Abbrechen`,delete:`Löschen`,edit:`Bearbeiten`,save:`Speichern`,close:`Schließen`,back:`Zurück`,next:`Weiter`,previous:`Vorherige`,submit:`Absenden`,reset:`Zurücksetzen`,search:`Suchen`,filter:`Filtern`,loading:`Laden...`,noData:`Keine Daten`,error:`Fehler`,success:`Erfolg`,warning:`Warnung`,info:`Info`,resourceType:`Ressourcentyp`,playerName:`Kommandant`,timeHour:`Std`,timeMinute:`Min`,timeSecond:`Sek`,featureLocked:`Funktion gesperrt`,unlockRequired:`Gebäude erforderlich`,requiredBuilding:`Erforderliches Gebäude`,currentLevel:`Aktuelles Level`,goToBuildings:`Zu Gebäuden`,locked:`Gesperrt`,viewRequirements:`Anforderungen anzeigen`,requirementsNotMet:`Anforderungen nicht erfüllt`,current:`Aktuell`,level:`Stufe`,gmModeActivated:`GM-Modus aktiviert! Überprüfen Sie das Navigationsmenü.`},errors:{requirementsNotMet:`Anforderungen nicht erfüllt`,insufficientResources:`Unzureichende Ressourcen`,insufficientFleetStorage:`Unzureichender Flottenspeicher`,shieldDomeLimit:`Schildkuppel-Limit erreicht`,missileSiloLimit:`Raketensilokapazität überschritten`,insufficientMissiles:`Unzureichende Interkontinentalraketen`,invalidMissileCount:`Ungültige Raketenanzahl`,targetOutOfRange:`Ziel außer Reichweite`,cannotAttackOwnPlanet:`Eigenen Planeten kann nicht angegriffen werden`,fleetMissionsFull:`Flottenmissionsplätze voll`,insufficientFleet:`Unzureichende Flotte`,insufficientFuel:`Unzureichender Treibstoff`,planetOnly:`Dieses Gebäude kann nur auf Planeten gebaut werden`,moonOnly:`Dieses Gebäude kann nur auf Monden gebaut werden`,buildQueueFull:`Bauauftrag voll`,insufficientSpace:`Unzureichender Platz`,buildingLevelZero:`Gebäudelevel ist 0, kann nicht abgerissen werden`,researchQueueFull:`Forschungsauftrag voll`,moonExists:`Mond existiert bereits`,insufficientDebris:`Unzureichendes Trümmerfeld`},nav:{overview:`Übersicht`,buildings:`Gebäude`,research:`Forschung`,shipyard:`Raumschiffwerft`,defense:`Verteidigung`,fleet:`Flotte`,officers:`Offiziere`,simulator:`Simulator`,galaxy:`Galaxie`,diplomacy:`Diplomacy`,messages:`Nachrichten`,settings:`Einstellungen`,gm:`GM`},sidebar:{language:`Sprache`,lightMode:`Heller Modus`,darkMode:`Dunkler Modus`,collapse:`Einklappen`,expand:`Ausklappen`},resources:{metal:`Metall`,crystal:`Kristall`,deuterium:`Deuterium`,darkMatter:`Dunkle Materie`,energy:`Energie`,production:`Produktion`,consumption:`Verbrauch`,capacity:`Kapazität`,current:`Aktuell`,max:`Max. Kapazität`,perHour:`Stunde`,perMinute:`Min`,hour:`Stunde`,noEnergy:`Keine Energie`},planet:{planet:`Planet`,moon:`Mond`,colony:`Kolonie`,position:`Position`,coordinates:`Koordinaten`,switchToMoon:`Zum Mond`,backToPlanet:`Zurück zum Planeten`,switchPlanet:`Planet wechseln`,currentPlanet:`Aktueller Planet`,fields:`Felder`,temperature:`Temperatur`,homePlanet:`Heimatplanet`,planetPrefix:`Planet`,moonSuffix:`s Mond`,colonyPrefix:`Kolonie`},player:{points:`Gesamtpunkte`},buildings:{metalMine:`Metallmine`,crystalMine:`Kristallmine`,deuteriumSynthesizer:`Deuterium-Synthesizer`,solarPlant:`Solarkraftwerk`,fusionReactor:`Fusionsreaktor`,roboticsFactory:`Roboterfabrik`,naniteFactory:`Nanitenfabrik`,shipyard:`Raumschiffwerft`,researchLab:`Forschungslabor`,metalStorage:`Metallspeicher`,crystalStorage:`Kristallspeicher`,deuteriumTank:`Deuteriumtank`,darkMatterCollector:`Dunkle-Materie-Kollektor`,darkMatterTank:`Dunkle-Materie-Tank`,missileSilo:`Raketensilo`,terraformer:`Terraformer`,lunarBase:`Mondbasis`,sensorPhalanx:`Sensorphalanx`,jumpGate:`Sprungtor`,planetDestroyerFactory:`Planetenzerstörer-Fabrik`,buildTime:`Bauzeit`,production:`Produktion`,consumption:`Verbrauch`,totalCost:`Gesamtkosten`,totalPoints:`Gesamtpunkte`,levelRange:`Stufenbereich`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,buildQueueBonus:`Bauauftrag`,spaceBonus:`Raumbonus`,buildSpeedBonus:`Baugeschwindigkeitsbonus`,researchSpeedBonus:`Forschungsgeschwindigkeitsbonus`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},buildingDescriptions:{metalMine:`Fördert Metallressourcen`,crystalMine:`Fördert Kristallressourcen`,deuteriumSynthesizer:`Synthesiert Deuteriumressourcen`,solarPlant:`Liefert Energie`,fusionReactor:`Nutzt Deuterium zur Erzeugung großer Energiemengen`,roboticsFactory:`Beschleunigt Baugeschwindigkeit`,naniteFactory:`Erhöht Bauauftragskapazität, +1 pro Stufe (max 10 Stufen)`,shipyard:`Baut Schiffe`,researchLab:`Erforscht Technologien`,metalStorage:`Erhöht Metallspeicherkapazität`,crystalStorage:`Erhöht Kristallspeicherkapazität`,deuteriumTank:`Erhöht Deuteriumspeicherkapazität`,darkMatterCollector:`Sammelt seltene Dunkle-Materie-Ressourcen`,darkMatterTank:`Erhöht Dunkle-Materie-Speicherkapazität`,missileSilo:`Lagert und startet Raketen, 10 Raketen pro Stufe`,terraformer:`Terraformt Planetenoberfläche, erhöht verfügbaren Platz um 30 pro Stufe`,lunarBase:`Erhöht verfügbaren Platz auf dem Mond, +30 Platz pro Stufe`,sensorPhalanx:`Erkennt Flottenaktivitäten in umliegenden Systemen`,jumpGate:`Überträgt Flotten sofort zu anderen Monden`,planetDestroyerFactory:`Konstruiert ultimative Waffen zur Zerstörung von Planeten`},ships:{lightFighter:`Leichter Jäger`,heavyFighter:`Schwerer Jäger`,cruiser:`Kreuzer`,battleship:`Schlachtschiff`,battlecruiser:`Schlachtkreuzer`,bomber:`Bomber`,destroyer:`Zerstörer`,smallCargo:`Kleiner Transporter`,largeCargo:`Großer Transporter`,colonyShip:`Kolonieschiff`,recycler:`Recycler`,espionageProbe:`Spionagesonde`,solarSatellite:`Solarsatellit`,darkMatterHarvester:`Dunkle-Materie-Ernter`,deathstar:`Todesstern`},shipDescriptions:{lightFighter:`Grundlegende Kampfeinheit`,heavyFighter:`Schwer gepanzerter Jäger`,cruiser:`Mittleres Kriegsschiff, ausgewogene Offensive und Defensive`,battleship:`Mächtiges Kriegsschiff`,battlecruiser:`Schnelles mächtiges Kriegsschiff, hervorragend gegen Schlachtschiffe`,bomber:`Spezialisiertes Schiff zum Angriff auf Verteidigungsanlagen`,destroyer:`Jäger spezialisiert auf Zerstörung großer Schiffe`,smallCargo:`Transportiert kleine Mengen Ressourcen`,largeCargo:`Transportiert große Mengen Ressourcen`,colonyShip:`Zur Kolonisierung neuer Planeten`,recycler:`Sammelt Trümmerfeld-Ressourcen`,espionageProbe:`Späht feindliche Planeten aus`,solarSatellite:`Liefert zusätzliche Energie, erzeugt 50 Energie pro Satellit`,darkMatterHarvester:`Spezielles Schiff zum Ernten von Dunkler Materie`,deathstar:`Ultimative Waffe, die ganze Planeten zerstören kann`},defenses:{rocketLauncher:`Raketenwerfer`,lightLaser:`Leichtes Lasergeschütz`,heavyLaser:`Schweres Lasergeschütz`,gaussCannon:`Gaußkanone`,ionCannon:`Ionengeschütz`,plasmaTurret:`Plasmawerfer`,smallShieldDome:`Kleine Schildkuppel`,largeShieldDome:`Große Schildkuppel`,antiBallisticMissile:`Abfangrakete`,interplanetaryMissile:`Interkontinentalrakete`,planetaryShield:`Planetarschild`},defenseDescriptions:{rocketLauncher:`Grundlegende Verteidigungsanlage`,lightLaser:`Leichte Energiewaffe`,heavyLaser:`Schwere Energiewaffe`,gaussCannon:`Hochgeschwindigkeits-Kinetikwaffe`,ionCannon:`Effektiv gegen Schilde`,plasmaTurret:`Mächtige Verteidigungsanlage`,smallShieldDome:`Kleiner Schild zum Schutz des gesamten Planeten`,largeShieldDome:`Großer Schild zum Schutz des gesamten Planeten`,antiBallisticMissile:`Fängt feindliche Raketen ab, kann 1 Interkontinentalrakete abfangen`,interplanetaryMissile:`Kann Verteidigungsanlagen auf anderen Planeten angreifen`,planetaryShield:`Superschild zum Schutz des Planeten vor Vernichtungsangriffen`},research:{researchTime:`Forschungszeit`,totalCost:`Gesamtkosten`,totalPoints:`Gesamtpunkte`,levelRange:`Stufenbereich`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},technologies:{energyTechnology:`Energietechnik`,laserTechnology:`Lasertechnik`,ionTechnology:`Ionentechnik`,hyperspaceTechnology:`Hyperraumtechnik`,plasmaTechnology:`Plasmatechnik`,computerTechnology:`Computertechnologie`,espionageTechnology:`Spionagetechnik`,weaponsTechnology:`Waffentechnik`,shieldingTechnology:`Schildtechnik`,armourTechnology:`Panzerung`,astrophysics:`Astrophysik`,gravitonTechnology:`Gravitontechnik`,combustionDrive:`Verbrennungsantrieb`,impulseDrive:`Impulsantrieb`,hyperspaceDrive:`Hyperraumantrieb`,darkMatterTechnology:`Dunkle-Materie-Technologie`,terraformingTechnology:`Terraforming-Technologie`,planetDestructionTech:`Planetenzerstörungstechnologie`},technologyDescriptions:{energyTechnology:`Verbessert Energieeffizienz`,laserTechnology:`Grundlage für Laserwaffen und -verteidigung`,ionTechnology:`Ionenwaffentechnologie`,hyperspaceTechnology:`Hyperraumsprung-Technologie`,plasmaTechnology:`Plasmawaffentechnologie`,computerTechnology:`Erhöht Forschungsauftragskapazität, +1 pro Stufe (max 10 Stufen)`,espionageTechnology:`Verbessert Sondenwirksamkeit, +1 Spionagestufe pro Stufe`,weaponsTechnology:`Erhöht Angriffskraft von Schiffen und Verteidigung um 10% pro Stufe`,shieldingTechnology:`Erhöht Schilde von Schiffen und Verteidigung um 10% pro Stufe`,armourTechnology:`Erhöht Panzerung von Schiffen und Verteidigung um 10% pro Stufe`,astrophysics:`Jede Stufe fügt 1 Kolonieslot hinzu und erhöht Expeditionserfolgsrate`,gravitonTechnology:`Erforscht Gravitonmanipulation, erforderlich für Todesstern`,combustionDrive:`Grundlegende Antriebstechnologie`,impulseDrive:`Mittlere Antriebstechnologie`,hyperspaceDrive:`Fortgeschrittene Antriebstechnologie`,darkMatterTechnology:`Forschung zu Eigenschaften und Anwendungen von Dunkler Materie`,terraformingTechnology:`Forschung zur Planeten-Terraforming-Technologie, erhöht verfügbaren Platz aller Planeten um 30 pro Stufe`,planetDestructionTech:`Schreckliche Technologie zur Zerstörung ganzer Planeten`},officers:{commander:`Kommandant`,admiral:`Admiral`,engineer:`Ingenieur`,geologist:`Geologe`,technocrat:`Technokrat`,darkMatterSpecialist:`Dunkle-Materie-Spezialist`,resourceBonus:`Ressourcenproduktionsbonus`,darkMatterBonus:`Dunkle-Materie-Produktionsbonus`,energyBonus:`Energieproduktionsbonus`},officerDescriptions:{commander:`Verbessert Baugeschwindigkeit und Management`,admiral:`Verbessert Flottenkampf und Geschwindigkeit`,engineer:`Verbessert Energie und Verteidigung`,geologist:`Verbessert Ressourcenproduktion`,technocrat:`Verbessert Forschungsgeschwindigkeit und Spionage`,darkMatterSpecialist:`Verbessert Dunkle-Materie-Sammlungseffizienz`},queue:{buildQueue:`Bauauftrag`,researchQueue:`Forschungsauftrag`,building:`Im Bau`,researching:`In Forschung`,remaining:`Verbleibend`,cancel:`Abbrechen`,cancelBuild:`Bau abbrechen`,cancelResearch:`Forschung abbrechen`,confirmCancel:`Möchten Sie wirklich abbrechen? 50% der Ressourcen werden zurückerstattet.`,level:`Stufe`,gmModeActivated:``,upgradeToLevel:`Auf Stufe aufrüsten`},overview:{title:`Planetenübersicht`,resourceOverview:`Ressourcen`,fleetInfo:`Flotte`,currentShips:`Schiffe auf diesem Planeten`,productionSources:`Produktionsquellen`,productionSourcesDesc:`Detaillierte Ressourcenproduktion und Bonusinformationen`,consumptionSources:`Verbrauchsquellen`,consumptionSourcesDesc:`Energieverbrauchsdetails für Gebäude`,totalProduction:`Gesamtproduktion`,totalConsumption:`Gesamtverbrauch`,noConsumption:`Kein Energieverbrauch`},buildingsView:{title:`Gebäude`,usedSpace:`Verwendeter Platz`,spaceUsage:`Platzbedarf`,level:`Stufe`,gmModeActivated:``,upgradeCost:`Ausbaukosten`,buildTime:`Bauzeit`,upgrade:`Ausbauen`,maxLevelReached:`Maximale Stufe erreicht`,requirementsNotMet:`Anforderungen nicht erfüllt`,upgradeFailed:`Ausbau fehlgeschlagen`,upgradeFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen, Platz oder keine anderen Bauaufträge haben.`,demolish:`Abreißen`,demolishRefund:`Abriss-Rückerstattung`,demolishFailed:`Abriss fehlgeschlagen`,demolishFailedMessage:`Abriss nicht möglich. Bitte überprüfen Sie, ob die Bauqueue voll ist oder die Gebäudestufe 0 ist.`,confirmDemolish:``,confirmDemolishMessage:``},researchView:{title:`Forschung`,researchCost:`Forschungskosten`,research:`Forschen`,maxLevelReached:`Maximale Stufe erreicht`,researchFailed:`Forschung fehlgeschlagen`,researchFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben, die Voraussetzungen erfüllt sind oder keine anderen Forschungsaufträge vorhanden sind.`},shipyard:{attack:`Angriff`,missileAttack:`Raketenangriff`,shield:`Schild`,armor:`Panzerung`,speed:`Geschwindigkeit`,cargoCapacity:`Ladekapazität`,fuelConsumption:`Treibstoffverbrauch`,buildCost:`Baukosten`,buildTime:`Bauzeit`,perUnit:`Pro Einheit`,batchCalculator:`Batch-Rechner`,quantity:`Menge`,totalCost:`Gesamtkosten`,totalTime:`Gesamtzeit`},shipyardView:{title:`Raumschiffwerft`,fleetStorage:`Flottenspeicher`,attack:`Angriff`,missileAttack:`Raketenangriff`,shield:`Schild`,speed:`Geschwindigkeit`,cargoCapacity:`Ladekapazität`,unitCost:`Stückkosten`,buildQuantity:`Baumenge`,totalCost:`Gesamtkosten`,build:`Bauen`,inputError:`Eingabefehler`,inputErrorMessage:`Bitte Baumenge eingeben!`,buildFailed:`Bau fehlgeschlagen`,buildFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben oder die Voraussetzungen erfüllt sind.`},defense:{attack:`Angriff`,missileAttack:`Raketenangriff`,shield:`Schild`,armor:`Panzerung`,buildCost:`Baukosten`,buildTime:`Bauzeit`,perUnit:`Pro Einheit`,batchCalculator:`Batch-Rechner`,quantity:`Menge`,totalCost:`Gesamtkosten`,totalTime:`Gesamtzeit`},defenseView:{title:`Verteidigung`,attack:`Angriff`,missileAttack:`Raketenangriff`,shield:`Schild`,armor:`Panzerung`,buildTime:`Bauzeit`,seconds:`s`,unitCost:`Stückkosten`,buildQuantity:`Baumenge`,totalCost:`Gesamtkosten`,build:`Bauen`,shieldDomeBuilt:`Schildkuppel bereits gebaut`,missileCapacity:`Raketenkapazität`,inputError:`Eingabefehler`,inputErrorMessage:`Bitte Baumenge eingeben!`,buildFailed:`Bau fehlgeschlagen`,buildFailedMessage:`Bitte überprüfen Sie, ob Sie genügend Ressourcen haben oder die Voraussetzungen erfüllt sind. Schildkuppeln können nur einmal gebaut werden.`},fleetView:{title:`Flottenverwaltung`,fleetOverview:`Flottenübersicht`,sendFleet:`Flotte senden`,flightMissions:`Flugmissionen`,currentPlanetFleet:`Flotte auf diesem Planeten`,attack:`Angriff`,missileAttack:`Raketenangriff`,shield:`Schild`,armor:`Panzerung`,speed:`Geschwindigkeit`,cargo:`Fracht`,selectFleet:`Flotte auswählen`,selectFleetDescription:`Wählen Sie die Anzahl der zu sendenden Schiffe`,available:`Verfügbar`,all:`Alle`,targetCoordinates:`Zielkoordinaten`,galaxy:`Galaxie`,diplomacy:`Diplomacy`,system:`System`,position:`Position`,missionType:`Missionstyp`,missionInfo:`Missionsinfo`,fuelConsumption:`Treibstoffverbrauch`,flightTime:`Flugzeit`,attackMission:`Angriff`,transport:`Transport`,colonize:`Kolonisieren`,spy:`Spionage`,deploy:`Stationieren`,recycle:`Recyceln`,transportResources:`Ressourcen transportieren`,totalCargoCapacity:`Gesamtladekapazität`,used:`Verwendet`,noFlightMissions:`Keine Flugmissionen`,outbound:`Hinflug`,returning:`Rückflug`,fleetComposition:`Flottenzusammensetzung`,carryingResources:`Transportierte Ressourcen`,arrivalTime:`Ankunftszeit`,returnTime:`Rückkehrzeit`,recallFleet:`Flotte zurückrufen`,sendFailed:`Senden fehlgeschlagen`,sendFailedMessage:`Bitte überprüfen Sie Flottenanzahl, Treibstoffverfügbarkeit oder Ladekapazitätsgrenzen.`,recallFailed:`Zurückrufen fehlgeschlagen`,recallFailedMessage:`Diese Mission kann nicht zurückgerufen werden.`,unknownPlanet:`Unbekannter Planet`,fleetMissionSlots:`Flottenmissionsplätze`,noShipsSelected:`Keine Schiffe ausgewählt`,cannotSendToOwnPlanet:`Flotte kann nicht zu eigenem Planeten gesendet werden`,cargoExceedsCapacity:`Fracht überschreitet Kapazität`,noColonyShip:`Kolonieschiff für Kolonisierungsmission erforderlich`,noDebrisAtTarget:`Kein Trümmerfeld an Zielkoordinaten oder Trümmerfeld ist leer`,noDeathstar:`Todesstern für Zerstörungsmission erforderlich`,giftMode:`Geschenkmodus`,giftModeDescription:`Ressourcen als Geschenk senden an`,estimatedReputationGain:`Geschätzter Reputationsgewinn`},officersView:{title:`Offiziere`,activated:`Aktiviert`,inactive:`Inaktiv`,activeStatus:`Aktivierungsstatus`,expirationTime:`Ablaufzeit`,remainingTime:`Verbleibende Zeit`,recruitCost:`Rekrutierungskosten`,days:`Tage`,benefitsBonus:`Vorteile`,resourceProduction:`Ressourcenproduktion`,darkMatterProduction:`Dunkle-Materie-Produktion`,energyProduction:`Energieproduktion`,buildingSpeed:`Baugeschwindigkeit`,researchSpeed:`Forschungsgeschwindigkeit`,fleetSpeed:`Flottengeschwindigkeit`,fuelConsumption:`Treibstoffverbrauch`,defense:`Verteidigung`,storageCapacity:`Lagerkapazität`,buildQueue:`Bauauftrag`,fleetSlots:`Flottenslots`,hire:`Rekrutieren`,renew:`Verlängern`,dismiss:`Entlassen`,hireTitle:`Offizier rekrutieren`,hireMessage:`Möchten Sie wirklich {name} rekrutieren? Gültig für 7 Tage.`,renewTitle:`Offizier verlängern`,renewMessage:`Möchten Sie wirklich {name} für 7 Tage verlängern?`,dismissTitle:`Offizier entlassen`,dismissMessage:`Möchten Sie wirklich {name} entlassen? Es werden keine Kosten zurückerstattet.`,hireFailed:`Rekrutierung fehlgeschlagen`,renewFailed:`Verlängerung fehlgeschlagen`,insufficientResources:`Nicht genug Ressourcen!`},galaxyView:{title:`Galaxie`,selectCoordinates:`Koordinaten auswählen`,galaxy:`Galaxie`,diplomacy:`Diplomacy`,selectGalaxy:`Galaxie auswählen`,system:`System`,selectSystem:`System auswählen`,view:`Anzeigen`,myPlanet:`Mein Planet`,myPlanets:`Meine Systeme ansehen`,npcPlanets:`NPC-Planeten`,selectPlanetToView:`Planet auswählen, um sein System anzuzeigen`,totalPositions:`Insgesamt 10 Planetenpositionen`,mine:`Mein`,hostile:`Feindlich`,emptySlot:`Leer - Kolonisierbar`,scout:`Spähen`,attack:`Angriff`,missileAttack:`Raketenangriff`,colonize:`Kolonisieren`,switch:`Wechseln`,recycle:`Recyceln`,debrisField:`Trümmerfeld`,scoutPlanetTitle:`Planet ausspionieren`,attackPlanetTitle:`Planet angreifen`,missileAttackTitle:`Raketenangriff`,colonizePlanetTitle:`Planet kolonisieren`,recyclePlanetTitle:`Trümmer recyceln`,scoutPlanetMessage:`Möchten Sie wirklich Spionagesonden senden, um Planet [{coordinates}] auszuspionieren? - -Bitte gehen Sie zur Flottenseite, um Schiffe auszuwählen und zu senden.`,attackPlanetMessage:`Möchten Sie wirklich Planet [{coordinates}] angreifen? - -Bitte gehen Sie zur Flottenseite, um Schiffe auszuwählen und zu senden.`,missileAttackMessage:`Interkontinentalraketen starten, um Planet [{coordinates}] anzugreifen`,missileCount:`Raketenanzahl`,availableMissiles:`Verfügbare Raketen`,missileRange:`Raketenreichweite`,systems:`Systeme`,distance:`Entfernung`,flightTime:`Flugzeit`,launchMissile:`Starten`,cancel:`Abbrechen`,colonizePlanetMessage:`Möchten Sie wirklich Position [{coordinates}] kolonisieren? - -Bitte gehen Sie zur Flottenseite, um ein Kolonieschiff zu senden.`,recyclePlanetMessage:`Möchten Sie wirklich Trümmer bei Position [{coordinates}] recyceln? - -Bitte gehen Sie zur Flottenseite, um Recycler zu senden.`,sendGift:`Geschenk senden`,debris:`Trümmer`,giftPlanetTitle:`Geschenk senden`,giftPlanetMessage:`Möchten Sie wirklich Ressourcen als Geschenk an Planet [{coordinates}] senden? - -Bitte gehen Sie zur Flottenseite, um Transporter auszuwählen und Ressourcen zu laden.`},messagesView:{title:`Nachrichten`,battles:`Kämpfe`,spy:`Spionage`,npc:`NPC`,spied:`Ausspioniert`,battleReports:`Kampfberichte`,spyReports:`Spionageberichte`,noBattleReports:`Keine Kampfberichte`,noSpyReports:`Keine Spionageberichte`,noSpiedNotifications:`Keine Ausspionierungs-Benachrichtigungen`,battleReport:`Kampfbericht`,spyReport:`Spionagebericht`,spiedNotification:`Ausspionierungs-Benachrichtigung`,victory:`Sieg`,defeat:`Niederlage`,draw:`Unentschieden`,detected:`Entdeckt`,undetected:`Unentdeckt`,attackerFleet:`Angreiferflotte`,defenderFleet:`Verteidigerflotte`,defenderDefense:`Verteidigerverteidigung`,attackerLosses:`Angreiferverluste`,defenderLosses:`Verteidigerverluste`,noLosses:`Keine Verluste`,plunder:`Beute`,debrisField:`Trümmerfeld`,resources:`Ressourcen`,fleet:`Flotte`,defense:`Verteidigung`,buildings:`Gebäude`,unread:`Ungelesen`,targetPlanet:`Zielplanet`,attackerRemaining:`Angreifer verblieben`,defenderRemaining:`Verteidiger verblieben`,moonChance:`Mondchance`,showRoundDetails:`Rundendetails anzeigen`,hideRoundDetails:`Rundendetails ausblenden`,round:`Runde {round}`,attackerRemainingPower:`Verbleibende Angreiferkraft`,defenderRemainingPower:`Verbleibende Verteidigerkraft`,missions:`Missionen`,noMissionReports:`Keine Missionsberichte`,success:`Erfolg`,failed:`Fehlgeschlagen`,npcActivity:`NPC-Aktivität`,noNPCActivity:`Keine NPC-Aktivitätsbenachrichtigungen`,npcRecycleActivity:`NPC recycelt Trümmer`,gifts:`Geschenke`,giftRejected:`Abgelehnt`,noGiftNotifications:`Keine Geschenkbenachrichtigungen`,noGiftRejected:`Keine abgelehnten Geschenke`,giftFrom:`Geschenk von {npcName}`,giftRejectedBy:`{npcName} hat das Geschenk abgelehnt`,giftResources:`Geschenk-Ressourcen`,rejectedResources:`Abgelehnte Ressourcen`,expectedReputation:`Erwarteter Ruf`,currentReputation:`Aktueller Ruf`,acceptGift:`Annehmen`,rejectGift:`Ablehnen`,rejectionReason:{hostile:`Sie sind feindlich und nehmen keine Geschenke an`,neutral_distrust:`Sie vertrauen Ihnen nicht`,polite_decline:`Sie lehnten höflich ab`}},missionReports:{transportSuccess:`Transportmission erfolgreich abgeschlossen`,transportFailed:`Transportmission fehlgeschlagen`,colonizeSuccess:`Kolonisierungsmission erfolgreich, neuer Planet gegründet`,colonizeFailed:`Kolonisierungsmission fehlgeschlagen`,deploySuccess:`Einsatzmission erfolgreich abgeschlossen`,deployFailed:`Einsatzmission fehlgeschlagen`,recycleSuccess:`Recyclingmission erfolgreich abgeschlossen`,recycleFailed:`Recyclingmission fehlgeschlagen, keine Trümmer am Zielort`,destroySuccess:`Planetenzerstörungsmission erfolgreich ausgeführt`,destroyFailed:`Planetenzerstörungsmission fehlgeschlagen`},simulatorView:{title:`Kampfsimulator`,attacker:`Angreifer`,defender:`Verteidiger`,attackerConfig:`Angreiferkonfiguration`,attackerConfigDesc:`Angreiferflotte und Technologiestufen konfigurieren`,defenderConfig:`Verteidigerkonfiguration`,defenderConfigDesc:`Verteidigerflotte, Verteidigung und Technologiestufen konfigurieren`,fleet:`Flotte`,defenseStructures:`Verteidigungsanlagen`,techLevels:`Technologiestufen`,weapon:`Waffe`,shield:`Schild`,armor:`Panzerung`,defenderResources:`Verteidigerressourcen (für Beuteberechnung)`,startSimulation:`Simulation starten`,reset:`Zurücksetzen`,battleResult:`Kampfergebnis`,attackerVictory:`Angreifer Sieg`,defenderVictory:`Verteidiger Sieg`,draw:`Unentschieden`,afterRounds:`Nach {rounds} Runden`,attackerLosses:`Angreiferverluste`,defenderLosses:`Verteidigerverluste`,noLosses:`Keine Verluste`,attackerRemaining:`Angreifer verblieben`,defenderRemaining:`Verteidiger verblieben`,allDestroyed:`Alle zerstört`,plunderableResources:`Erbeutbare Ressourcen`,debrisField:`Trümmerfeld`,moonChance:`Mondchance`,showRoundDetails:`Rundendetails anzeigen`,hideRoundDetails:`Rundendetails ausblenden`,round:`Runde {round}`,attackerRemainingPower:`Verbleibende Angreiferkraft`,defenderRemainingPower:`Verbleibende Verteidigerkraft`},settings:{dataManagement:`Datenverwaltung`,dataManagementDesc:`Spieldaten exportieren, importieren oder löschen`,exportData:`Daten exportieren`,exportDataDesc:`Spielfortschritt als JSON-Datei exportieren`,export:`Exportieren`,exporting:`Exportieren...`,exportSuccess:`Export erfolgreich`,exportFailed:`Export fehlgeschlagen, bitte erneut versuchen`,importData:`Daten importieren`,importDataDesc:`Spielfortschritt aus JSON-Datei wiederherstellen`,selectFile:`Datei auswählen`,importSuccess:`Import erfolgreich`,importConfirmTitle:`Import bestätigen`,importConfirmMessage:`Beim Importieren wird der aktuelle Spielfortschritt überschrieben. Diese Aktion kann nicht rückgängig gemacht werden. Fortfahren?`,importFailed:`Import fehlgeschlagen, bitte Dateiformat überprüfen`,clearData:`Daten löschen`,clearDataDesc:`Alle Spieldaten löschen und zurücksetzen`,clear:`Löschen`,clearConfirmTitle:`Löschen bestätigen`,clearConfirmMessage:`Alle Spieldaten werden gelöscht und von vorne begonnen. Diese Aktion kann nicht rückgängig gemacht werden. Fortfahren?`,gameSettings:`Spieleinstellungen`,gameSettingsDesc:`Spielparameter und Einstellungen anpassen`,gamePause:`Spielpause`,gamePauseDesc:`Spielzeit und Ressourcenproduktion pausieren oder fortsetzen`,pause:`Pausieren`,resume:`Fortsetzen`,gamePaused:`Spiel pausiert`,gameResumed:`Spiel fortgesetzt`,playerName:`Spielername`,gameSpeed:`Ressourcenproduktionsgeschwindigkeit`,gameSpeedDesc:`Aktueller Ressourcenproduktionsgeschwindigkeitsmultiplikator`,speedChanged:`Ressourcenproduktionsgeschwindigkeit auf {speed}x geändert`,speedReset:`Ressourcenproduktionsgeschwindigkeit auf 1x zurückgesetzt`,reset:`Zurücksetzen`,about:`Über`,version:`Version`,latestVersion:`Neueste Version`,checkUpdate:`Update prüfen`,checking:`Prüfen...`,newVersionAvailable:`Neue Version {version} verfügbar`,upToDate:`Bereits auf dem neuesten Stand`,checkUpdateCooldown:`Bitte versuchen Sie es später erneut (5 Minuten Abklingzeit)`,checkUpdateFailed:`Update-Prüfung fehlgeschlagen, bitte überprüfen Sie Ihre Netzwerkverbindung`,viewUpdate:`Update ansehen`,updateAvailable:`Eine neue Version ist verfügbar. Klicken Sie, um die Versionshinweise anzuzeigen.`,download:`Herunterladen`,goToDownload:`Zum Download`,buildDate:`Build-Datum`,community:`Community`,github:`GitHub-Repository`,qqGroup:`QQ-Gruppe`},gmView:{title:`GM-Kontrollpanel`,adminOnly:`Nur Admin`,selectPlanet:`Planet auswählen`,choosePlanet:`Einen Planeten auswählen`,resources:`Ressourcen`,buildings:`Gebäude`,research:`Forschung`,ships:`Schiffe`,defense:`Verteidigung`,officers:`Offiziere`,modifyResources:`Ressourcen ändern`,resourcesDesc:`Planetenressourcen schnell ändern`,modifyBuildings:`Gebäude ändern`,buildingsDesc:`Gebäudelevel schnell festlegen`,modifyResearch:`Forschung ändern`,researchDesc:`Forschungslevel schnell festlegen`,modifyShips:`Schiffe ändern`,shipsDesc:`Schiffsanzahl schnell festlegen`,modifyDefense:`Verteidigung ändern`,defenseDesc:`Verteidigungsanzahl schnell festlegen`,modifyOfficers:`Offiziere ändern`,officersDesc:`Offiziersablaufzeit schnell festlegen`,days:`T`,npcTesting:`NPC-Test`,npcTestingDesc:`NPC-Spionage- und Angriffsverhalten testen`,selectNPC:`NPC auswählen`,chooseNPC:`Wählen Sie einen NPC`,targetPlanet:`Zielplanet`,chooseTarget:`Zielplanet auswählen`,testSpy:`Spionage testen`,testAttack:`Angriff testen`,testSpyAndAttack:`Spionage & Angriff testen`,testSpyMessage:`Klicken Sie auf Bestätigen, um die Spionagemission zu beschleunigen`,testAttackMessage:`Klicken Sie auf Bestätigen, um die Angriffsmission zu beschleunigen`,testSpyAndAttackMessage:`Klicken Sie auf Bestätigen, um die Missionen zu beschleunigen`,initializeFleet:`NPC-Flotte initialisieren`,accelerateMissions:`Alle Missionen beschleunigen (5s)`,selectNPCFirst:`Bitte wählen Sie zuerst einen NPC`,npcNoProbes:`NPC hat keine Spionagesonden`,npcNoSpyReport:`NPC muss zuerst spionieren`,npcMissionFailed:`Mission konnte nicht erstellt werden`,npcNoPlanets:`NPC hat keine Planeten`,npcWillSpyIn5s:`{npcName} wird in 5 Sekunden spionieren`,npcWillAttackIn5s:`{npcName} wird in 5 Sekunden angreifen`,npcWillSpyAndAttack:`{npcName} wird in 5s spionieren und in 10s angreifen`,acceleratedMissions:`{count} Missionen auf 5 Sekunden beschleunigt`,npcFleetInitialized:`{npcName} Flotte initialisiert`,npcFleetDetails:`100 Spionagesonden -500 Leichte Jäger -300 Schwere Jäger -200 Kreuzer -100 Schlachtschiffe -50 Bomber -30 Zerstörer -20 Schlachtkreuzer`,dangerZone:`Gefahrenzone`,dangerZoneDesc:`Die folgenden Vorgänge sind irreversibel`,resetGame:`Spiel zurücksetzen`,resetGameConfirm:`Möchten Sie das Spiel wirklich zurücksetzen? Alle Daten werden gelöscht!`},alerts:{npcSpyIncoming:`NPC-Spionagesonde nähert sich`,npcAttackIncoming:`NPC-Flotten-Angriff im Anmarsch!`,npcFleetIncoming:`NPC-Flotte nähert sich`,ships:`Schiffe`,spiedBy:`Ausspioniert von`,attackedBy:`Angegriffen von`,detectionSuccess:`Spionage entdeckt`,detectionFailed:`Spionage nicht entdeckt`,npcSpiedYourPlanet:`NPC hat deinen Planeten ausspioniert`,npcAttackedYourPlanet:`NPC hat deinen Planeten angegriffen`},diplomacy:{title:`Diplomatie`,description:`Verwalte diplomatische Beziehungen mit NPCs`,tabs:{all:`Alle`,friendly:`Freundlich`,neutral:`Neutral`,hostile:`Feindlich`},noNpcs:`Keine NPCs`,noFriendlyNpcs:`Keine freundlichen NPCs`,noNeutralNpcs:`Keine neutralen NPCs`,noHostileNpcs:`Keine feindlichen NPCs`,recentEvents:`Aktuelle Ereignisse`,recentEventsDescription:`Protokoll der jüngsten diplomatischen Aktivitäten`,ago:`vor`,status:{friendly:`Freundlich`,neutral:`Neutral`,hostile:`Feindlich`},planets:`Planeten`,allies:`Verbündete`,reputation:`Ansehen`,alliedWith:`Verbündet mit`,more:`weitere`,actions:{gift:`Geschenk senden`,viewPlanets:`Planeten ansehen`},lastEvent:`Letztes Ereignis`,events:{gift:`Geschenk gesendet`,attack:`Angriff`,missileAttack:`Raketenangriff`,allyAttacked:`Verbündeter angegriffen`,spy:`Spionage`,stealDebris:`Trümmer gestohlen`},reports:{giftedResources:`{metal}M {crystal}K {deuterium}D geschenkt`,receivedGiftFromPlayer:`Geschenk von Spieler erhalten`,giftedToNpc:`Sie haben {npcName} Ressourcen geschenkt. Ansehen +{reputation}`,rejectedPlayerGift:`Geschenk des Spielers abgelehnt`,npcRejectedGift:`{npcName} hat Ihr Geschenk abgelehnt. Ansehen {reputation}`,attackedNpc:`{npcName} angegriffen`,wasAttackedByPlayer:`Wurde von Spieler angegriffen`,youAttackedNpc:`Sie haben {npcName} angegriffen`,playerAttackedAlly:`Spieler hat Verbündeten {allyName} angegriffen`,allyDispleased:`{allyName} ist unzufrieden, dass Sie ihren Verbündeten {targetName} angegriffen haben`,wasSpiedByPlayer:`Wurde von Spieler ausspioniert (entdeckt: {detected})`,spyDetected:`Ihre Spionage wurde von {npcName} entdeckt`,stoleDebrisFromTerritory:`Trümmer aus {npcName}s Territorium gestohlen`,playerStoleDebris:`Spieler hat Trümmer aus Territorium gestohlen`,recycledDebrisNearNpc:`Sie haben Trümmer in der Nähe von {npcName}s Planeten recycelt. Sie sind unzufrieden.`,giftedResourcesToPlayer:`Ressourcen an Spieler geschenkt`,receivedGiftFromNpc:`Geschenk von {npcName} erhalten`,acceptedGiftFromNpc:`Sie haben ein Geschenk von {npcName} angenommen: {metal}M {crystal}K {deuterium}D`,playerRejectedGift:`Spieler hat Geschenk abgelehnt`,rejectedGiftFromNpc:`Sie haben ein Geschenk von {npcName} abgelehnt. Ansehen {reputation}`}},pagination:{previous:`Vorherige`,next:`Nächste`,first:`Erste`,last:`Letzte`,page:`Seite {page}`},notFound:{title:`Seite nicht gefunden`,description:`Entschuldigung, die gesuchte Seite existiert nicht`,goHome:`Zur Startseite`}},i={common:{confirm:`Подтвердить`,cancel:`Отмена`,delete:`Удалить`,edit:`Редактировать`,save:`Сохранить`,close:`Закрыть`,back:`Назад`,next:`Далее`,previous:`Предыдущий`,submit:`Отправить`,reset:`Сбросить`,search:`Поиск`,filter:`Фильтр`,loading:`Загрузка...`,noData:`Нет данных`,error:`Ошибка`,success:`Успешно`,warning:`Предупреждение`,info:`Информация`,resourceType:`Тип ресурса`,playerName:`Командир`,timeHour:`ч`,timeMinute:`мин`,timeSecond:`сек`,featureLocked:`Функция заблокирована`,unlockRequired:`Требуется здание`,requiredBuilding:`Необходимое здание`,currentLevel:`Текущий уровень`,goToBuildings:`К зданиям`,locked:`Заблокировано`,viewRequirements:`Просмотр требований`,requirementsNotMet:`Требования не выполнены`,current:`Текущий`,level:`Уровень`,gmModeActivated:`Режим GM активирован! Проверьте навигационное меню.`},errors:{requirementsNotMet:`Требования не выполнены`,insufficientResources:`Недостаточно ресурсов`,insufficientFleetStorage:`Недостаточно места для флота`,shieldDomeLimit:`Достигнут лимит щитовых куполов`,missileSiloLimit:`Превышена вместимость ракетной шахты`,insufficientMissiles:`Недостаточно межпланетных ракет`,invalidMissileCount:`Неверное количество ракет`,targetOutOfRange:`Цель вне дальности`,cannotAttackOwnPlanet:`Нельзя атаковать свою планету`,fleetMissionsFull:`Слоты миссий флота заполнены`,insufficientFleet:`Недостаточно флота`,insufficientFuel:`Недостаточно топлива`,planetOnly:`Это здание можно построить только на планетах`,moonOnly:`Это здание можно построить только на лунах`,buildQueueFull:`Очередь строительства заполнена`,insufficientSpace:`Недостаточно места`,buildingLevelZero:`Уровень здания 0, нельзя снести`,researchQueueFull:`Очередь исследований заполнена`,moonExists:`Луна уже существует`,insufficientDebris:`Недостаточно обломков`},nav:{overview:`Обзор`,buildings:`Здания`,research:`Исследования`,shipyard:`Верфь`,defense:`Оборона`,fleet:`Флот`,officers:`Офицеры`,simulator:`Симулятор`,galaxy:`Галактика`,diplomacy:`Diplomacy`,messages:`Сообщения`,settings:`Настройки`,gm:`GM`},sidebar:{language:`Язык`,lightMode:`Светлая тема`,darkMode:`Тёмная тема`,collapse:`Свернуть`,expand:`Развернуть`},resources:{metal:`Металл`,crystal:`Кристалл`,deuterium:`Дейтерий`,darkMatter:`Тёмная материя`,energy:`Энергия`,production:`Производство`,consumption:`Потребление`,capacity:`Вместимость`,current:`Текущий`,max:`Макс. вместимость`,perHour:`час`,perMinute:`мин`,hour:`час`,noEnergy:`Нет энергии`},planet:{planet:`Планета`,moon:`Луна`,colony:`Колония`,position:`Позиция`,coordinates:`Координаты`,switchToMoon:`На луну`,backToPlanet:`Вернуться на планету`,switchPlanet:`Переключить планету`,currentPlanet:`Текущая планета`,fields:`Поля`,temperature:`Температура`,homePlanet:`Родная планета`,planetPrefix:`Планета`,moonSuffix:`я луна`,colonyPrefix:`Колония`},player:{points:`Всего очков`},buildings:{metalMine:`Рудник металла`,crystalMine:`Рудник кристалла`,deuteriumSynthesizer:`Синтезатор дейтерия`,solarPlant:`Солнечная электростанция`,fusionReactor:`Термоядерный реактор`,roboticsFactory:`Фабрика роботов`,naniteFactory:`Нанитная фабрика`,shipyard:`Верфь`,researchLab:`Исследовательская лаборатория`,metalStorage:`Хранилище металла`,crystalStorage:`Хранилище кристалла`,deuteriumTank:`Цистерна дейтерия`,darkMatterCollector:`Коллектор тёмной материи`,darkMatterTank:`Резервуар тёмной материи`,missileSilo:`Ракетная шахта`,terraformer:`Терраформер`,lunarBase:`Лунная база`,sensorPhalanx:`Сенсорная фаланга`,jumpGate:`Прыжковые ворота`,planetDestroyerFactory:`Фабрика разрушителей планет`,buildTime:`Время строительства`,production:`Производство`,consumption:`Потребление`,totalCost:`Общая стоимость`,totalPoints:`Общие очки`,levelRange:`Диапазон уровней`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,buildQueueBonus:`Очередь строительства`,spaceBonus:`Бонус пространства`,buildSpeedBonus:`Бонус скорости строительства`,researchSpeedBonus:`Бонус скорости исследования`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},buildingDescriptions:{metalMine:`Добывает металлические ресурсы`,crystalMine:`Добывает кристаллические ресурсы`,deuteriumSynthesizer:`Синтезирует дейтериевые ресурсы`,solarPlant:`Обеспечивает энергией`,fusionReactor:`Использует дейтерий для производства большого количества энергии`,roboticsFactory:`Ускоряет скорость строительства`,naniteFactory:`Увеличивает вместимость очереди строительства, +1 за уровень (макс 10 уровней)`,shipyard:`Строит корабли`,researchLab:`Исследует технологии`,metalStorage:`Увеличивает ёмкость хранилища металла`,crystalStorage:`Увеличивает ёмкость хранилища кристалла`,deuteriumTank:`Увеличивает ёмкость хранилища дейтерия`,darkMatterCollector:`Собирает редкие ресурсы тёмной материи`,darkMatterTank:`Увеличивает ёмкость хранилища тёмной материи`,missileSilo:`Хранит и запускает ракеты, 10 ракет на уровень`,terraformer:`Терраформирует поверхность планеты, увеличивает доступное пространство на 30 за уровень`,lunarBase:`Увеличивает доступное пространство на луне, +30 пространства за уровень`,sensorPhalanx:`Обнаруживает активность флота в окружающих системах`,jumpGate:`Мгновенно переносит флоты на другие луны`,planetDestroyerFactory:`Производит абсолютное оружие, способное уничтожать планеты`},ships:{lightFighter:`Лёгкий истребитель`,heavyFighter:`Тяжёлый истребитель`,cruiser:`Крейсер`,battleship:`Линкор`,battlecruiser:`Линейный крейсер`,bomber:`Бомбардировщик`,destroyer:`Эсминец`,smallCargo:`Малый транспорт`,largeCargo:`Большой транспорт`,colonyShip:`Колонизатор`,recycler:`Переработчик`,espionageProbe:`Шпионский зонд`,solarSatellite:`Солнечный спутник`,darkMatterHarvester:`Сборщик тёмной материи`,deathstar:`Звезда Смерти`},shipDescriptions:{lightFighter:`Базовая боевая единица`,heavyFighter:`Тяжелобронированный истребитель`,cruiser:`Средний боевой корабль, сбалансированная атака и защита`,battleship:`Мощный боевой корабль`,battlecruiser:`Быстрый мощный боевой корабль, отлично атакует линкоры`,bomber:`Специализированный корабль для атаки оборонительных сооружений`,destroyer:`Охотник, специализирующийся на уничтожении крупных кораблей`,smallCargo:`Транспортирует небольшое количество ресурсов`,largeCargo:`Транспортирует большое количество ресурсов`,colonyShip:`Используется для колонизации новых планет`,recycler:`Собирает ресурсы с поля обломков`,espionageProbe:`Разведывает вражеские планеты`,solarSatellite:`Обеспечивает дополнительную энергию, генерирует 50 энергии на спутник`,darkMatterHarvester:`Специальный корабль для сбора тёмной материи`,deathstar:`Абсолютное оружие, способное уничтожать целые планеты`},defenses:{rocketLauncher:`Ракетная установка`,lightLaser:`Лёгкий лазер`,heavyLaser:`Тяжёлый лазер`,gaussCannon:`Гауссова пушка`,ionCannon:`Ионное орудие`,plasmaTurret:`Плазменная турель`,smallShieldDome:`Малый щитовой купол`,largeShieldDome:`Большой щитовой купол`,antiBallisticMissile:`Противоракета`,interplanetaryMissile:`Межпланетная ракета`,planetaryShield:`Планетарный щит`},defenseDescriptions:{rocketLauncher:`Базовое оборонительное сооружение`,lightLaser:`Лёгкое энергетическое оружие`,heavyLaser:`Тяжёлое энергетическое оружие`,gaussCannon:`Высокоскоростное кинетическое оружие`,ionCannon:`Эффективно против щитов`,plasmaTurret:`Мощное оборонительное сооружение`,smallShieldDome:`Малый щит, защищающий всю планету`,largeShieldDome:`Большой щит, защищающий всю планету`,antiBallisticMissile:`Перехватывает вражеские ракеты, может перехватить 1 межпланетную ракету`,interplanetaryMissile:`Может атаковать оборонительные сооружения на других планетах`,planetaryShield:`Суперщит, защищающий планету от атак уничтожения`},research:{researchTime:`Время исследования`,totalCost:`Общая стоимость`,totalPoints:`Общие очки`,levelRange:`Диапазон уровней`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},technologies:{energyTechnology:`Энергетическая технология`,laserTechnology:`Лазерная технология`,ionTechnology:`Ионная технология`,hyperspaceTechnology:`Гиперпространственная технология`,plasmaTechnology:`Плазменная технология`,computerTechnology:`Компьютерная технология`,espionageTechnology:`Шпионаж`,weaponsTechnology:`Оружие`,shieldingTechnology:`Щиты`,armourTechnology:`Броня`,astrophysics:`Астрофизика`,gravitonTechnology:`Гравитоны`,combustionDrive:`Реактивный двигатель`,impulseDrive:`Импульсный двигатель`,hyperspaceDrive:`Гиперпространственный двигатель`,darkMatterTechnology:`Технология тёмной материи`,terraformingTechnology:`Технология терраформирования`,planetDestructionTech:`Технология уничтожения планет`},technologyDescriptions:{energyTechnology:`Улучшает энергоэффективность`,laserTechnology:`Основа лазерного оружия и обороны`,ionTechnology:`Технология ионного оружия`,hyperspaceTechnology:`Технология гиперпространственных прыжков`,plasmaTechnology:`Технология плазменного оружия`,computerTechnology:`Увеличивает вместимость очереди исследований, +1 за уровень (макс 10 уровней)`,espionageTechnology:`Повышает эффективность зондов, +1 уровень шпионажа за уровень`,weaponsTechnology:`Увеличивает силу атаки кораблей и обороны на 10% за уровень`,shieldingTechnology:`Увеличивает щиты кораблей и обороны на 10% за уровень`,armourTechnology:`Увеличивает броню кораблей и обороны на 10% за уровень`,astrophysics:`Каждый уровень добавляет 1 слот колонии и повышает шанс успеха экспедиций`,gravitonTechnology:`Изучает манипуляцию гравитонами, требуется для Звезды смерти`,combustionDrive:`Базовая технология двигателей`,impulseDrive:`Средняя технология двигателей`,hyperspaceDrive:`Продвинутая технология двигателей`,darkMatterTechnology:`Исследование свойств и применения тёмной материи`,terraformingTechnology:`Исследование технологии терраформирования планет, увеличивает доступное пространство всех планет на 30 за уровень`,planetDestructionTech:`Исследование ужасающей технологии уничтожения целых планет`},officers:{commander:`Командир`,admiral:`Адмирал`,engineer:`Инженер`,geologist:`Геолог`,technocrat:`Технократ`,darkMatterSpecialist:`Специалист по тёмной материи`,resourceBonus:`Бонус производства ресурсов`,darkMatterBonus:`Бонус производства тёмной материи`,energyBonus:`Бонус производства энергии`},officerDescriptions:{commander:`Улучшает скорость строительства и управление`,admiral:`Улучшает боевую мощь и скорость флота`,engineer:`Улучшает энергию и оборону`,geologist:`Улучшает производство ресурсов`,technocrat:`Улучшает скорость исследований и шпионаж`,darkMatterSpecialist:`Улучшает эффективность сбора тёмной материи`},queue:{buildQueue:`Очередь строительства`,researchQueue:`Очередь исследований`,building:`Строится`,researching:`Исследуется`,remaining:`Осталось`,cancel:`Отменить`,cancelBuild:`Отменить строительство`,cancelResearch:`Отменить исследование`,confirmCancel:`Вы уверены, что хотите отменить? 50% ресурсов будет возвращено.`,level:`Уровень`,gmModeActivated:``,upgradeToLevel:`Улучшить до уровня`},overview:{title:`Обзор планеты`,resourceOverview:`Ресурсы`,fleetInfo:`Флот`,currentShips:`Корабли на этой планете`,productionSources:`Источники производства`,productionSourcesDesc:`Подробная информация о производстве ресурсов и бонусах`,consumptionSources:`Источники потребления`,consumptionSourcesDesc:`Детали потребления энергии зданиями`,totalProduction:`Общее производство`,totalConsumption:`Общее потребление`,noConsumption:`Нет потребления энергии`},buildingsView:{title:`Здания`,usedSpace:`Использовано полей`,spaceUsage:`Использование полей`,level:`Уровень`,gmModeActivated:``,upgradeCost:`Стоимость улучшения`,buildTime:`Время строительства`,upgrade:`Улучшить`,maxLevelReached:`Достигнут максимальный уровень`,requirementsNotMet:`Требования не выполнены`,upgradeFailed:`Улучшение не удалось`,upgradeFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов, места или нет других задач строительства.`,demolish:`Снести`,demolishRefund:`Возврат от сноса`,demolishFailed:`Снос не удался`,demolishFailedMessage:`Невозможно снести это здание. Проверьте, не заполнена ли очередь строительства или уровень здания не равен 0.`,confirmDemolish:`Подтвердить снос`,confirmDemolishMessage:`Вы уверены, что хотите снести следующее здание?`},researchView:{title:`Исследования`,researchCost:`Стоимость исследования`,research:`Исследовать`,maxLevelReached:`Достигнут максимальный уровень`,researchFailed:`Исследование не удалось`,researchFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов, выполнены ли предварительные условия или нет других исследовательских задач.`},shipyard:{attack:`Атака`,missileAttack:`Ракетная атака`,shield:`Щит`,armor:`Броня`,speed:`Скорость`,cargoCapacity:`Грузоподъёмность`,fuelConsumption:`Расход топлива`,buildCost:`Стоимость постройки`,buildTime:`Время строительства`,perUnit:`За единицу`,batchCalculator:`Калькулятор партий`,quantity:`Количество`,totalCost:`Общая стоимость`,totalTime:`Общее время`},shipyardView:{title:`Верфь`,fleetStorage:`Хранилище флота`,attack:`Атака`,missileAttack:`Ракетная атака`,shield:`Щит`,speed:`Скорость`,cargoCapacity:`Грузоподъёмность`,unitCost:`Стоимость единицы`,buildQuantity:`Количество для постройки`,totalCost:`Общая стоимость`,build:`Построить`,inputError:`Ошибка ввода`,inputErrorMessage:`Пожалуйста, введите количество для постройки!`,buildFailed:`Постройка не удалась`,buildFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов или выполнены ли предварительные условия.`},defense:{attack:`Атака`,missileAttack:`Ракетная атака`,shield:`Щит`,armor:`Броня`,buildCost:`Стоимость постройки`,buildTime:`Время строительства`,perUnit:`За единицу`,batchCalculator:`Калькулятор партий`,quantity:`Количество`,totalCost:`Общая стоимость`,totalTime:`Общее время`},defenseView:{title:`Оборона`,attack:`Атака`,missileAttack:`Ракетная атака`,shield:`Щит`,armor:`Броня`,buildTime:`Время постройки`,seconds:`с`,unitCost:`Стоимость единицы`,buildQuantity:`Количество для постройки`,totalCost:`Общая стоимость`,build:`Построить`,shieldDomeBuilt:`Щитовой купол уже построен`,missileCapacity:`Вместимость ракет`,inputError:`Ошибка ввода`,inputErrorMessage:`Пожалуйста, введите количество для постройки!`,buildFailed:`Постройка не удалась`,buildFailedMessage:`Пожалуйста, проверьте, достаточно ли у вас ресурсов или выполнены ли предварительные условия. Щитовые купола можно построить только один раз.`},fleetView:{title:`Управление флотом`,fleetOverview:`Обзор флота`,sendFleet:`Отправить флот`,flightMissions:`Полетные миссии`,currentPlanetFleet:`Флот на этой планете`,attack:`Атака`,missileAttack:`Ракетная атака`,shield:`Щит`,armor:`Броня`,speed:`Скорость`,cargo:`Груз`,selectFleet:`Выбрать флот`,selectFleetDescription:`Выберите количество кораблей для отправки`,available:`Доступно`,all:`Все`,targetCoordinates:`Целевые координаты`,galaxy:`Галактика`,diplomacy:`Diplomacy`,system:`Система`,position:`Позиция`,missionType:`Тип миссии`,missionInfo:`Информация о миссии`,fuelConsumption:`Расход топлива`,flightTime:`Время полета`,attackMission:`Атака`,transport:`Транспорт`,colonize:`Колонизация`,spy:`Разведка`,deploy:`Размещение`,recycle:`Переработка`,transportResources:`Транспортировка ресурсов`,totalCargoCapacity:`Общая грузоподъёмность`,used:`Использовано`,noFlightMissions:`Нет полетных миссий`,outbound:`Туда`,returning:`Возвращение`,fleetComposition:`Состав флота`,carryingResources:`Перевозимые ресурсы`,arrivalTime:`Время прибытия`,returnTime:`Время возврата`,recallFleet:`Отозвать флот`,sendFailed:`Отправка не удалась`,sendFailedMessage:`Пожалуйста, проверьте количество флота, наличие топлива или ограничения грузоподъёмности.`,recallFailed:`Отзыв не удался`,recallFailedMessage:`Эта миссия не может быть отозвана.`,unknownPlanet:`Неизвестная планета`,fleetMissionSlots:`Слоты миссий флота`,noShipsSelected:`Корабли не выбраны`,cannotSendToOwnPlanet:`Невозможно отправить флот на свою планету`,cargoExceedsCapacity:`Груз превышает вместимость`,noColonyShip:`Для колонизационной миссии требуется колониальный корабль`,noDebrisAtTarget:`Нет поля обломков по целевым координатам или поле обломков пусто`,noDeathstar:`Для миссии разрушения требуется Звезда Смерти`,giftMode:`Режим подарка`,giftModeDescription:`Отправить ресурсы в подарок`,estimatedReputationGain:`Ожидаемый прирост репутации`},officersView:{title:`Офицеры`,activated:`Активирован`,inactive:`Неактивен`,activeStatus:`Статус активации`,expirationTime:`Время истечения`,remainingTime:`Оставшееся время`,recruitCost:`Стоимость найма`,days:`дн.`,benefitsBonus:`Бонусы`,resourceProduction:`Производство ресурсов`,darkMatterProduction:`Производство тёмной материи`,energyProduction:`Производство энергии`,buildingSpeed:`Скорость строительства`,researchSpeed:`Скорость исследований`,fleetSpeed:`Скорость флота`,fuelConsumption:`Расход топлива`,defense:`Защита`,storageCapacity:`Вместимость хранилища`,buildQueue:`Очередь строительства`,fleetSlots:`Слоты флота`,hire:`Нанять`,renew:`Продлить`,dismiss:`Уволить`,hireTitle:`Нанять офицера`,hireMessage:`Вы уверены, что хотите нанять {name}? Действует 7 дней.`,renewTitle:`Продлить офицера`,renewMessage:`Вы уверены, что хотите продлить {name} на 7 дней?`,dismissTitle:`Уволить офицера`,dismissMessage:`Вы уверены, что хотите уволить {name}? Средства не возвращаются.`,hireFailed:`Найм не удался`,renewFailed:`Продление не удалось`,insufficientResources:`Недостаточно ресурсов!`},galaxyView:{title:`Галактика`,selectCoordinates:`Выбрать координаты`,galaxy:`Галактика`,diplomacy:`Diplomacy`,selectGalaxy:`Выбрать галактику`,system:`Система`,selectSystem:`Выбрать систему`,view:`Показать`,myPlanet:`Моя планета`,myPlanets:`Просмотр моих систем`,npcPlanets:`Планеты NPC`,selectPlanetToView:`Выберите планету для просмотра её системы`,totalPositions:`Всего 10 позиций планет`,mine:`Моя`,hostile:`Враждебная`,emptySlot:`Пусто - можно колонизировать`,scout:`Разведка`,attack:`Атака`,missileAttack:`Ракетная атака`,colonize:`Колонизация`,switch:`Переключить`,recycle:`Переработка`,debrisField:`Поле обломков`,scoutPlanetTitle:`Разведать планету`,attackPlanetTitle:`Атаковать планету`,missileAttackTitle:`Ракетная атака`,colonizePlanetTitle:`Колонизировать планету`,recyclePlanetTitle:`Переработать обломки`,scoutPlanetMessage:`Вы уверены, что хотите отправить шпионские зонды для разведки планеты [{coordinates}]? - -Перейдите на страницу флота, чтобы выбрать корабли и отправить.`,attackPlanetMessage:`Вы уверены, что хотите атаковать планету [{coordinates}]? - -Перейдите на страницу флота, чтобы выбрать корабли и отправить.`,missileAttackMessage:`Запустить межпланетные ракеты по планете [{coordinates}]`,missileCount:`Количество ракет`,availableMissiles:`Доступно ракет`,missileRange:`Дальность ракет`,systems:`систем`,distance:`Расстояние`,flightTime:`Время полета`,launchMissile:`Запустить`,cancel:`Отмена`,colonizePlanetMessage:`Вы уверены, что хотите колонизировать позицию [{coordinates}]? - -Перейдите на страницу флота, чтобы отправить колонизационный корабль.`,recyclePlanetMessage:`Вы уверены, что хотите переработать обломки в позиции [{coordinates}]? - -Перейдите на страницу флота, чтобы отправить переработчики.`,sendGift:`Отправить подарок`,debris:`Обломки`,giftPlanetTitle:`Отправить подарок`,giftPlanetMessage:`Вы уверены, что хотите отправить ресурсы в подарок планете [{coordinates}]? - -Перейдите на страницу флота, чтобы выбрать транспортные корабли и загрузить ресурсы.`},messagesView:{title:`Сообщения`,battles:`Битвы`,spy:`Разведка`,npc:`NPC`,battleReports:`Отчёты о боях`,spyReports:`Отчёты разведки`,noBattleReports:`Нет отчётов о боях`,noSpyReports:`Нет отчётов разведки`,battleReport:`Отчёт о бое`,spyReport:`Отчёт разведки`,victory:`Победа`,defeat:`Поражение`,draw:`Ничья`,attackerFleet:`Флот нападающего`,defenderFleet:`Флот защитника`,defenderDefense:`Оборона защитника`,attackerLosses:`Потери нападающего`,defenderLosses:`Потери защитника`,noLosses:`Без потерь`,plunder:`Добыча`,debrisField:`Поле обломков`,resources:`Ресурсы`,fleet:`Флот`,defense:`Оборона`,buildings:`Здания`,unread:`Непрочитано`,targetPlanet:`Целевая планета`,attackerRemaining:`Осталось у нападающего`,defenderRemaining:`Осталось у защитника`,moonChance:`Шанс появления луны`,showRoundDetails:`Показать детали раундов`,hideRoundDetails:`Скрыть детали раундов`,round:`Раунд {round}`,attackerRemainingPower:`Оставшаяся мощь нападающего`,defenderRemainingPower:`Оставшаяся мощь защитника`,spied:`Шпионаж`,spiedNotification:`Уведомление о шпионаже`,noSpiedNotifications:`Нет уведомлений о шпионаже`,detected:`Обнаружено`,undetected:`Не обнаружено`,missions:`Миссии`,noMissionReports:`Нет отчётов о миссиях`,success:`Успех`,failed:`Неудача`,npcActivity:`Активность NPC`,noNPCActivity:`Нет уведомлений об активности NPC`,npcRecycleActivity:`NPC перерабатывает обломки`,gifts:`Подарки`,giftRejected:`Отклонено`,noGiftNotifications:`Нет уведомлений о подарках`,noGiftRejected:`Нет отклоненных подарков`,giftFrom:`Подарок от {npcName}`,giftRejectedBy:`{npcName} отклонил подарок`,giftResources:`Ресурсы подарка`,rejectedResources:`Отклоненные ресурсы`,expectedReputation:`Ожидаемая репутация`,currentReputation:`Текущая репутация`,acceptGift:`Принять`,rejectGift:`Отклонить`,rejectionReason:{hostile:`Они враждебны и не принимают подарки`,neutral_distrust:`Они вам не доверяют`,polite_decline:`Вежливо отказались`}},missionReports:{transportSuccess:`Миссия транспортировки успешно завершена`,transportFailed:`Миссия транспортировки провалена`,colonizeSuccess:`Миссия колонизации успешна, новая планета создана`,colonizeFailed:`Миссия колонизации провалена`,deploySuccess:`Миссия размещения успешно завершена`,deployFailed:`Миссия размещения провалена`,recycleSuccess:`Миссия переработки успешно завершена`,recycleFailed:`Миссия переработки провалена, нет обломков в целевой позиции`,destroySuccess:`Миссия уничтожения планеты успешно выполнена`,destroyFailed:`Миссия уничтожения планеты провалена`},simulatorView:{title:`Симулятор боя`,attacker:`Нападающий`,defender:`Защитник`,attackerConfig:`Настройки нападающего`,attackerConfigDesc:`Настроить флот и уровни технологий нападающего`,defenderConfig:`Настройки защитника`,defenderConfigDesc:`Настроить флот, оборону и уровни технологий защитника`,fleet:`Флот`,defenseStructures:`Оборонительные сооружения`,techLevels:`Уровни технологий`,weapon:`Оружие`,shield:`Щит`,armor:`Броня`,defenderResources:`Ресурсы защитника (для расчёта добычи)`,startSimulation:`Начать симуляцию`,reset:`Сбросить`,battleResult:`Результат боя`,attackerVictory:`Победа нападающего`,defenderVictory:`Победа защитника`,draw:`Ничья`,afterRounds:`После {rounds} раундов`,attackerLosses:`Потери нападающего`,defenderLosses:`Потери защитника`,noLosses:`Без потерь`,attackerRemaining:`Осталось у нападающего`,defenderRemaining:`Осталось у защитника`,allDestroyed:`Всё уничтожено`,plunderableResources:`Доступная добыча`,debrisField:`Поле обломков`,moonChance:`Шанс появления луны`,showRoundDetails:`Показать детали раундов`,hideRoundDetails:`Скрыть детали раундов`,round:`Раунд {round}`,attackerRemainingPower:`Оставшаяся мощь нападающего`,defenderRemainingPower:`Оставшаяся мощь защитника`},settings:{dataManagement:`Управление данными`,dataManagementDesc:`Экспорт, импорт или очистка игровых данных`,exportData:`Экспорт данных`,exportDataDesc:`Экспортировать прогресс игры в JSON файл`,export:`Экспорт`,exporting:`Экспорт...`,exportSuccess:`Экспорт успешен`,exportFailed:`Экспорт не удался, попробуйте еще раз`,importData:`Импорт данных`,importDataDesc:`Восстановить прогресс игры из JSON файла`,selectFile:`Выбрать файл`,importSuccess:`Импорт успешен`,importConfirmTitle:`Подтвердить импорт`,importConfirmMessage:`Импорт перезапишет текущий прогресс игры. Это действие невозможно отменить. Продолжить?`,importFailed:`Импорт не удался, проверьте формат файла`,clearData:`Очистить данные`,clearDataDesc:`Удалить все игровые данные и сбросить`,clear:`Очистить`,clearConfirmTitle:`Подтвердить очистку данных`,clearConfirmMessage:`Все игровые данные будут удалены и игра начнется заново. Это действие невозможно отменить. Продолжить?`,gameSettings:`Настройки игры`,gameSettingsDesc:`Настроить параметры и предпочтения игры`,gamePause:`Пауза игры`,gamePauseDesc:`Приостановить или возобновить игровое время и производство ресурсов`,pause:`Пауза`,resume:`Возобновить`,gamePaused:`Игра приостановлена`,gameResumed:`Игра возобновлена`,playerName:`Имя игрока`,gameSpeed:`Скорость производства ресурсов`,gameSpeedDesc:`Текущий множитель скорости производства ресурсов`,speedChanged:`Скорость производства ресурсов изменена на {speed}x`,speedReset:`Скорость производства ресурсов сброшена на 1x`,reset:`Сбросить`,about:`О программе`,version:`Версия`,latestVersion:`Последняя версия`,checkUpdate:`Проверить обновление`,checking:`Проверка...`,newVersionAvailable:`Доступна новая версия {version}`,upToDate:`Уже актуальная версия`,checkUpdateCooldown:`Пожалуйста, попробуйте позже (5 минут перезарядки)`,checkUpdateFailed:`Не удалось проверить обновления, проверьте подключение к Интернету`,viewUpdate:`Просмотреть обновление`,updateAvailable:`Доступна новая версия. Нажмите, чтобы просмотреть примечания к выпуску.`,download:`Скачать`,goToDownload:`Перейти к загрузке`,buildDate:`Дата сборки`,community:`Сообщество`,github:`Репозиторий GitHub`,qqGroup:`Группа QQ`},gmView:{title:`Панель управления GM`,adminOnly:`Только для администратора`,selectPlanet:`Выбрать планету`,choosePlanet:`Выберите планету`,resources:`Ресурсы`,buildings:`Здания`,research:`Исследования`,ships:`Корабли`,defense:`Оборона`,officers:`Офицеры`,modifyResources:`Изменить ресурсы`,resourcesDesc:`Быстрое изменение ресурсов планеты`,modifyBuildings:`Изменить здания`,buildingsDesc:`Быстрая установка уровней зданий`,modifyResearch:`Изменить исследования`,researchDesc:`Быстрая установка уровней исследований`,modifyShips:`Изменить корабли`,shipsDesc:`Быстрая установка количества кораблей`,modifyDefense:`Изменить оборону`,defenseDesc:`Быстрая установка количества обороны`,modifyOfficers:`Изменить офицеров`,officersDesc:`Быстрая установка времени истечения офицеров`,days:`д`,npcTesting:`Тестирование NPC`,npcTestingDesc:`Тестирование разведки и атак NPC`,selectNPC:`Выбрать NPC`,chooseNPC:`Выберите NPC`,targetPlanet:`Целевая планета`,chooseTarget:`Выберите целевую планету`,testSpy:`Тест разведки`,testAttack:`Тест атаки`,testSpyAndAttack:`Тест разведки и атаки`,testSpyMessage:`Нажмите подтвердить, чтобы ускорить миссию разведки`,testAttackMessage:`Нажмите подтвердить, чтобы ускорить миссию атаки`,testSpyAndAttackMessage:`Нажмите подтвердить, чтобы ускорить миссии`,initializeFleet:`Инициализировать флот NPC`,accelerateMissions:`Ускорить все миссии (5с)`,selectNPCFirst:`Сначала выберите NPC`,npcNoProbes:`У NPC нет шпионских зондов`,npcNoSpyReport:`NPC нужно сначала разведать`,npcMissionFailed:`Не удалось создать миссию`,npcNoPlanets:`У NPC нет планет`,npcWillSpyIn5s:`{npcName} проведет разведку через 5 секунд`,npcWillAttackIn5s:`{npcName} атакует через 5 секунд`,npcWillSpyAndAttack:`{npcName} проведет разведку через 5с и атакует через 10с`,acceleratedMissions:`Ускорено {count} миссий до 5 секунд`,npcFleetInitialized:`Флот {npcName} инициализирован`,npcFleetDetails:`100 шпионских зондов -500 легких истребителей -300 тяжелых истребителей -200 крейсеров -100 линкоров -50 бомбардировщиков -30 эсминцев -20 линейных крейсеров`,dangerZone:`Опасная зона`,dangerZoneDesc:`Следующие операции необратимы`,resetGame:`Сбросить игру`,resetGameConfirm:`Вы уверены, что хотите сбросить игру? Все данные будут удалены!`},alerts:{npcSpyIncoming:`Приближается шпионский зонд NPC`,npcAttackIncoming:`Атака флота NPC приближается!`,npcFleetIncoming:`Приближается флот NPC`,ships:`кораблей`,spiedBy:`Разведан`,attackedBy:`Атакован`,detectionSuccess:`Разведка обнаружена`,detectionFailed:`Разведка не обнаружена`,npcSpiedYourPlanet:`NPC разведал вашу планету`,npcAttackedYourPlanet:`NPC атаковал вашу планету`},diplomacy:{title:`Дипломатия`,description:`Управление дипломатическими отношениями с NPC`,tabs:{all:`Все`,friendly:`Дружественные`,neutral:`Нейтральные`,hostile:`Враждебные`},noNpcs:`Нет NPC`,noFriendlyNpcs:`Нет дружественных NPC`,noNeutralNpcs:`Нет нейтральных NPC`,noHostileNpcs:`Нет враждебных NPC`,recentEvents:`Недавние события`,recentEventsDescription:`Журнал последних дипломатических действий`,ago:`назад`,status:{friendly:`Дружественный`,neutral:`Нейтральный`,hostile:`Враждебный`},planets:`планет`,allies:`союзников`,reputation:`Репутация`,alliedWith:`В союзе с`,more:`еще`,actions:{gift:`Отправить подарок`,viewPlanets:`Посмотреть планеты`},lastEvent:`Последнее событие`,events:{gift:`Подарок отправлен`,attack:`Атака`,missileAttack:`Ракетная атака`,allyAttacked:`Союзник атакован`,spy:`Шпионаж`,stealDebris:`Обломки украдены`},reports:{giftedResources:`Подарено {metal}M {crystal}C {deuterium}D`,receivedGiftFromPlayer:`Получен подарок от игрока`,giftedToNpc:`Вы подарили ресурсы {npcName}. Репутация +{reputation}`,rejectedPlayerGift:`Отклонен подарок игрока`,npcRejectedGift:`{npcName} отклонил ваш подарок. Репутация {reputation}`,attackedNpc:`Атакован {npcName}`,wasAttackedByPlayer:`Был атакован игроком`,youAttackedNpc:`Вы атаковали {npcName}`,playerAttackedAlly:`Игрок атаковал союзника {allyName}`,allyDispleased:`{allyName} недоволен тем, что вы атаковали их союзника {targetName}`,wasSpiedByPlayer:`Был разведан игроком (обнаружен: {detected})`,spyDetected:`Ваш шпионаж был обнаружен {npcName}`,stoleDebrisFromTerritory:`Украдены обломки с территории {npcName}`,playerStoleDebris:`Игрок украл обломки с территории`,recycledDebrisNearNpc:`Вы переработали обломки возле планеты {npcName}. Они недовольны.`,giftedResourcesToPlayer:`Подарены ресурсы игроку`,receivedGiftFromNpc:`Получен подарок от {npcName}`,acceptedGiftFromNpc:`Вы приняли подарок от {npcName}: {metal}M {crystal}C {deuterium}D`,playerRejectedGift:`Игрок отклонил подарок`,rejectedGiftFromNpc:`Вы отклонили подарок от {npcName}. Репутация {reputation}`}},pagination:{previous:`Предыдущая`,next:`Следующая`,first:`Первая`,last:`Последняя`,page:`Страница {page}`},notFound:{title:`Страница не найдена`,description:`Извините, страница, которую вы ищете, не существует`,goHome:`На главную`}},a={common:{confirm:`확인`,cancel:`취소`,delete:`삭제`,edit:`편집`,save:`저장`,close:`닫기`,back:`돌아가기`,next:`다음`,previous:`이전`,submit:`제출`,reset:`초기화`,search:`검색`,filter:`필터`,loading:`로딩 중...`,noData:`데이터 없음`,error:`오류`,success:`성공`,warning:`경고`,info:`정보`,resourceType:`자원 유형`,playerName:`사령관`,timeHour:`시간`,timeMinute:`분`,timeSecond:`초`,featureLocked:`기능 잠김`,unlockRequired:`건물 필요`,requiredBuilding:`필요한 건물`,currentLevel:`현재 레벨`,goToBuildings:`건물로 이동`,locked:`잠김`,viewRequirements:`요구사항 보기`,requirementsNotMet:`요구사항 미충족`,current:`현재`,level:`레벨`,gmModeActivated:`GM 모드가 활성화되었습니다! 탐색 메뉴를 확인하세요.`},errors:{requirementsNotMet:`전제 조건 미충족`,insufficientResources:`자원 부족`,insufficientFleetStorage:`함대 저장소 부족`,shieldDomeLimit:`실드 돔 한도 도달`,missileSiloLimit:`미사일 사일로 용량 초과`,insufficientMissiles:`행성간 미사일 부족`,invalidMissileCount:`잘못된 미사일 수량`,targetOutOfRange:`목표가 사정거리 밖`,cannotAttackOwnPlanet:`자신의 행성 공격 불가`,fleetMissionsFull:`함대 임무 슬롯 가득 참`,insufficientFleet:`함대 부족`,insufficientFuel:`연료 부족`,planetOnly:`이 건물은 행성에서만 지을 수 있습니다`,moonOnly:`이 건물은 위성에서만 지을 수 있습니다`,buildQueueFull:`건설 대기열 가득 참`,insufficientSpace:`공간 부족`,buildingLevelZero:`건물 레벨이 0이므로 철거할 수 없습니다`,researchQueueFull:`연구 대기열 가득 참`,moonExists:`위성이 이미 존재합니다`,insufficientDebris:`잔해장 부족`},nav:{overview:`개요`,buildings:`건물`,research:`연구`,shipyard:`조선소`,defense:`방어`,fleet:`함대`,officers:`장교`,simulator:`시뮬레이터`,galaxy:`은하계`,diplomacy:`Diplomacy`,messages:`메시지`,settings:`설정`,gm:`GM`},sidebar:{language:`언어`,lightMode:`라이트 모드`,darkMode:`다크 모드`,collapse:`메뉴 접기`,expand:`메뉴 펼치기`},resources:{metal:`금속`,crystal:`크리스탈`,deuterium:`중수소`,darkMatter:`암흑 물질`,energy:`에너지`,production:`생산량`,consumption:`소비량`,capacity:`용량`,current:`현재 저장량`,max:`최대 용량`,perHour:`시간`,perMinute:`분`,hour:`시간`,noEnergy:`에너지 부족`},planet:{planet:`행성`,moon:`위성`,colony:`식민지`,position:`위치`,coordinates:`좌표`,switchToMoon:`위성 보기`,backToPlanet:`모행성으로 돌아가기`,switchPlanet:`행성 전환`,currentPlanet:`현재 행성`,fields:`필드`,temperature:`온도`,homePlanet:`모행성`,planetPrefix:`행성`,moonSuffix:`의 위성`,colonyPrefix:`식민지`},player:{points:`총 점수`},buildings:{metalMine:`금속 광산`,crystalMine:`크리스탈 광산`,deuteriumSynthesizer:`중수소 합성기`,solarPlant:`태양광 발전소`,fusionReactor:`핵융합 반응로`,roboticsFactory:`로봇 공장`,naniteFactory:`나노 공장`,shipyard:`조선소`,researchLab:`연구소`,metalStorage:`금속 창고`,crystalStorage:`크리스탈 창고`,deuteriumTank:`중수소 탱크`,darkMatterCollector:`암흑 물질 수집기`,darkMatterTank:`암흑 물질 탱크`,missileSilo:`미사일 발사대`,terraformer:`지형 변환기`,lunarBase:`달 기지`,sensorPhalanx:`센서 팔랑크스`,jumpGate:`점프 게이트`,planetDestroyerFactory:`행성 파괴 공장`,buildTime:`건설 시간`,production:`생산량`,consumption:`소비`,totalCost:`총 비용`,totalPoints:`총 점수`,levelRange:`레벨 범위`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,buildQueueBonus:`건설 대기열`,spaceBonus:`공간 보너스`,buildSpeedBonus:`건설 속도 보너스`,researchSpeedBonus:`연구 속도 보너스`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},buildingDescriptions:{metalMine:`금속 자원 채굴`,crystalMine:`크리스탈 자원 채굴`,deuteriumSynthesizer:`중수소 자원 합성`,solarPlant:`에너지 제공`,fusionReactor:`중수소를 사용하여 대량의 에너지 생산`,roboticsFactory:`건설 속도 향상`,naniteFactory:`건설 대기열 수 증가, 레벨당 +1 (최대 10레벨)`,shipyard:`함선 건조`,researchLab:`기술 연구`,metalStorage:`금속 저장 용량 증가`,crystalStorage:`크리스탈 저장 용량 증가`,deuteriumTank:`중수소 저장 용량 증가`,darkMatterCollector:`희귀한 암흑 물질 자원 수집`,darkMatterTank:`암흑 물질 저장 용량 증가`,missileSilo:`미사일을 저장 및 발사, 레벨당 10발`,terraformer:`행성 지형 개조, 레벨당 가용 공간 30 증가`,lunarBase:`달 가용 공간 증가, 레벨당 +30 공간`,sensorPhalanx:`주변 행성계의 함대 활동 감지`,jumpGate:`다른 위성으로 함대 순간 이동`,planetDestroyerFactory:`행성을 파괴할 수 있는 궁극 병기 건조`},ships:{lightFighter:`경전투기`,heavyFighter:`중전투기`,cruiser:`순양함`,battleship:`전함`,battlecruiser:`순양전함`,bomber:`폭격기`,destroyer:`구축함`,smallCargo:`소형 수송선`,largeCargo:`대형 수송선`,colonyShip:`식민선`,recycler:`재활용선`,espionageProbe:`정찰기`,solarSatellite:`태양광 위성`,darkMatterHarvester:`암흑 물질 채취선`,deathstar:`데스스타`},shipDescriptions:{lightFighter:`기본 전투 유닛`,heavyFighter:`중장갑 전투기`,cruiser:`중형 전함, 공격과 방어 균형`,battleship:`강력한 전함`,battlecruiser:`빠르고 강력한 전투함, 전함 공격에 탁월`,bomber:`방어 시설 공격 전문 함선`,destroyer:`대형 함선 파괴 전문 헌터`,smallCargo:`소량의 자원 운송`,largeCargo:`대량의 자원 운송`,colonyShip:`새로운 행성 식민에 사용`,recycler:`잔해장 자원 수집`,espionageProbe:`적 행성 정찰`,solarSatellite:`추가 에너지 제공, 위성당 50 에너지 생성`,darkMatterHarvester:`암흑 물질 채취 전용 특수 함선`,deathstar:`행성 전체를 파괴할 수 있는 궁극 병기`},defenses:{rocketLauncher:`로켓 발사대`,lightLaser:`경량 레이저포`,heavyLaser:`중형 레이저포`,gaussCannon:`가우스 캐논`,ionCannon:`이온 캐논`,plasmaTurret:`플라즈마 포탑`,smallShieldDome:`소형 실드 돔`,largeShieldDome:`대형 실드 돔`,antiBallisticMissile:`요격 미사일`,interplanetaryMissile:`행성간 미사일`,planetaryShield:`행성 실드`},defenseDescriptions:{rocketLauncher:`기본 방어 시설`,lightLaser:`경량 에너지 무기`,heavyLaser:`중형 에너지 무기`,gaussCannon:`고속 운동 에너지 무기`,ionCannon:`실드 파괴의 이기`,plasmaTurret:`강력한 방어 시설`,smallShieldDome:`행성 전체를 보호하는 소형 실드`,largeShieldDome:`행성 전체를 보호하는 대형 실드`,antiBallisticMissile:`적 미사일 요격, 행성간 미사일 1발 요격 가능`,interplanetaryMissile:`다른 행성의 방어 시설 공격 가능`,planetaryShield:`파괴 공격으로부터 행성을 보호하는 초급 실드`},research:{researchTime:`연구 시간`,totalCost:`총 비용`,totalPoints:`총 점수`,levelRange:`레벨 범위`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},technologies:{energyTechnology:`에너지 기술`,laserTechnology:`레이저 기술`,ionTechnology:`이온 기술`,hyperspaceTechnology:`초공간 기술`,plasmaTechnology:`플라즈마 기술`,computerTechnology:`컴퓨터 기술`,espionageTechnology:`스파이 기술`,weaponsTechnology:`무기 기술`,shieldingTechnology:`실드 기술`,armourTechnology:`장갑 기술`,astrophysics:`천체물리학`,gravitonTechnology:`중력자 기술`,combustionDrive:`연소 엔진`,impulseDrive:`임펄스 엔진`,hyperspaceDrive:`초공간 엔진`,darkMatterTechnology:`암흑 물질 기술`,terraformingTechnology:`지형 변환 기술`,planetDestructionTech:`행성 파괴 기술`},technologyDescriptions:{energyTechnology:`에너지 이용 효율 향상`,laserTechnology:`레이저 무기와 방어의 기초`,ionTechnology:`이온 무기 기술`,hyperspaceTechnology:`초공간 점프 기술`,plasmaTechnology:`플라즈마 무기 기술`,computerTechnology:`연구 대기열 수 증가, 레벨당 +1 (최대 10레벨)`,espionageTechnology:`스파이 탐사기 효과 향상, 레벨당 정찰 깊이 +1`,weaponsTechnology:`함선과 방어의 공격력 레벨당 10% 증가`,shieldingTechnology:`함선과 방어의 실드 레벨당 10% 증가`,armourTechnology:`함선과 방어의 장갑 레벨당 10% 증가`,astrophysics:`레벨당 식민지 슬롯 +1, 탐험 성공률 향상`,gravitonTechnology:`중력 조작 연구, 데스스타 필요 기술`,combustionDrive:`기본 추진 기술`,impulseDrive:`중급 추진 기술`,hyperspaceDrive:`고급 추진 기술`,darkMatterTechnology:`암흑 물질의 성질과 응용 연구`,terraformingTechnology:`행성 지형 개조 기술 연구, 레벨당 모든 행성의 가용 공간 30 증가`,planetDestructionTech:`행성 전체를 파괴하는 공포의 기술 연구`},officers:{commander:`사령관`,admiral:`제독`,engineer:`엔지니어`,geologist:`지질학자`,technocrat:`기술 전문가`,darkMatterSpecialist:`암흑 물질 전문가`,resourceBonus:`자원 생산 보너스`,darkMatterBonus:`암흑 물질 생산 보너스`,energyBonus:`에너지 생산 보너스`},officerDescriptions:{commander:`건설 속도 및 관리 능력 향상`,admiral:`함대 전투력 및 속도 향상`,engineer:`에너지 및 방어력 향상`,geologist:`자원 생산량 향상`,technocrat:`연구 속도 및 정찰 능력 향상`,darkMatterSpecialist:`암흑 물질 수집 효율 향상`},queue:{buildQueue:`건설 대기열`,researchQueue:`연구 대기열`,building:`건설 중`,researching:`연구 중`,remaining:`남은 시간`,cancel:`취소`,cancelBuild:`건설 취소`,cancelResearch:`연구 취소`,confirmCancel:`취소하시겠습니까? 자원의 50%가 환불됩니다.`,level:`레벨`,gmModeActivated:``,upgradeToLevel:`레벨로 업그레이드`},overview:{title:`행성 개요`,resourceOverview:`자원 개요`,fleetInfo:`함대`,currentShips:`현재 행성의 함선 수`,productionSources:`생산 소스`,productionSourcesDesc:`상세 자원 생산 및 보너스 정보`,consumptionSources:`소비 소스`,consumptionSourcesDesc:`건물 에너지 소비 세부 정보`,totalProduction:`총 생산량`,totalConsumption:`총 소비량`,noConsumption:`에너지 소비 없음`},buildingsView:{title:`건물`,usedSpace:`사용된 공간`,spaceUsage:`공간 사용`,level:`레벨`,gmModeActivated:``,upgradeCost:`업그레이드 비용`,buildTime:`건설 시간`,upgrade:`업그레이드`,maxLevelReached:`최대 레벨 도달`,requirementsNotMet:`요구 사항 미충족`,upgradeFailed:`업그레이드 실패`,upgradeFailedMessage:`자원이 충분한지, 공간이 충분한지, 또는 다른 건설 작업이 있는지 확인하세요.`,demolish:`철거`,demolishRefund:`철거 환불`,demolishFailed:`철거 실패`,demolishFailedMessage:`이 건물을 철거할 수 없습니다. 건설 대기열이 가득 찼거나 건물 레벨이 0인지 확인하세요.`,confirmDemolish:`철거 확인`,confirmDemolishMessage:`다음 건물을 철거하시겠습니까?`},researchView:{title:`연구`,researchCost:`연구 비용`,research:`연구`,maxLevelReached:`최대 레벨 도달`,researchFailed:`연구 실패`,researchFailedMessage:`자원이 충분한지, 전제 조건이 충족되었는지, 또는 다른 연구 작업이 있는지 확인하세요.`},shipyard:{attack:`공격력`,missileAttack:`미사일 공격`,shield:`쉴드`,armor:`장갑`,speed:`속도`,cargoCapacity:`화물 용량`,fuelConsumption:`연료 소비`,buildCost:`건설 비용`,buildTime:`건설 시간`,perUnit:`단위당`,batchCalculator:`일괄 계산기`,quantity:`수량`,totalCost:`총 비용`,totalTime:`총 시간`},shipyardView:{title:`조선소`,fleetStorage:`함대 저장소`,attack:`공격력`,missileAttack:`미사일 공격`,shield:`실드`,speed:`속도`,cargoCapacity:`적재량`,unitCost:`단위 비용`,buildQuantity:`건조 수량`,totalCost:`총 비용`,build:`건조`,inputError:`입력 오류`,inputErrorMessage:`건조 수량을 입력하세요!`,buildFailed:`건조 실패`,buildFailedMessage:`자원이 충분한지 또는 전제 조건이 충족되었는지 확인하세요.`},defense:{attack:`공격력`,missileAttack:`미사일 공격`,shield:`쉴드`,armor:`장갑`,buildCost:`건설 비용`,buildTime:`건설 시간`,perUnit:`단위당`,batchCalculator:`일괄 계산기`,quantity:`수량`,totalCost:`총 비용`,totalTime:`총 시간`},defenseView:{title:`방어 시설`,attack:`공격력`,missileAttack:`미사일 공격`,shield:`실드`,armor:`장갑`,buildTime:`건설 시간`,seconds:`초`,unitCost:`단위 비용`,buildQuantity:`건조 수량`,totalCost:`총 비용`,build:`건조`,shieldDomeBuilt:`실드 돔이 이미 건설됨`,missileCapacity:`미사일 용량`,inputError:`입력 오류`,inputErrorMessage:`건조 수량을 입력하세요!`,buildFailed:`건조 실패`,buildFailedMessage:`자원이 충분한지 또는 전제 조건이 충족되었는지 확인하세요. 실드 돔은 하나만 건설할 수 있습니다.`},fleetView:{title:`함대 관리`,fleetOverview:`함대 개요`,sendFleet:`함대 파견`,flightMissions:`비행 임무`,currentPlanetFleet:`현재 행성 함대`,attack:`공격`,missileAttack:`미사일 공격`,shield:`실드`,armor:`장갑`,speed:`속도`,cargo:`화물`,selectFleet:`함대 선택`,selectFleetDescription:`파견할 함선 수 선택`,available:`사용 가능`,all:`전체`,targetCoordinates:`목표 좌표`,galaxy:`은하계`,diplomacy:`Diplomacy`,system:`행성계`,position:`위치`,missionType:`임무 유형`,missionInfo:`임무 정보`,fuelConsumption:`연료 소비`,flightTime:`비행 시간`,attackMission:`공격`,transport:`수송`,colonize:`식민`,spy:`정찰`,deploy:`배치`,recycle:`회수`,transportResources:`자원 수송`,totalCargoCapacity:`총 적재량`,used:`사용됨`,noFlightMissions:`비행 임무 없음`,outbound:`이동 중`,returning:`귀환 중`,fleetComposition:`함대 구성`,carryingResources:`운반 자원`,arrivalTime:`도착 시간`,returnTime:`귀환 시간`,recallFleet:`함대 소환`,sendFailed:`파견 실패`,sendFailedMessage:`함대 수, 연료 충분 여부 또는 적재량 한계를 확인하세요.`,recallFailed:`소환 실패`,recallFailedMessage:`이 임무는 소환할 수 없습니다.`,unknownPlanet:`알 수 없는 행성`,fleetMissionSlots:`함대 임무 슬롯`,noShipsSelected:`선택된 함선 없음`,cannotSendToOwnPlanet:`자신의 행성으로 함대를 파견할 수 없습니다`,cargoExceedsCapacity:`적재량이 용량을 초과합니다`,noColonyShip:`식민 임무를 위해 식민선이 필요합니다`,noDebrisAtTarget:`대상 좌표에 잔해장이 없거나 잔해장이 비어 있습니다`,noDeathstar:`파괴 임무를 위해 데스스타가 필요합니다`,giftMode:`선물 모드`,giftModeDescription:`자원을 선물로 보내기`,estimatedReputationGain:`예상 평판 획득`},officersView:{title:`장교`,activated:`활성화됨`,inactive:`비활성`,activeStatus:`활성 상태`,expirationTime:`만료 시간`,remainingTime:`남은 시간`,recruitCost:`모집 비용`,days:`일`,benefitsBonus:`효과 보너스`,resourceProduction:`자원 생산량`,darkMatterProduction:`암흑 물질 생산량`,energyProduction:`에너지 생산량`,buildingSpeed:`건설 속도`,researchSpeed:`연구 속도`,fleetSpeed:`함대 속도`,fuelConsumption:`연료 소비`,defense:`방어력`,storageCapacity:`저장 용량`,buildQueue:`건설 대기열`,fleetSlots:`함대 슬롯`,hire:`고용`,renew:`갱신`,dismiss:`해고`,hireTitle:`장교 고용`,hireMessage:`{name}을(를) 고용하시겠습니까? 유효 기간은 7일입니다.`,renewTitle:`장교 갱신`,renewMessage:`{name}을(를) 7일간 갱신하시겠습니까?`,dismissTitle:`장교 해고`,dismissMessage:`{name}을(를) 해고하시겠습니까? 비용은 환불되지 않습니다.`,hireFailed:`고용 실패`,renewFailed:`갱신 실패`,insufficientResources:`자원 부족!`},galaxyView:{title:`은하계`,selectCoordinates:`좌표 선택`,galaxy:`은하계`,diplomacy:`Diplomacy`,selectGalaxy:`은하계 선택`,system:`행성계`,selectSystem:`행성계 선택`,view:`보기`,myPlanet:`내 행성`,myPlanets:`내 행성계 보기`,npcPlanets:`NPC 행성들`,selectPlanetToView:`행성을 선택하여 행성계 보기`,totalPositions:`총 10개 행성 위치`,mine:`내 것`,hostile:`적대`,emptySlot:`빈 자리 - 식민 가능`,scout:`정찰`,attack:`공격`,missileAttack:`미사일 공격`,colonize:`식민`,switch:`전환`,recycle:`회수`,debrisField:`잔해 필드`,scoutPlanetTitle:`행성 정찰`,attackPlanetTitle:`행성 공격`,missileAttackTitle:`미사일 공격`,colonizePlanetTitle:`행성 식민`,recyclePlanetTitle:`잔해 회수`,scoutPlanetMessage:`행성 [{coordinates}]을(를) 정찰하기 위해 정찰기를 보내시겠습니까? - -함대 페이지로 이동하여 함선을 선택하고 파견하세요.`,attackPlanetMessage:`행성 [{coordinates}]을(를) 공격하시겠습니까? - -함대 페이지로 이동하여 함선을 선택하고 파견하세요.`,missileAttackMessage:`행성 [{coordinates}]에 행성간 미사일 발사`,missileCount:`미사일 수량`,availableMissiles:`사용 가능한 미사일`,missileRange:`미사일 사정거리`,systems:`시스템`,distance:`거리`,flightTime:`비행 시간`,launchMissile:`발사`,cancel:`취소`,colonizePlanetMessage:`위치 [{coordinates}]을(를) 식민하시겠습니까? - -함대 페이지로 이동하여 식민선을 파견하세요.`,recyclePlanetMessage:`위치 [{coordinates}]의 잔해를 회수하시겠습니까? - -함대 페이지로 이동하여 회수선을 파견하세요.`,sendGift:`선물 보내기`,debris:`잔해`,giftPlanetTitle:`선물 보내기`,giftPlanetMessage:`행성 [{coordinates}]에 자원을 선물로 보내시겠습니까? - -함대 페이지로 이동하여 수송선을 선택하고 자원을 적재하세요.`},messagesView:{title:`메시지 센터`,battles:`전투`,spy:`정찰`,npc:`NPC`,battleReports:`전투 보고서`,spyReports:`정찰 보고서`,noBattleReports:`전투 보고서 없음`,noSpyReports:`정찰 보고서 없음`,battleReport:`전투 보고서`,spyReport:`정찰 보고서`,victory:`승리`,defeat:`패배`,draw:`무승부`,attackerFleet:`공격자 함대`,defenderFleet:`방어자 함대`,defenderDefense:`방어자 방어`,attackerLosses:`공격자 손실`,defenderLosses:`방어자 손실`,noLosses:`손실 없음`,plunder:`약탈 자원`,debrisField:`잔해장`,resources:`자원`,fleet:`함대`,defense:`방어`,buildings:`건물`,unread:`읽지 않음`,targetPlanet:`목표 행성`,attackerRemaining:`공격자 잔여`,defenderRemaining:`방어자 잔여`,moonChance:`위성 생성 확률`,showRoundDetails:`라운드 상세 표시`,hideRoundDetails:`라운드 상세 숨기기`,round:`제{round}라운드`,attackerRemainingPower:`공격자 잔여 화력`,defenderRemainingPower:`방어자 잔여 화력`,spied:`정찰당함`,spiedNotification:`정찰 알림`,noSpiedNotifications:`정찰 알림 없음`,detected:`발견됨`,undetected:`미발견`,missions:`임무`,noMissionReports:`임무 보고서 없음`,success:`성공`,failed:`실패`,npcActivity:`NPC 활동`,noNPCActivity:`NPC 활동 알림 없음`,npcRecycleActivity:`NPC가 잔해 회수`,gifts:`선물`,giftRejected:`거부됨`,noGiftNotifications:`선물 알림 없음`,noGiftRejected:`거부된 기록 없음`,giftFrom:`{npcName}의 선물`,giftRejectedBy:`{npcName}가 선물을 거부했습니다`,giftResources:`선물 자원`,rejectedResources:`거부된 자원`,expectedReputation:`예상 평판`,currentReputation:`현재 평판`,acceptGift:`수락`,rejectGift:`거부`,rejectionReason:{hostile:`상대방이 적대적이어서 선물을 받지 않습니다`,neutral_distrust:`상대방이 당신을 신뢰하지 않습니다`,polite_decline:`정중하게 거절했습니다`}},missionReports:{transportSuccess:`수송 임무가 성공적으로 완료되었습니다`,transportFailed:`수송 임무 실패`,colonizeSuccess:`식민 임무 성공, 새로운 행성이 건설되었습니다`,colonizeFailed:`식민 임무 실패`,deploySuccess:`배치 임무가 성공적으로 완료되었습니다`,deployFailed:`배치 임무 실패`,recycleSuccess:`회수 임무가 성공적으로 완료되었습니다`,recycleFailed:`회수 임무 실패, 목표 위치에 잔해가 없습니다`,destroySuccess:`행성 파괴 임무가 성공적으로 실행되었습니다`,destroyFailed:`행성 파괴 임무 실패`},simulatorView:{title:`전투 시뮬레이터`,attacker:`공격자`,defender:`방어자`,attackerConfig:`공격자 설정`,attackerConfigDesc:`공격자의 함대와 기술 레벨 설정`,defenderConfig:`방어자 설정`,defenderConfigDesc:`방어자의 함대, 방어 및 기술 레벨 설정`,fleet:`함대`,defenseStructures:`방어 시설`,techLevels:`기술 레벨`,weapon:`무기`,shield:`실드`,armor:`장갑`,defenderResources:`방어자 자원 (약탈 계산용)`,startSimulation:`시뮬레이션 시작`,reset:`초기화`,battleResult:`전투 결과`,attackerVictory:`공격자 승리`,defenderVictory:`방어자 승리`,draw:`무승부`,afterRounds:`{rounds}회 전투 후`,attackerLosses:`공격자 손실`,defenderLosses:`방어자 손실`,noLosses:`손실 없음`,attackerRemaining:`공격자 잔여`,defenderRemaining:`방어자 잔여`,allDestroyed:`모두 파괴됨`,plunderableResources:`약탈 가능 자원`,debrisField:`잔해장`,moonChance:`위성 생성 확률`,showRoundDetails:`라운드 상세 표시`,hideRoundDetails:`라운드 상세 숨기기`,round:`제 {round} 라운드`,attackerRemainingPower:`공격자 잔여 화력`,defenderRemainingPower:`방어자 잔여 화력`},settings:{dataManagement:`데이터 관리`,dataManagementDesc:`게임 데이터 내보내기, 가져오기 또는 지우기`,exportData:`데이터 내보내기`,exportDataDesc:`게임 진행 상황을 JSON 파일로 내보내기`,export:`내보내기`,exporting:`내보내는 중...`,exportSuccess:`내보내기 성공`,exportFailed:`내보내기 실패, 다시 시도해주세요`,importData:`데이터 가져오기`,importDataDesc:`JSON 파일에서 게임 진행 상황 복원`,selectFile:`파일 선택`,importSuccess:`가져오기 성공`,importConfirmTitle:`가져오기 확인`,importConfirmMessage:`가져오기를 하면 현재 게임 진행 상황이 덮어쓰기됩니다. 이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?`,importFailed:`가져오기 실패, 파일 형식을 확인해주세요`,clearData:`데이터 지우기`,clearDataDesc:`모든 게임 데이터 삭제 및 초기화`,clear:`지우기`,clearConfirmTitle:`데이터 지우기 확인`,clearConfirmMessage:`모든 게임 데이터가 삭제되고 처음부터 시작됩니다. 이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?`,gameSettings:`게임 설정`,gameSettingsDesc:`게임 매개변수 및 설정 조정`,gamePause:`게임 일시정지`,gamePauseDesc:`게임 시간 및 자원 생산 일시정지 또는 재개`,pause:`일시정지`,resume:`재개`,gamePaused:`게임이 일시정지되었습니다`,gameResumed:`게임이 재개되었습니다`,playerName:`플레이어 이름`,gameSpeed:`자원 생산 속도`,gameSpeedDesc:`현재 자원 생산 속도 배율`,speedChanged:`자원 생산 속도가 {speed}x로 변경되었습니다`,speedReset:`자원 생산 속도가 1x로 재설정되었습니다`,reset:`재설정`,about:`정보`,version:`버전`,latestVersion:`최신 버전`,checkUpdate:`업데이트 확인`,checking:`확인 중...`,newVersionAvailable:`새 버전 {version} 사용 가능`,upToDate:`이미 최신 버전입니다`,checkUpdateCooldown:`나중에 다시 시도해주세요 (5분 쿨다운)`,checkUpdateFailed:`업데이트 확인 실패, 네트워크 연결을 확인하세요`,viewUpdate:`업데이트 보기`,updateAvailable:`새 버전이 사용 가능합니다. 릴리스 노트를 보려면 클릭하세요.`,download:`다운로드`,goToDownload:`다운로드로 이동`,buildDate:`빌드 날짜`,community:`커뮤니티`,github:`GitHub 저장소`,qqGroup:`QQ 그룹`},gmView:{title:`GM 제어판`,adminOnly:`관리자 전용`,selectPlanet:`행성 선택`,choosePlanet:`행성을 선택하세요`,resources:`자원`,buildings:`건물`,research:`연구`,ships:`함선`,defense:`방어`,officers:`장교`,modifyResources:`자원 수정`,resourcesDesc:`행성 자원을 빠르게 수정`,modifyBuildings:`건물 수정`,buildingsDesc:`건물 레벨을 빠르게 설정`,modifyResearch:`연구 수정`,researchDesc:`연구 레벨을 빠르게 설정`,modifyShips:`함선 수정`,shipsDesc:`함선 수량을 빠르게 설정`,modifyDefense:`방어 수정`,defenseDesc:`방어 수량을 빠르게 설정`,modifyOfficers:`장교 수정`,officersDesc:`장교 만료 시간을 빠르게 설정`,days:`일`,npcTesting:`NPC 테스트`,npcTestingDesc:`NPC 정찰 및 공격 동작 테스트`,selectNPC:`NPC 선택`,chooseNPC:`NPC를 선택하세요`,targetPlanet:`목표 행성`,chooseTarget:`목표 행성 선택`,testSpy:`정찰 테스트`,testAttack:`공격 테스트`,testSpyAndAttack:`정찰 & 공격 테스트`,testSpyMessage:`확인을 클릭하여 정찰 임무를 가속화`,testAttackMessage:`확인을 클릭하여 공격 임무를 가속화`,testSpyAndAttackMessage:`확인을 클릭하여 임무를 가속화`,initializeFleet:`NPC 함대 초기化`,accelerateMissions:`모든 임무 가속(5초)`,selectNPCFirst:`먼저 NPC를 선택하세요`,npcNoProbes:`NPC에 정찰 프로브가 없습니다`,npcNoSpyReport:`NPC가 먼저 정찰해야 합니다`,npcMissionFailed:`임무 생성 실패`,npcNoPlanets:`NPC에 행성이 없습니다`,npcWillSpyIn5s:`{npcName}이(가) 5초 후에 정찰합니다`,npcWillAttackIn5s:`{npcName}이(가) 5초 후에 공격합니다`,npcWillSpyAndAttack:`{npcName}이(가) 5초 후에 정찰하고 10초 후에 공격합니다`,acceleratedMissions:`{count}개의 임무를 5초로 가속화했습니다`,npcFleetInitialized:`{npcName} 함대가 초기화되었습니다`,npcFleetDetails:`100 정찰 프로브 -500 경전투기 -300 중전투기 -200 순양함 -100 전함 -50 폭격기 -30 구축함 -20 순양전함`,dangerZone:`위험 구역`,dangerZoneDesc:`다음 작업은 되돌릴 수 없습니다`,resetGame:`게임 초기화`,resetGameConfirm:`게임을 초기화하시겠습니까? 모든 데이터가 삭제됩니다!`},alerts:{npcSpyIncoming:`NPC 정찰 프로브 접근 중`,npcAttackIncoming:`NPC 함대 공격 진행 중!`,npcFleetIncoming:`NPC 함대 접근 중`,ships:`척`,spiedBy:`정찰당함`,attackedBy:`공격당함`,detectionSuccess:`정찰 발견됨`,detectionFailed:`정찰 미발견`,npcSpiedYourPlanet:`NPC가 당신의 행성을 정찰했습니다`,npcAttackedYourPlanet:`NPC가 당신의 행성을 공격했습니다`},diplomacy:{title:`외교`,description:`NPC와의 외교 관계 관리`,tabs:{all:`전체`,friendly:`우호적`,neutral:`중립`,hostile:`적대적`},noNpcs:`NPC 없음`,noFriendlyNpcs:`우호적인 NPC 없음`,noNeutralNpcs:`중립적인 NPC 없음`,noHostileNpcs:`적대적인 NPC 없음`,recentEvents:`최근 이벤트`,recentEventsDescription:`최근 외교 활동 로그`,ago:`전`,status:{friendly:`우호적`,neutral:`중립`,hostile:`적대적`},planets:`행성`,allies:`동맹`,reputation:`평판`,alliedWith:`동맹 관계`,more:`더보기`,actions:{gift:`선물 보내기`,viewPlanets:`행성 보기`},lastEvent:`최근 이벤트`,events:{gift:`선물 전송`,attack:`공격`,missileAttack:`미사일 공격`,allyAttacked:`동맹 공격당함`,spy:`정찰`,stealDebris:`잔해 약탈`},reports:{giftedResources:`{metal}M {crystal}C {deuterium}D 선물함`,receivedGiftFromPlayer:`플레이어로부터 선물을 받았습니다`,giftedToNpc:`{npcName}에게 자원을 선물했습니다. 평판 +{reputation}`,rejectedPlayerGift:`플레이어의 선물을 거부했습니다`,npcRejectedGift:`{npcName}이(가) 당신의 선물을 거부했습니다. 평판 {reputation}`,attackedNpc:`{npcName}을(를) 공격했습니다`,wasAttackedByPlayer:`플레이어에게 공격당했습니다`,youAttackedNpc:`당신은 {npcName}을(를) 공격했습니다`,playerAttackedAlly:`플레이어가 동맹 {allyName}을(를) 공격했습니다`,allyDispleased:`{allyName}은(는) 당신이 동맹 {targetName}을(를) 공격한 것에 불만입니다`,wasSpiedByPlayer:`플레이어에게 정찰당했습니다 (발견: {detected})`,spyDetected:`당신의 정찰이 {npcName}에게 발견되었습니다`,stoleDebrisFromTerritory:`{npcName}의 영역에서 잔해를 약탈했습니다`,playerStoleDebris:`플레이어가 영역에서 잔해를 약탈했습니다`,recycledDebrisNearNpc:`{npcName}의 행성 근처에서 잔해를 수집했습니다. 그들은 불만족스러워합니다.`,giftedResourcesToPlayer:`플레이어에게 자원을 선물했습니다`,receivedGiftFromNpc:`{npcName}로부터 선물을 받았습니다`,acceptedGiftFromNpc:`{npcName}의 선물을 받았습니다: {metal}M {crystal}C {deuterium}D`,playerRejectedGift:`플레이어가 선물을 거부했습니다`,rejectedGiftFromNpc:`{npcName}의 선물을 거부했습니다. 평판 {reputation}`}},pagination:{previous:`이전`,next:`다음`,first:`처음`,last:`마지막`,page:`{page}페이지`},notFound:{title:`페이지를 찾을 수 없습니다`,description:`죄송합니다. 찾으시는 페이지가 존재하지 않습니다`,goHome:`홈으로 이동`}},o={common:{confirm:`確認`,cancel:`キャンセル`,delete:`削除`,edit:`編集`,save:`保存`,close:`閉じる`,back:`戻る`,next:`次へ`,previous:`前へ`,submit:`送信`,reset:`リセット`,search:`検索`,filter:`フィルター`,loading:`読み込み中...`,noData:`データなし`,error:`エラー`,success:`成功`,warning:`警告`,info:`情報`,resourceType:`資源タイプ`,playerName:`司令官`,timeHour:`時間`,timeMinute:`分`,timeSecond:`秒`,featureLocked:`機能がロックされています`,unlockRequired:`建物が必要です`,requiredBuilding:`必要な建物`,currentLevel:`現在のレベル`,goToBuildings:`建物へ移動`,locked:`ロック済み`,viewRequirements:`必要条件を表示`,requirementsNotMet:`必要条件が満たされていません`,current:`現在`,level:`レベル`,gmModeActivated:`GMモードが有効になりました!ナビゲーションメニューをご確認ください。`},errors:{requirementsNotMet:`前提条件を満たしていません`,insufficientResources:`資源が不足しています`,insufficientFleetStorage:`艦隊ストレージが不足しています`,shieldDomeLimit:`シールドドームの上限に達しました`,missileSiloLimit:`ミサイル格納庫の容量を超えています`,insufficientMissiles:`惑星間ミサイルが不足しています`,invalidMissileCount:`ミサイル数が無効です`,targetOutOfRange:`ターゲットが射程外です`,cannotAttackOwnPlanet:`自分の惑星を攻撃できません`,fleetMissionsFull:`艦隊ミッションスロットが満杯です`,insufficientFleet:`艦隊が不足しています`,insufficientFuel:`燃料が不足しています`,planetOnly:`この建物は惑星でのみ建設できます`,moonOnly:`この建物は月でのみ建設できます`,buildQueueFull:`建設キューが満杯です`,insufficientSpace:`スペースが不足しています`,buildingLevelZero:`建物レベルが0のため、解体できません`,researchQueueFull:`研究キューが満杯です`,moonExists:`月は既に存在します`,insufficientDebris:`残骸フィールドが不足しています`},nav:{overview:`概要`,buildings:`建物`,research:`研究`,shipyard:`造船所`,defense:`防衛`,fleet:`艦隊`,officers:`士官`,simulator:`シミュレーター`,galaxy:`銀河`,diplomacy:`Diplomacy`,messages:`メッセージ`,settings:`設定`,gm:`GM`},sidebar:{language:`言語`,lightMode:`ライトモード`,darkMode:`ダークモード`,collapse:`メニューを閉じる`,expand:`メニューを開く`},resources:{metal:`金属`,crystal:`クリスタル`,deuterium:`重水素`,darkMatter:`ダークマター`,energy:`エネルギー`,production:`生産量`,consumption:`消費量`,capacity:`容量`,current:`現在の貯蔵量`,max:`最大容量`,perHour:`時間`,perMinute:`分`,hour:`時間`,noEnergy:`エネルギー不足`},planet:{planet:`惑星`,moon:`月`,colony:`コロニー`,position:`位置`,coordinates:`座標`,switchToMoon:`月を表示`,backToPlanet:`母星に戻る`,switchPlanet:`惑星を切り替える`,currentPlanet:`現在の惑星`,fields:`フィールド`,temperature:`温度`,homePlanet:`母星`,planetPrefix:`惑星`,moonSuffix:`の月`,colonyPrefix:`コロニー`},player:{points:`総ポイント`},buildings:{metalMine:`金属鉱山`,crystalMine:`クリスタル鉱山`,deuteriumSynthesizer:`重水素合成装置`,solarPlant:`太陽光発電所`,fusionReactor:`核融合炉`,roboticsFactory:`ロボット工場`,naniteFactory:`ナノマシン工場`,shipyard:`造船所`,researchLab:`研究所`,metalStorage:`金属倉庫`,crystalStorage:`クリスタル倉庫`,deuteriumTank:`重水素タンク`,darkMatterCollector:`ダークマター採取装置`,darkMatterTank:`ダークマタータンク`,missileSilo:`ミサイル格納庫`,terraformer:`テラフォーマー`,lunarBase:`月面基地`,sensorPhalanx:`センサーファランクス`,jumpGate:`ジャンプゲート`,planetDestroyerFactory:`惑星破壊工場`,buildTime:`建設時間`,production:`生産量`,consumption:`消費`,totalCost:`総コスト`,totalPoints:`総ポイント`,levelRange:`レベル範囲`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,buildQueueBonus:`建造隊列`,spaceBonus:`スペースボーナス`,buildSpeedBonus:`建設速度ボーナス`,researchSpeedBonus:`研究速度ボーナス`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},buildingDescriptions:{metalMine:`金属資源を採掘`,crystalMine:`クリスタル資源を採掘`,deuteriumSynthesizer:`重水素資源を合成`,solarPlant:`エネルギーを供給`,fusionReactor:`重水素を使用して大量のエネルギーを生成`,roboticsFactory:`建設速度を向上`,naniteFactory:`建設キュー数を増加、レベル毎に+1(最大10レベル)`,shipyard:`艦船を建造`,researchLab:`技術を研究`,metalStorage:`金属の貯蔵上限を増加`,crystalStorage:`クリスタルの貯蔵上限を増加`,deuteriumTank:`重水素の貯蔵上限を増加`,darkMatterCollector:`希少なダークマター資源を収集`,darkMatterTank:`ダークマターの貯蔵上限を増加`,missileSilo:`ミサイルを保管・発射、レベル毎に10発`,terraformer:`惑星地形を改造、レベル毎に利用可能スペース30増加`,lunarBase:`月の利用可能スペースを増加、レベル毎に+30スペース`,sensorPhalanx:`周辺星系の艦隊活動を探知`,jumpGate:`他の月へ艦隊を瞬間移動`,planetDestroyerFactory:`惑星を破壊できる究極兵器を建造`},ships:{lightFighter:`軽戦闘機`,heavyFighter:`重戦闘機`,cruiser:`巡洋艦`,battleship:`戦艦`,battlecruiser:`巡洋戦艦`,bomber:`爆撃機`,destroyer:`駆逐艦`,smallCargo:`小型輸送船`,largeCargo:`大型輸送船`,colonyShip:`コロニーシップ`,recycler:`リサイクラー`,espionageProbe:`スパイプローブ`,solarSatellite:`太陽光衛星`,darkMatterHarvester:`ダークマター採取船`,deathstar:`デススター`},shipDescriptions:{lightFighter:`基本戦闘ユニット`,heavyFighter:`重装甲戦闘機`,cruiser:`中型戦艦、攻守バランス型`,battleship:`強力な戦艦`,battlecruiser:`高速強力な戦闘艦、戦艦への攻撃に優れる`,bomber:`防御施設への攻撃に特化した艦船`,destroyer:`大型艦の破壊に特化したハンター`,smallCargo:`少量の資源を輸送`,largeCargo:`大量の資源を輸送`,colonyShip:`新惑星の植民に使用`,recycler:`デブリフィールドの資源を回収`,espionageProbe:`敵惑星を偵察`,solarSatellite:`追加エネルギーを提供、衛星1つにつき50エネルギー生成`,darkMatterHarvester:`ダークマター採取専用の特殊艦`,deathstar:`惑星全体を破壊できる究極兵器`},defenses:{rocketLauncher:`ロケットランチャー`,lightLaser:`ライトレーザー`,heavyLaser:`ヘビーレーザー`,gaussCannon:`ガウスキャノン`,ionCannon:`イオンキャノン`,plasmaTurret:`プラズマタレット`,smallShieldDome:`小型シールドドーム`,largeShieldDome:`大型シールドドーム`,antiBallisticMissile:`迎撃ミサイル`,interplanetaryMissile:`惑星間ミサイル`,planetaryShield:`惑星シールド`},defenseDescriptions:{rocketLauncher:`基本防衛施設`,lightLaser:`軽量エネルギー兵器`,heavyLaser:`重型エネルギー兵器`,gaussCannon:`高速運動エネルギー兵器`,ionCannon:`シールド破壊に効果的`,plasmaTurret:`強力な防衛施設`,smallShieldDome:`惑星全体を保護する小型シールド`,largeShieldDome:`惑星全体を保護する大型シールド`,antiBallisticMissile:`敵ミサイルを迎撃、惑星間ミサイル1発を迎撃可能`,interplanetaryMissile:`他の惑星の防御施設を攻撃可能`,planetaryShield:`破壊攻撃から惑星を保護する超級シールド`},research:{researchTime:`研究時間`,totalCost:`総コスト`,totalPoints:`総ポイント`,levelRange:`レベル範囲`,capacity:`Capacity/Effect`,storageCapacity:`Capacity`,energyProduction:`Energy Production`,fleetStorage:`Fleet Storage`,buildQueue:`Build Queue`,planetSpace:`Planet Space`,moonSpace:`Moon Space`,missileCapacity:`Missile Capacity`},technologies:{energyTechnology:`エネルギー技術`,laserTechnology:`レーザー技術`,ionTechnology:`イオン技術`,hyperspaceTechnology:`ハイパースペース技術`,plasmaTechnology:`プラズマ技術`,computerTechnology:`コンピューター技術`,espionageTechnology:`スパイ技術`,weaponsTechnology:`兵器技術`,shieldingTechnology:`シールド技術`,armourTechnology:`装甲技術`,astrophysics:`天体物理学`,gravitonTechnology:`重力技術`,combustionDrive:`燃焼ドライブ`,impulseDrive:`インパルスドライブ`,hyperspaceDrive:`ハイパースペースドライブ`,darkMatterTechnology:`ダークマター技術`,terraformingTechnology:`テラフォーミング技術`,planetDestructionTech:`惑星破壊技術`},technologyDescriptions:{energyTechnology:`エネルギー利用効率を向上`,laserTechnology:`レーザー兵器と防衛の基礎`,ionTechnology:`イオン兵器技術`,hyperspaceTechnology:`ハイパースペースジャンプ技術`,plasmaTechnology:`プラズマ兵器技術`,computerTechnology:`研究キュー数を増加、レベル毎に+1(最大10レベル)`,espionageTechnology:`スパイ探査機の効果を向上、レベル毎に偵察深度+1`,weaponsTechnology:`艦船と防御の攻撃力をレベル毎に10%増加`,shieldingTechnology:`艦船と防御のシールドをレベル毎に10%増加`,armourTechnology:`艦船と防御の装甲をレベル毎に10%増加`,astrophysics:`レベル毎に植民地スロット+1、探検成功率を向上`,gravitonTechnology:`重力操作を研究、デススターに必要`,combustionDrive:`基本推進技術`,impulseDrive:`中級推進技術`,hyperspaceDrive:`高級推進技術`,darkMatterTechnology:`ダークマターの性質と応用を研究`,terraformingTechnology:`惑星地形改造技術を研究、レベル毎に全惑星の利用可能スペース30増加`,planetDestructionTech:`惑星全体を破壊する恐怖の技術を研究`},officers:{commander:`司令官`,admiral:`提督`,engineer:`エンジニア`,geologist:`地質学者`,technocrat:`技術専門家`,darkMatterSpecialist:`ダークマター専門家`,resourceBonus:`資源生産ボーナス`,darkMatterBonus:`ダークマター生産ボーナス`,energyBonus:`エネルギー生産ボーナス`},officerDescriptions:{commander:`建設速度と管理能力を向上`,admiral:`艦隊戦闘力と速度を向上`,engineer:`エネルギーと防御力を向上`,geologist:`資源生産量を向上`,technocrat:`研究速度と偵察能力を向上`,darkMatterSpecialist:`ダークマター採取効率を向上`},queue:{buildQueue:`建設キュー`,researchQueue:`研究キュー`,building:`建設中`,researching:`研究中`,remaining:`残り時間`,cancel:`キャンセル`,cancelBuild:`建設キャンセル`,cancelResearch:`研究キャンセル`,confirmCancel:`キャンセルしますか?資源の50%が返還されます。`,level:`レベル`,gmModeActivated:``,upgradeToLevel:`レベルにアップグレード`},shipyard:{attack:`攻撃力`,missileAttack:`ミサイル攻撃`,shield:`シールド`,armor:`装甲`,speed:`速度`,cargoCapacity:`貨物容量`,fuelConsumption:`燃料消費`,buildCost:`建設コスト`,buildTime:`建設時間`,perUnit:`ユニットあたり`,batchCalculator:`一括計算機`,quantity:`数量`,totalCost:`総コスト`,totalTime:`総時間`},overview:{title:`惑星概要`,resourceOverview:`資源概要`,fleetInfo:`艦隊`,currentShips:`現在の惑星の艦船数`,productionSources:`生産源`,productionSourcesDesc:`詳細な資源生産とボーナス情報`,consumptionSources:`消費源`,consumptionSourcesDesc:`建物のエネルギー消費詳細`,totalProduction:`総生産量`,totalConsumption:`総消費量`,noConsumption:`エネルギー消費なし`},buildingsView:{title:`建物`,usedSpace:`使用済みスペース`,spaceUsage:`スペース使用量`,level:`レベル`,gmModeActivated:``,upgradeCost:`アップグレードコスト`,buildTime:`建設時間`,upgrade:`アップグレード`,maxLevelReached:`最大レベルに達しました`,requirementsNotMet:`要件が満たされていません`,upgradeFailed:`アップグレード失敗`,upgradeFailedMessage:`資源が十分か、スペースが十分か、または他の建設タスクがないか確認してください。`,demolish:`解体`,demolishRefund:`解体返還`,demolishFailed:`解体失敗`,demolishFailedMessage:`この建物を解体できません。建設キューが満杯か、建物レベルが0でないか確認してください。`,confirmDemolish:`解体確認`,confirmDemolishMessage:`以下の建物を解体しますか?`},researchView:{title:`研究`,researchCost:`研究コスト`,research:`研究`,maxLevelReached:`最大レベルに達しました`,researchFailed:`研究失敗`,researchFailedMessage:`資源が十分か、前提条件が満たされているか、または他の研究タスクがないか確認してください。`},defense:{attack:`攻撃力`,missileAttack:`ミサイル攻撃`,shield:`シールド`,armor:`装甲`,buildCost:`建設コスト`,buildTime:`建設時間`,perUnit:`ユニットあたり`,batchCalculator:`一括計算機`,quantity:`数量`,totalCost:`総コスト`,totalTime:`総時間`},shipyardView:{title:`造船所`,fleetStorage:`艦隊ストレージ`,attack:`攻撃力`,missileAttack:`ミサイル攻撃`,shield:`シールド`,speed:`速度`,cargoCapacity:`積載量`,unitCost:`ユニットコスト`,buildQuantity:`建造数`,totalCost:`総コスト`,build:`建造`,inputError:`入力エラー`,inputErrorMessage:`建造数を入力してください!`,buildFailed:`建造失敗`,buildFailedMessage:`資源が十分か、前提条件が満たされているか確認してください。`},defenseView:{title:`防衛施設`,attack:`攻撃力`,missileAttack:`ミサイル攻撃`,shield:`シールド`,armor:`装甲`,buildTime:`建設時間`,seconds:`秒`,unitCost:`ユニットコスト`,buildQuantity:`建造数`,totalCost:`総コスト`,build:`建造`,shieldDomeBuilt:`シールドドーム建設済み`,missileCapacity:`ミサイル容量`,inputError:`入力エラー`,inputErrorMessage:`建造数を入力してください!`,buildFailed:`建造失敗`,buildFailedMessage:`資源が十分か、前提条件が満たされているか確認してください。シールドドームは1つのみ建設できます。`},fleetView:{title:`艦隊管理`,fleetOverview:`艦隊概要`,sendFleet:`艦隊派遣`,flightMissions:`飛行ミッション`,currentPlanetFleet:`現在の惑星艦隊`,attack:`攻撃`,missileAttack:`ミサイル攻撃`,shield:`シールド`,armor:`装甲`,speed:`速度`,cargo:`貨物`,selectFleet:`艦隊選択`,selectFleetDescription:`派遣する艦船数を選択`,available:`利用可能`,all:`全て`,targetCoordinates:`目標座標`,galaxy:`銀河`,diplomacy:`Diplomacy`,system:`星系`,position:`位置`,missionType:`ミッションタイプ`,missionInfo:`ミッション情報`,fuelConsumption:`燃料消費`,flightTime:`飛行時間`,attackMission:`攻撃`,transport:`輸送`,colonize:`植民`,spy:`偵察`,deploy:`配備`,recycle:`回収`,transportResources:`資源輸送`,totalCargoCapacity:`総積載量`,used:`使用済み`,noFlightMissions:`飛行ミッションなし`,outbound:`往路`,returning:`帰路`,fleetComposition:`艦隊構成`,carryingResources:`運搬資源`,arrivalTime:`到着時刻`,returnTime:`帰還時刻`,recallFleet:`艦隊召還`,sendFailed:`派遣失敗`,sendFailedMessage:`艦隊数、燃料の充足、または積載量の制限を確認してください。`,recallFailed:`召還失敗`,recallFailedMessage:`このミッションは召還できません。`,unknownPlanet:`未知の惑星`,fleetMissionSlots:`艦隊ミッションスロット`,noShipsSelected:`艦船が選択されていません`,cannotSendToOwnPlanet:`自分の惑星に艦隊を派遣できません`,cargoExceedsCapacity:`積載量が容量を超えています`,noColonyShip:`植民ミッションにはコロニーシップが必要です`,noDebrisAtTarget:`目標座標にデブリフィールドがないか、デブリフィールドが空です`,noDeathstar:`破壊ミッションにはデススターが必要です`,giftMode:`ギフトモード`,giftModeDescription:`資源を贈り物として送る`,estimatedReputationGain:`推定評判獲得`},officersView:{title:`士官`,activated:`アクティブ`,inactive:`非アクティブ`,activeStatus:`アクティブ状態`,expirationTime:`期限切れ時刻`,remainingTime:`残り時間`,recruitCost:`募集コスト`,days:`日`,benefitsBonus:`効果ボーナス`,resourceProduction:`資源生産量`,darkMatterProduction:`ダークマター生産量`,energyProduction:`エネルギー生産量`,buildingSpeed:`建設速度`,researchSpeed:`研究速度`,fleetSpeed:`艦隊速度`,fuelConsumption:`燃料消費`,defense:`防御力`,storageCapacity:`貯蔵容量`,buildQueue:`建設キュー`,fleetSlots:`艦隊スロット`,hire:`雇用`,renew:`更新`,dismiss:`解雇`,hireTitle:`士官雇用`,hireMessage:`{name}を雇用しますか?有効期限は7日間です。`,renewTitle:`士官更新`,renewMessage:`{name}を7日間更新しますか?`,dismissTitle:`士官解雇`,dismissMessage:`{name}を解雇しますか?費用は返金されません。`,hireFailed:`雇用失敗`,renewFailed:`更新失敗`,insufficientResources:`資源不足!`},galaxyView:{title:`銀河`,selectCoordinates:`座標選択`,galaxy:`銀河`,diplomacy:`Diplomacy`,selectGalaxy:`銀河を選択`,system:`星系`,selectSystem:`星系を選択`,view:`表示`,myPlanet:`自分の惑星`,myPlanets:`自分の星系を表示`,npcPlanets:`NPCの惑星`,selectPlanetToView:`惑星を選択して星系を表示`,totalPositions:`全10惑星位置`,mine:`自分`,hostile:`敵対`,emptySlot:`空き - 植民可能`,scout:`偵察`,attack:`攻撃`,missileAttack:`ミサイル攻撃`,colonize:`植民`,switch:`切り替え`,recycle:`回収`,debrisField:`デブリフィールド`,scoutPlanetTitle:`惑星偵察`,attackPlanetTitle:`惑星攻撃`,missileAttackTitle:`ミサイル攻撃`,colonizePlanetTitle:`惑星植民`,recyclePlanetTitle:`デブリ回収`,scoutPlanetMessage:`惑星[{coordinates}]にスパイプローブを送りますか? - -艦隊ページに移動して艦船を選択して派遣してください。`,attackPlanetMessage:`惑星[{coordinates}]を攻撃しますか? - -艦隊ページに移動して艦船を選択して派遣してください。`,missileAttackMessage:`惑星[{coordinates}]に惑星間ミサイルを発射`,missileCount:`ミサイル数`,availableMissiles:`利用可能なミサイル`,missileRange:`ミサイル射程`,systems:`システム`,distance:`距離`,flightTime:`飛行時間`,launchMissile:`発射`,cancel:`キャンセル`,colonizePlanetMessage:`位置[{coordinates}]を植民しますか? - -艦隊ページに移動してコロニーシップを派遣してください。`,recyclePlanetMessage:`位置[{coordinates}]のデブリを回収しますか? - -艦隊ページに移動してリサイクラーを派遣してください。`,sendGift:`ギフト送信`,debris:`破片`,giftPlanetTitle:`ギフト送信`,giftPlanetMessage:`惑星[{coordinates}]にリソースを贈りますか? - -艦隊ページに移動して輸送船を選択し、リソースを積載してください。`},messagesView:{title:`メッセージセンター`,battles:`戦闘`,spy:`スパイ`,npc:`NPC`,battleReports:`戦闘レポート`,spyReports:`スパイレポート`,noBattleReports:`戦闘レポートなし`,noSpyReports:`スパイレポートなし`,battleReport:`戦闘レポート`,spyReport:`スパイレポート`,victory:`勝利`,defeat:`敗北`,draw:`引き分け`,attackerFleet:`攻撃側艦隊`,defenderFleet:`防御側艦隊`,defenderDefense:`防御側防衛`,attackerLosses:`攻撃側損失`,defenderLosses:`防御側損失`,noLosses:`損失なし`,plunder:`略奪資源`,debrisField:`デブリフィールド`,resources:`資源`,fleet:`艦隊`,defense:`防衛`,buildings:`建物`,unread:`未読`,targetPlanet:`目標惑星`,attackerRemaining:`攻撃側残存`,defenderRemaining:`防御側残存`,moonChance:`月生成確率`,showRoundDetails:`ラウンド詳細表示`,hideRoundDetails:`ラウンド詳細非表示`,round:`第{round}ラウンド`,attackerRemainingPower:`攻撃側残存火力`,defenderRemainingPower:`防御側残存火力`,spied:`偵察された`,spiedNotification:`偵察通知`,noSpiedNotifications:`偵察通知はありません`,detected:`発見された`,undetected:`未発見`,missions:`ミッション`,noMissionReports:`ミッションレポートなし`,success:`成功`,failed:`失敗`,npcActivity:`NPC活動`,noNPCActivity:`NPC活動通知はありません`,npcRecycleActivity:`NPCがデブリを回収`,gifts:`ギフト`,giftRejected:`拒否`,noGiftNotifications:`ギフト通知はありません`,noGiftRejected:`拒否された記録はありません`,giftFrom:`{npcName}からのギフト`,giftRejectedBy:`{npcName}がギフトを拒否しました`,giftResources:`ギフトリソース`,rejectedResources:`拒否されたリソース`,expectedReputation:`期待される評判`,currentReputation:`現在の評判`,acceptGift:`受け取る`,rejectGift:`拒否`,rejectionReason:{hostile:`相手は敵対的でギフトを受け取りません`,neutral_distrust:`相手はあなたを信頼していません`,polite_decline:`丁重に断りました`}},missionReports:{transportSuccess:`輸送ミッションが正常に完了しました`,transportFailed:`輸送ミッションが失敗しました`,colonizeSuccess:`植民ミッション成功、新しい惑星が確立されました`,colonizeFailed:`植民ミッションが失敗しました`,deploySuccess:`配備ミッションが正常に完了しました`,deployFailed:`配備ミッションが失敗しました`,recycleSuccess:`回収ミッションが正常に完了しました`,recycleFailed:`回収ミッションが失敗しました。目標位置にデブリがありません`,destroySuccess:`惑星破壊ミッションが正常に実行されました`,destroyFailed:`惑星破壊ミッションが失敗しました`},simulatorView:{title:`戦闘シミュレーター`,attacker:`攻撃側`,defender:`防御側`,attackerConfig:`攻撃側設定`,attackerConfigDesc:`攻撃側の艦隊と技術レベルを設定`,defenderConfig:`防御側設定`,defenderConfigDesc:`防御側の艦隊、防衛、技術レベルを設定`,fleet:`艦隊`,defenseStructures:`防衛施設`,techLevels:`技術レベル`,weapon:`武器`,shield:`シールド`,armor:`装甲`,defenderResources:`防御側資源(略奪計算用)`,startSimulation:`シミュレーション開始`,reset:`リセット`,battleResult:`戦闘結果`,attackerVictory:`攻撃側勝利`,defenderVictory:`防御側勝利`,draw:`引き分け`,afterRounds:`{rounds}ラウンド後`,attackerLosses:`攻撃側損失`,defenderLosses:`防御側損失`,noLosses:`損失なし`,attackerRemaining:`攻撃側残存`,defenderRemaining:`防御側残存`,allDestroyed:`全て破壊`,plunderableResources:`略奪可能資源`,debrisField:`デブリフィールド`,moonChance:`月生成確率`,showRoundDetails:`ラウンド詳細表示`,hideRoundDetails:`ラウンド詳細非表示`,round:`第{round}ラウンド`,attackerRemainingPower:`攻撃側残存火力`,defenderRemainingPower:`防御側残存火力`},settings:{dataManagement:`データ管理`,dataManagementDesc:`ゲームデータのエクスポート、インポート、またはクリア`,exportData:`データエクスポート`,exportDataDesc:`ゲームの進行状況をJSONファイルとしてエクスポート`,export:`エクスポート`,exporting:`エクスポート中...`,exportSuccess:`エクスポート成功`,exportFailed:`エクスポートに失敗しました。もう一度お試しください`,importData:`データインポート`,importDataDesc:`JSONファイルからゲームの進行状況を復元`,selectFile:`ファイルを選択`,importSuccess:`インポート成功`,importConfirmTitle:`インポート確認`,importConfirmMessage:`インポートすると現在のゲームの進行状況が上書きされます。この操作は元に戻せません。続行しますか?`,importFailed:`インポートに失敗しました。ファイル形式を確認してください`,clearData:`データクリア`,clearDataDesc:`すべてのゲームデータを削除してリセット`,clear:`クリア`,clearConfirmTitle:`データクリア確認`,clearConfirmMessage:`すべてのゲームデータが削除され、最初からやり直します。この操作は元に戻せません。続行しますか?`,gameSettings:`ゲーム設定`,gameSettingsDesc:`ゲームパラメータと設定を調整`,gamePause:`ゲーム一時停止`,gamePauseDesc:`ゲーム時間と資源生産を一時停止または再開`,pause:`一時停止`,resume:`再開`,gamePaused:`ゲームを一時停止しました`,gameResumed:`ゲームを再開しました`,playerName:`プレイヤー名`,gameSpeed:`資源生産速度`,gameSpeedDesc:`現在の資源生産速度倍率`,speedChanged:`資源生産速度を{speed}xに変更しました`,speedReset:`資源生産速度を1xにリセットしました`,reset:`リセット`,about:`について`,version:`バージョン`,latestVersion:`最新バージョン`,checkUpdate:`アップデート確認`,checking:`確認中...`,newVersionAvailable:`新バージョン{version}が利用可能です`,upToDate:`最新バージョンです`,checkUpdateCooldown:`しばらくしてから再度お試しください(5分間のクールダウン)`,checkUpdateFailed:`アップデートの確認に失敗しました。ネットワーク接続を確認してください`,viewUpdate:`更新を表示`,updateAvailable:`新しいバージョンが利用可能です。クリックしてリリースノートを表示します。`,download:`ダウンロード`,goToDownload:`ダウンロードへ`,buildDate:`ビルド日`,community:`コミュニティ`,github:`GitHubリポジトリ`,qqGroup:`QQグループ`},gmView:{title:`GMコントロールパネル`,adminOnly:`管理者専用`,selectPlanet:`惑星を選択`,choosePlanet:`惑星を選択してください`,resources:`資源`,buildings:`建物`,research:`研究`,ships:`艦船`,defense:`防衛`,officers:`士官`,modifyResources:`資源を変更`,resourcesDesc:`惑星の資源を素早く変更`,modifyBuildings:`建物を変更`,buildingsDesc:`建物レベルを素早く設定`,modifyResearch:`研究を変更`,researchDesc:`研究レベルを素早く設定`,modifyShips:`艦船を変更`,shipsDesc:`艦船数を素早く設定`,modifyDefense:`防衛を変更`,defenseDesc:`防衛数を素早く設定`,modifyOfficers:`士官を変更`,officersDesc:`士官の有効期限を素早く設定`,days:`日`,npcTesting:`NPCテスト`,npcTestingDesc:`NPCの偵察と攻撃動作をテスト`,selectNPC:`NPCを選択`,chooseNPC:`NPCを選択してください`,targetPlanet:`ターゲット惑星`,chooseTarget:`ターゲット惑星を選択`,testSpy:`偵察テスト`,testAttack:`攻撃テスト`,testSpyAndAttack:`偵察&攻撃テスト`,testSpyMessage:`確認をクリックして偵察ミッションを加速`,testAttackMessage:`確認をクリックして攻撃ミッションを加速`,testSpyAndAttackMessage:`確認をクリックしてミッションを加速`,initializeFleet:`NPC艦隊を初期化`,accelerateMissions:`すべてのミッションを加速(5秒)`,selectNPCFirst:`最初にNPCを選択してください`,npcNoProbes:`NPCには偵察プローブがありません`,npcNoSpyReport:`NPCは最初に偵察する必要があります`,npcMissionFailed:`ミッションの作成に失敗しました`,npcNoPlanets:`NPCに惑星がありません`,npcWillSpyIn5s:`{npcName}は5秒後に偵察します`,npcWillAttackIn5s:`{npcName}は5秒後に攻撃します`,npcWillSpyAndAttack:`{npcName}は5秒後に偵察し、10秒後に攻撃します`,acceleratedMissions:`{count}個のミッションを5秒後に加速しました`,npcFleetInitialized:`{npcName}艦隊が初期化されました`,npcFleetDetails:`100 偵察プローブ -500 軽戦闘機 -300 重戦闘機 -200 巡洋艦 -100 戦艦 -50 爆撃機 -30 駆逐艦 -20 巡洋戦艦`,dangerZone:`危険ゾーン`,dangerZoneDesc:`以下の操作は元に戻せません`,resetGame:`ゲームをリセット`,resetGameConfirm:`ゲームをリセットしてもよろしいですか?すべてのデータが削除されます!`},alerts:{npcSpyIncoming:`NPC偵察プローブが接近中`,npcAttackIncoming:`NPC艦隊攻撃が接近中!`,npcFleetIncoming:`NPC艦隊が接近中`,ships:`隻`,spiedBy:`偵察された`,attackedBy:`攻撃された`,detectionSuccess:`偵察が発見された`,detectionFailed:`偵察が発見されなかった`,npcSpiedYourPlanet:`NPCがあなたの惑星を偵察しました`,npcAttackedYourPlanet:`NPCがあなたの惑星を攻撃しました`},diplomacy:{title:`外交`,description:`NPCとの外交関係を管理`,tabs:{all:`すべて`,friendly:`友好的`,neutral:`中立`,hostile:`敵対的`},noNpcs:`NPCなし`,noFriendlyNpcs:`友好的なNPCなし`,noNeutralNpcs:`中立なNPCなし`,noHostileNpcs:`敵対的なNPCなし`,recentEvents:`最近のイベント`,recentEventsDescription:`最近の外交活動ログ`,ago:`前`,status:{friendly:`友好的`,neutral:`中立`,hostile:`敵対的`},planets:`惑星`,allies:`同盟`,reputation:`評判`,alliedWith:`同盟関係`,more:`その他`,actions:{gift:`ギフトを送る`,viewPlanets:`惑星を表示`},lastEvent:`最後のイベント`,events:{gift:`ギフト送信`,attack:`攻撃`,missileAttack:`ミサイル攻撃`,allyAttacked:`同盟が攻撃された`,spy:`諜報活動`,stealDebris:`残骸を略奪`},reports:{giftedResources:`{metal}M {crystal}C {deuterium}Dを贈呈`,receivedGiftFromPlayer:`プレイヤーからギフトを受け取りました`,giftedToNpc:`{npcName}にリソースを贈呈しました。評判+{reputation}`,rejectedPlayerGift:`プレイヤーのギフトを拒否しました`,npcRejectedGift:`{npcName}があなたのギフトを拒否しました。評判{reputation}`,attackedNpc:`{npcName}を攻撃しました`,wasAttackedByPlayer:`プレイヤーに攻撃されました`,youAttackedNpc:`あなたは{npcName}を攻撃しました`,playerAttackedAlly:`プレイヤーが同盟{allyName}を攻撃しました`,allyDispleased:`{allyName}はあなたが同盟{targetName}を攻撃したことに不満です`,wasSpiedByPlayer:`プレイヤーに偵察されました(発見:{detected})`,spyDetected:`あなたの偵察が{npcName}に発見されました`,stoleDebrisFromTerritory:`{npcName}の領域から残骸を略奪しました`,playerStoleDebris:`プレイヤーが領域から残骸を略奪しました`,recycledDebrisNearNpc:`{npcName}の惑星近くで残骸を回収しました。彼らは不満です。`,giftedResourcesToPlayer:`プレイヤーにリソースを贈呈しました`,receivedGiftFromNpc:`{npcName}からギフトを受け取りました`,acceptedGiftFromNpc:`{npcName}からのギフトを受け取りました:{metal}M {crystal}C {deuterium}D`,playerRejectedGift:`プレイヤーがギフトを拒否しました`,rejectedGiftFromNpc:`{npcName}からのギフトを拒否しました。評判{reputation}`}},pagination:{previous:`前へ`,next:`次へ`,first:`最初`,last:`最後`,page:`{page}ページ`},notFound:{title:`ページが見つかりません`,description:`申し訳ございません。お探しのページは存在しません`,goHome:`ホームに戻る`}};const s={"zh-CN":e,"zh-TW":t,en:n,de:r,ru:i,ko:a,ja:o},c={"zh-CN":`简体中文`,"zh-TW":`繁體中文`,en:`English`,de:`Deutsch`,ru:`Русский`,ko:`한국어`,ja:`日本語`},l=()=>{let e=(navigator.language||navigator.languages&&navigator.languages[0]||`zh-CN`).toLowerCase();return e.startsWith(`zh-tw`)||e.startsWith(`zh-hant`)||e.startsWith(`zh-hk`)||e.startsWith(`zh-mo`)?`zh-TW`:e.startsWith(`zh`)?`zh-CN`:e.startsWith(`ja`)?`ja`:e.startsWith(`ko`)?`ko`:e.startsWith(`en`)?`en`:e.startsWith(`de`)?`de`:e.startsWith(`ru`)?`ru`:`zh-CN`};export{c as n,s as r,l as t}; \ No newline at end of file diff --git a/docs/assets/game-logic-BBFCPVtv.js b/docs/assets/game-logic-BBFCPVtv.js deleted file mode 100644 index c873bac..0000000 --- a/docs/assets/game-logic-BBFCPVtv.js +++ /dev/null @@ -1,3 +0,0 @@ -import{n as e}from"./rolldown-runtime-CIDIeb-o.js";import{r as t}from"./game-i18n-BC9uiVvf.js";import{_ as n,a as r,c as i,d as a,f as o,g as s,h as c,i as l,l as u,m as d,n as f,o as p,p as m,r as h,s as g,t as _,u as v,v as y}from"./game-config-DRP-gbpS.js";function b(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var x={},S=[],C=()=>{},w=()=>!1,T=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),E=e=>e.startsWith(`onUpdate:`),D=Object.assign,ee=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},te=Object.prototype.hasOwnProperty,O=(e,t)=>te.call(e,t),k=Array.isArray,ne=e=>ce(e)===`[object Map]`,A=e=>ce(e)===`[object Set]`,re=e=>ce(e)===`[object Date]`,ie=e=>ce(e)===`[object RegExp]`,j=e=>typeof e==`function`,M=e=>typeof e==`string`,ae=e=>typeof e==`symbol`,N=e=>typeof e==`object`&&!!e,oe=e=>(N(e)||j(e))&&j(e.then)&&j(e.catch),se=Object.prototype.toString,ce=e=>se.call(e),le=e=>ce(e).slice(8,-1),ue=e=>ce(e)===`[object Object]`,de=e=>M(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,fe=b(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),pe=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},me=/-\w/g,P=pe(e=>e.replace(me,e=>e.slice(1).toUpperCase())),he=/\B([A-Z])/g,F=pe(e=>e.replace(he,`-$1`).toLowerCase()),ge=pe(e=>e.charAt(0).toUpperCase()+e.slice(1)),_e=pe(e=>e?`on${ge(e)}`:``),I=(e,t)=>!Object.is(e,t),ve=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},be=e=>{let t=parseFloat(e);return isNaN(t)?e:t},xe=e=>{let t=M(e)?Number(e):NaN;return isNaN(t)?e:t},Se,Ce=()=>Se||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{},we=b(`Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol`);function Te(e){if(k(e)){let t={};for(let n=0;n{if(e){let n=e.split(De);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ae(e){let t=``;if(M(e))t=e;else if(k(e))for(let n=0;nIe(e,t))}var Re=e=>!!(e&&e.__v_isRef===!0),ze=e=>M(e)?e:e==null?``:k(e)||N(e)&&(e.toString===se||!j(e.toString))?Re(e)?ze(e.value):JSON.stringify(e,Be,2):String(e),Be=(e,t)=>Re(t)?Be(e,t.value):ne(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ve(t,r)+` =>`]=n,e),{})}:A(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ve(e))}:ae(t)?Ve(t):N(t)&&!k(t)&&!ue(t)?String(t):t,Ve=(e,t=``)=>ae(e)?`Symbol(${e.description??t})`:e;function He(e){return e==null?`initial`:typeof e==`string`?e===``?` `:e:String(e)}var L,Ue=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=L,!e&&L&&(this.index=(L.scopes||=[]).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes)for(e=0,t=this.scopes.length;e0&&--this._on===0&&(L=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t0)return;if(Ze){let e=Ze;for(Ze=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;Xe;){let t=Xe;for(Xe=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function tt(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function nt(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),at(r),ot(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function rt(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(it(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function it(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===mt)||(e.globalVersion=mt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!rt(e))))return;e.flags|=2;let t=e.dep,n=R,r=lt;R=e,lt=!0;try{tt(e);let n=e.fn(e._value);(t.version===0||I(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{R=n,lt=r,nt(e),e.flags&=-3}}function at(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)at(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ot(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}function st(e,t){e.effect instanceof Je&&(e=e.effect.fn);let n=new Je(e);t&&D(n,t);try{n.run()}catch(e){throw n.stop(),e}let r=n.run.bind(n);return r.effect=n,r}function ct(e){e.effect.stop()}var lt=!0,ut=[];function dt(){ut.push(lt),lt=!1}function ft(){let e=ut.pop();lt=e===void 0?!0:e}function pt(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=R;R=void 0;try{t()}finally{R=e}}}var mt=0,ht=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},gt=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!R||!lt||R===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==R)t=this.activeLink=new ht(R,this),R.deps?(t.prevDep=R.depsTail,R.depsTail.nextDep=t,R.depsTail=t):R.deps=R.depsTail=t,_t(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=R.depsTail,t.nextDep=void 0,R.depsTail.nextDep=t,R.depsTail=t,R.deps===t&&(R.deps=e)}return t}trigger(e){this.version++,mt++,this.notify(e)}notify(e){$e();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{et()}}};function _t(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)_t(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var vt=new WeakMap,yt=Symbol(``),bt=Symbol(``),xt=Symbol(``);function z(e,t,n){if(lt&&R){let t=vt.get(e);t||vt.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new gt),r.map=t,r.key=n),r.track()}}function St(e,t,n,r,i,a){let o=vt.get(e);if(!o){mt++;return}let s=e=>{e&&e.trigger()};if($e(),t===`clear`)o.forEach(s);else{let i=k(e),a=i&&de(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===xt||!ae(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(xt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(yt)),ne(e)&&s(o.get(bt)));break;case`delete`:i||(s(o.get(yt)),ne(e)&&s(o.get(bt)));break;case`set`:ne(e)&&s(o.get(yt));break}}et()}function Ct(e,t){let n=vt.get(e);return n&&n.get(t)}function wt(e){let t=V(e);return t===e?t:(z(t,`iterate`,xt),B(e)?t:t.map(gn))}function Tt(e){return z(e=V(e),`iterate`,xt),e}function Et(e,t){return pn(e)?fn(e)?_n(gn(t)):_n(t):gn(t)}var Dt={__proto__:null,[Symbol.iterator](){return Ot(this,Symbol.iterator,e=>Et(this,e))},concat(...e){return wt(this).concat(...e.map(e=>k(e)?wt(e):e))},entries(){return Ot(this,`entries`,e=>(e[1]=Et(this,e[1]),e))},every(e,t){return At(this,`every`,e,t,void 0,arguments)},filter(e,t){return At(this,`filter`,e,t,e=>e.map(e=>Et(this,e)),arguments)},find(e,t){return At(this,`find`,e,t,e=>Et(this,e),arguments)},findIndex(e,t){return At(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return At(this,`findLast`,e,t,e=>Et(this,e),arguments)},findLastIndex(e,t){return At(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return At(this,`forEach`,e,t,void 0,arguments)},includes(...e){return Mt(this,`includes`,e)},indexOf(...e){return Mt(this,`indexOf`,e)},join(e){return wt(this).join(e)},lastIndexOf(...e){return Mt(this,`lastIndexOf`,e)},map(e,t){return At(this,`map`,e,t,void 0,arguments)},pop(){return Nt(this,`pop`)},push(...e){return Nt(this,`push`,e)},reduce(e,...t){return jt(this,`reduce`,e,t)},reduceRight(e,...t){return jt(this,`reduceRight`,e,t)},shift(){return Nt(this,`shift`)},some(e,t){return At(this,`some`,e,t,void 0,arguments)},splice(...e){return Nt(this,`splice`,e)},toReversed(){return wt(this).toReversed()},toSorted(e){return wt(this).toSorted(e)},toSpliced(...e){return wt(this).toSpliced(...e)},unshift(...e){return Nt(this,`unshift`,e)},values(){return Ot(this,`values`,e=>Et(this,e))}};function Ot(e,t,n){let r=Tt(e),i=r[t]();return r!==e&&!B(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var kt=Array.prototype;function At(e,t,n,r,i,a){let o=Tt(e),s=o!==e&&!B(e),c=o[t];if(c!==kt[t]){let t=c.apply(e,a);return s?gn(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,Et(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function jt(e,t,n,r){let i=Tt(e),a=n;return i!==e&&(B(e)?n.length>3&&(a=function(t,r,i){return n.call(this,t,r,i,e)}):a=function(t,r,i){return n.call(this,t,Et(e,r),i,e)}),i[t](a,...r)}function Mt(e,t,n){let r=V(e);z(r,`iterate`,xt);let i=r[t](...n);return(i===-1||i===!1)&&mn(n[0])?(n[0]=V(n[0]),r[t](...n)):i}function Nt(e,t,n=[]){dt(),$e();let r=V(e)[t].apply(e,n);return et(),ft(),r}var Pt=b(`__proto__,__v_isRef,__isVue`),Ft=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(ae));function It(e){ae(e)||(e=String(e));let t=V(this);return z(t,`has`,e),t.hasOwnProperty(e)}var Lt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?rn:nn:i?tn:en).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=k(e);if(!r){let e;if(a&&(e=Dt[t]))return e;if(t===`hasOwnProperty`)return It}let o=Reflect.get(e,t,H(e)?e:n);if((ae(t)?Ft.has(t):Pt(t))||(r||z(e,`get`,t),i))return o;if(H(o)){let e=a&&de(t)?o:o.value;return r&&N(e)?ln(e):e}return N(o)?r?ln(o):sn(o):o}},Rt=class extends Lt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=k(e)&&de(t);if(!this._isShallow){let e=pn(i);if(!B(n)&&!pn(n)&&(i=V(i),n=V(n)),!a&&H(i)&&!H(n))return e||(i.value=n),!0}let o=a?Number(t)e,Gt=e=>Reflect.getPrototypeOf(e);function Kt(e,t,n){return function(...r){let i=this.__v_raw,a=V(i),o=ne(a),s=e===`entries`||e===Symbol.iterator&&o,c=e===`keys`&&o,l=i[e](...r),u=n?Wt:t?_n:gn;return!t&&z(a,`iterate`,c?bt:yt),{next(){let{value:e,done:t}=l.next();return t?{value:e,done:t}:{value:s?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function qt(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Jt(e,t){let n={get(n){let r=this.__v_raw,i=V(r),a=V(n);e||(I(n,a)&&z(i,`get`,n),z(i,`get`,a));let{has:o}=Gt(i),s=t?Wt:e?_n:gn;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&z(V(t),`iterate`,yt),t.size},has(t){let n=this.__v_raw,r=V(n),i=V(t);return e||(I(t,i)&&z(r,`has`,t),z(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=V(a),s=t?Wt:e?_n:gn;return!e&&z(o,`iterate`,yt),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return D(n,e?{add:qt(`add`),set:qt(`set`),delete:qt(`delete`),clear:qt(`clear`)}:{add(e){!t&&!B(e)&&!pn(e)&&(e=V(e));let n=V(this);return Gt(n).has.call(n,e)||(n.add(e),St(n,`add`,e,e)),this},set(e,n){!t&&!B(n)&&!pn(n)&&(n=V(n));let r=V(this),{has:i,get:a}=Gt(r),o=i.call(r,e);o||=(e=V(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?I(n,s)&&St(r,`set`,e,n,s):St(r,`add`,e,n),this},delete(e){let t=V(this),{has:n,get:r}=Gt(t),i=n.call(t,e);i||=(e=V(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&St(t,`delete`,e,void 0,a),o},clear(){let e=V(this),t=e.size!==0,n=e.clear();return t&&St(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Kt(r,e,t)}),n}function Yt(e,t){let n=Jt(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(O(n,r)&&r in t?n:t,r,i)}var Xt={get:Yt(!1,!1)},Zt={get:Yt(!1,!0)},Qt={get:Yt(!0,!1)},$t={get:Yt(!0,!0)},en=new WeakMap,tn=new WeakMap,nn=new WeakMap,rn=new WeakMap;function an(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function on(e){return e.__v_skip||!Object.isExtensible(e)?0:an(le(e))}function sn(e){return pn(e)?e:dn(e,!1,Bt,Xt,en)}function cn(e){return dn(e,!1,Ht,Zt,tn)}function ln(e){return dn(e,!0,Vt,Qt,nn)}function un(e){return dn(e,!0,Ut,$t,rn)}function dn(e,t,n,r,i){if(!N(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;let a=on(e);if(a===0)return e;let o=i.get(e);if(o)return o;let s=new Proxy(e,a===2?r:n);return i.set(e,s),s}function fn(e){return pn(e)?fn(e.__v_raw):!!(e&&e.__v_isReactive)}function pn(e){return!!(e&&e.__v_isReadonly)}function B(e){return!!(e&&e.__v_isShallow)}function mn(e){return e?!!e.__v_raw:!1}function V(e){let t=e&&e.__v_raw;return t?V(t):e}function hn(e){return!O(e,`__v_skip`)&&Object.isExtensible(e)&&ye(e,`__v_skip`,!0),e}var gn=e=>N(e)?sn(e):e,_n=e=>N(e)?ln(e):e;function H(e){return e?e.__v_isRef===!0:!1}function vn(e){return bn(e,!1)}function yn(e){return bn(e,!0)}function bn(e,t){return H(e)?e:new xn(e,t)}var xn=class{constructor(e,t){this.dep=new gt,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:V(e),this._value=t?e:gn(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||B(e)||pn(e);e=n?e:V(e),I(e,t)&&(this._rawValue=e,this._value=n?e:gn(e),this.dep.trigger())}};function Sn(e){e.dep&&e.dep.trigger()}function Cn(e){return H(e)?e.value:e}function wn(e){return j(e)?e():Cn(e)}var Tn={get:(e,t,n)=>t===`__v_raw`?e:Cn(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return H(i)&&!H(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function En(e){return fn(e)?e:new Proxy(e,Tn)}var Dn=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new gt,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function On(e){return new Dn(e)}function kn(e){let t=k(e)?Array(e.length):{};for(let n in e)t[n]=Nn(e,n);return t}var An=class{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._raw=V(e);let r=!0,i=e;if(!k(e)||!de(String(t)))do r=!mn(i)||B(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let e=this._object[this._key];return this._shallow&&(e=Cn(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&H(this._raw[this._key])){let t=this._object[this._key];if(H(t)){t.value=e;return}}this._object[this._key]=e}get dep(){return Ct(this._raw,this._key)}},jn=class{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}};function Mn(e,t,n){return H(e)?e:j(e)?new jn(e):N(e)&&arguments.length>1?Nn(e,t,n):vn(e)}function Nn(e,t,n){return new An(e,t,n)}var Pn=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new gt(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=mt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&R!==this)return Qe(this,!0),!0}get value(){let e=this.dep.track();return it(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function Fn(e,t,n=!1){let r,i;return j(e)?r=e:(r=e.get,i=e.set),new Pn(r,i,n)}var In={GET:`get`,HAS:`has`,ITERATE:`iterate`},Ln={SET:`set`,ADD:`add`,DELETE:`delete`,CLEAR:`clear`},Rn={},zn=new WeakMap,Bn=void 0;function Vn(){return Bn}function Hn(e,t=!1,n=Bn){if(n){let t=zn.get(n);t||zn.set(n,t=[]),t.push(e)}}function Un(e,t,n=x){let{immediate:r,deep:i,once:a,scheduler:o,augmentJob:s,call:c}=n,l=e=>i?e:B(e)||i===!1||i===0?Wn(e,1):Wn(e),u,d,f,p,m=!1,h=!1;if(H(e)?(d=()=>e.value,m=B(e)):fn(e)?(d=()=>l(e),m=!0):k(e)?(h=!0,m=e.some(e=>fn(e)||B(e)),d=()=>e.map(e=>{if(H(e))return e.value;if(fn(e))return l(e);if(j(e))return c?c(e,2):e()})):d=j(e)?t?c?()=>c(e,2):e:()=>{if(f){dt();try{f()}finally{ft()}}let t=Bn;Bn=u;try{return c?c(e,3,[p]):e(p)}finally{Bn=t}}:C,t&&i){let e=d,t=i===!0?1/0:i;d=()=>Wn(e(),t)}let g=Ge(),_=()=>{u.stop(),g&&g.active&&ee(g.effects,u)};if(a&&t){let e=t;t=(...t)=>{e(...t),_()}}let v=h?Array(e.length).fill(Rn):Rn,y=e=>{if(!(!(u.flags&1)||!u.dirty&&!e))if(t){let e=u.run();if(i||m||(h?e.some((e,t)=>I(e,v[t])):I(e,v))){f&&f();let n=Bn;Bn=u;try{let n=[e,v===Rn?void 0:h&&v[0]===Rn?[]:v,p];v=e,c?c(t,3,n):t(...n)}finally{Bn=n}}}else u.run()};return s&&s(y),u=new Je(d),u.scheduler=o?()=>o(y,!1):y,p=e=>Hn(e,!1,u),f=u.onStop=()=>{let e=zn.get(u);if(e){if(c)c(e,4);else for(let t of e)t();zn.delete(u)}},t?r?y(!0):v=u.run():o?o(y.bind(null,!0),!0):u.run(),_.pause=u.pause.bind(u),_.resume=u.resume.bind(u),_.stop=_,_}function Wn(e,t=1/0,n){if(t<=0||!N(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,H(e))Wn(e.value,t,n);else if(k(e))for(let r=0;r{Wn(e,t,n)});else if(ue(e)){for(let r in e)Wn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Wn(e[r],t,n)}return e}var Gn=[];function Kn(e){Gn.push(e)}function qn(){Gn.pop()}function Jn(e,t){}var Yn={SETUP_FUNCTION:0,0:`SETUP_FUNCTION`,RENDER_FUNCTION:1,1:`RENDER_FUNCTION`,NATIVE_EVENT_HANDLER:5,5:`NATIVE_EVENT_HANDLER`,COMPONENT_EVENT_HANDLER:6,6:`COMPONENT_EVENT_HANDLER`,VNODE_HOOK:7,7:`VNODE_HOOK`,DIRECTIVE_HOOK:8,8:`DIRECTIVE_HOOK`,TRANSITION_HOOK:9,9:`TRANSITION_HOOK`,APP_ERROR_HANDLER:10,10:`APP_ERROR_HANDLER`,APP_WARN_HANDLER:11,11:`APP_WARN_HANDLER`,FUNCTION_REF:12,12:`FUNCTION_REF`,ASYNC_COMPONENT_LOADER:13,13:`ASYNC_COMPONENT_LOADER`,SCHEDULER:14,14:`SCHEDULER`,COMPONENT_UPDATE:15,15:`COMPONENT_UPDATE`,APP_UNMOUNT_CLEANUP:16,16:`APP_UNMOUNT_CLEANUP`},Xn={sp:`serverPrefetch hook`,bc:`beforeCreate hook`,c:`created hook`,bm:`beforeMount hook`,m:`mounted hook`,bu:`beforeUpdate hook`,u:`updated`,bum:`beforeUnmount hook`,um:`unmounted hook`,a:`activated hook`,da:`deactivated hook`,ec:`errorCaptured hook`,rtc:`renderTracked hook`,rtg:`renderTriggered hook`,0:`setup function`,1:`render function`,2:`watcher getter`,3:`watcher callback`,4:`watcher cleanup function`,5:`native event handler`,6:`component event handler`,7:`vnode hook`,8:`directive hook`,9:`transition hook`,10:`app errorHandler`,11:`app warnHandler`,12:`ref function`,13:`async component loader`,14:`scheduler flush`,15:`component update`,16:`app unmount cleanup function`};function Zn(e,t,n,r){try{return r?e(...r):e()}catch(e){$n(e,t,n)}}function Qn(e,t,n,r){if(j(e)){let i=Zn(e,t,n,r);return i&&oe(i)&&i.catch(e=>{$n(e,t,n)}),i}if(k(e)){let i=[];for(let a=0;a>>1,i=U[r],a=mr(i);a=mr(n)?U.push(e):U.splice(cr(t),0,e),e.flags|=1,ur()}}function ur(){or||=ar.then(hr)}function dr(e){k(e)?nr.push(...e):rr&&e.id===-1?rr.splice(ir+1,0,e):e.flags&1||(nr.push(e),e.flags|=1),ur()}function fr(e,t,n=tr+1){for(;nmr(e)-mr(t));if(nr.length=0,rr){rr.push(...e);return}for(rr=e,ir=0;ire.id==null?e.flags&2?-1:1/0:e.id;function hr(e){try{for(tr=0;trgr.emit(e,...t)),_r=[]):typeof window<`u`&&window.HTMLElement&&!(window.navigator?.userAgent)?.includes(`jsdom`)?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(e=>{vr(e,t)}),setTimeout(()=>{gr||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,_r=[])},3e3)):_r=[]}var W=null,yr=null;function br(e){let t=W;return W=e,yr=e&&e.type.__scopeId||null,t}function xr(e){yr=e}function Sr(){yr=null}var Cr=e=>wr;function wr(e,t=W,n){if(!t||e._n)return e;let r=(...n)=>{r._d&&fs(-1);let i=br(t),a;try{a=e(...n)}finally{br(i),r._d&&fs(1)}return a};return r._n=!0,r._c=!0,r._d=!0,r}function Tr(e,t){if(W===null)return e;let n=Qs(W),r=e.dirs||=[];for(let e=0;ee.__isTeleport,kr=e=>e&&(e.disabled||e.disabled===``),Ar=e=>e&&(e.defer||e.defer===``),jr=e=>typeof SVGElement<`u`&&e instanceof SVGElement,Mr=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,Nr=(e,t)=>{let n=e&&e.to;return M(n)?t?t(n):null:n},Pr={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g}}=l,_=kr(t.props),{shapeFlag:v,children:y,dynamicChildren:b}=t;if(e==null){let e=t.el=h(``),l=t.anchor=h(``);p(e,n,r),p(l,n,r);let d=(e,t)=>{v&16&&u(y,e,t,i,a,o,s,c)},f=()=>{let e=t.target=Nr(t.props,m),n=zr(e,t,h,p);e&&(o!==`svg`&&jr(e)?o=`svg`:o!==`mathml`&&Mr(e)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(e),_||(d(e,n),Rr(t,!1)))};_&&(d(n,l),Rr(t,!0)),Ar(t.props)?(t.el.__isMounted=!1,K(()=>{f(),delete t.el.__isMounted},a)):f()}else{if(Ar(t.props)&&e.el.__isMounted===!1){K(()=>{Pr.process(e,t,n,r,i,a,o,s,c,l)},a);return}t.el=e.el,t.targetStart=e.targetStart;let u=t.anchor=e.anchor,p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=kr(e.props),v=g?n:p,y=g?u:h;if(o===`svg`||jr(p)?o=`svg`:(o===`mathml`||Mr(p))&&(o=`mathml`),b?(f(e.dynamicChildren,b,v,i,a,o,s),Uo(e,t,!0)):c||d(e,t,v,y,i,a,o,s,!1),_)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Fr(t,n,u,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=t.target=Nr(t.props,m);e&&Fr(t,e,null,l,0)}else g&&Fr(t,p,h,l,1);Rr(t,_)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e;if(d&&(i(l),i(u)),a&&i(c),o&16){let e=a||!kr(f);for(let i=0;i{e.isMounted=!0}),Wi(()=>{e.isUnmounting=!0}),e}var Ur=[Function,Array],Wr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ur,onEnter:Ur,onAfterEnter:Ur,onEnterCancelled:Ur,onBeforeLeave:Ur,onLeave:Ur,onAfterLeave:Ur,onLeaveCancelled:Ur,onBeforeAppear:Ur,onAppear:Ur,onAfterAppear:Ur,onAppearCancelled:Ur},Gr=e=>{let t=e.subTree;return t.component?Gr(t.component):t},Kr={name:`BaseTransition`,props:Wr,setup(e,{slots:t}){let n=Q(),r=Hr();return()=>{let i=t.default&&ei(t.default(),!0);if(!i||!i.length)return;let a=qr(i),o=V(e),{mode:s}=o;if(r.isLeaving)return Zr(a);let c=Qr(a);if(!c)return Zr(a);let l=Xr(c,o,r,n,e=>l=e);c.type!==J&&$r(c,l);let u=n.subTree&&Qr(n.subTree);if(u&&u.type!==J&&!_s(u,c)&&Gr(n).type!==J){let e=Xr(u,o,r,n);if($r(u,e),s===`out-in`&&c.type!==J)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},Zr(a);s===`in-out`&&c.type!==J?e.delayLeave=(e,t,n)=>{let i=Yr(r,u);i[String(u.key)]=u,e[Br]=()=>{t(),e[Br]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function qr(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==J){t=n;break}}return t}var Jr=Kr;function Yr(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Xr(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:m,onLeaveCancelled:h,onBeforeAppear:g,onAppear:_,onAfterAppear:v,onAppearCancelled:y}=t,b=String(e.key),x=Yr(n,e),S=(e,t)=>{e&&Qn(e,r,9,t)},C=(e,t)=>{let n=t[1];S(e,t),k(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},w={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted)if(a)r=g||c;else return;t[Br]&&t[Br](!0);let i=x[b];i&&_s(e,i)&&i.el[Br]&&i.el[Br](),S(r,[t])},enter(e){let t=l,r=u,i=d;if(!n.isMounted)if(a)t=_||l,r=v||u,i=y||d;else return;let o=!1,s=e[Vr]=t=>{o||(o=!0,S(t?i:r,[e]),w.delayedLeave&&w.delayedLeave(),e[Vr]=void 0)};t?C(t,[e,s]):s()},leave(t,r){let i=String(e.key);if(t[Vr]&&t[Vr](!0),n.isUnmounting)return r();S(f,[t]);let a=!1,o=t[Br]=n=>{a||(a=!0,r(),S(n?h:m,[t]),t[Br]=void 0,x[i]===e&&delete x[i])};x[i]=e,p?C(p,[t,o]):o()},clone(e){let a=Xr(e,t,n,r,i);return i&&i(a),a}};return w}function Zr(e){if(ki(e))return e=ws(e),e.children=null,e}function Qr(e){if(!ki(e))return Or(e.type)&&e.children?qr(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&j(n.default))return n.default()}}function $r(e,t){e.shapeFlag&6&&e.component?(e.transition=t,$r(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ei(e,t=!1,n){let r=[],i=0;for(let a=0;a1)for(let e=0;eD({name:e.name},t,{setup:e}))():e}function ni(){let e=Q();return e?(e.appContext.config.idPrefix||`v`)+`-`+e.ids[0]+ e.ids[1]++:``}function ri(e){e.ids=[e.ids[0]+ e.ids[2]+++`-`,0,0]}function ii(e){let t=Q(),n=yn(null);if(t){let r=t.refs===x?t.refs={}:t.refs;Object.defineProperty(r,e,{enumerable:!0,get:()=>n.value,set:e=>n.value=e})}return n}var ai=new WeakMap;function oi(e,t,n,r,i=!1){if(k(e)){e.forEach((e,a)=>oi(e,t&&(k(t)?t[a]:t),n,r,i));return}if(Ei(r)&&!i){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&oi(e,t,n,r.component.subTree);return}let a=r.shapeFlag&4?Qs(r.component):r.el,o=i?null:a,{i:s,r:c}=e,l=t&&t.r,u=s.refs===x?s.refs={}:s.refs,d=s.setupState,f=V(d),p=d===x?w:e=>O(f,e),m=e=>!0;if(l!=null&&l!==c){if(si(t),M(l))u[l]=null,p(l)&&(d[l]=null);else if(H(l)){m(l)&&(l.value=null);let e=t;e.k&&(u[e.k]=null)}}if(j(c))Zn(c,s,12,[o,u]);else{let t=M(c),r=H(c);if(t||r){let s=()=>{if(e.f){let n=t?p(c)?d[c]:u[c]:m(c)||!e.k?c.value:u[e.k];if(i)k(n)&&ee(n,a);else if(k(n))n.includes(a)||n.push(a);else if(t)u[c]=[a],p(c)&&(d[c]=u[c]);else{let t=[a];m(c)&&(c.value=t),e.k&&(u[e.k]=t)}}else t?(u[c]=o,p(c)&&(d[c]=o)):r&&(m(c)&&(c.value=o),e.k&&(u[e.k]=o))};if(o){let t=()=>{s(),ai.delete(e)};t.id=-1,ai.set(e,t),K(t,n)}else si(e),s()}}}function si(e){let t=ai.get(e);t&&(t.flags|=8,ai.delete(e))}var ci=!1,li=()=>{ci||=(console.error(`Hydration completed but contains mismatches.`),!0)},ui=e=>e.namespaceURI.includes(`svg`)&&e.tagName!==`foreignObject`,di=e=>e.namespaceURI.includes(`MathML`),fi=e=>{if(e.nodeType===1){if(ui(e))return`svg`;if(di(e))return`mathml`}},pi=e=>e.nodeType===8;function mi(e){let{mt:t,p:n,o:{patchProp:r,createText:i,nextSibling:a,parentNode:o,remove:s,insert:c,createComment:l}}=e,u=(e,t)=>{if(!t.hasChildNodes()){n(null,e,t),pr(),t._vnode=e;return}d(t.firstChild,e,null,null,null),pr(),t._vnode=e},d=(n,r,s,l,u,y=!1)=>{y||=!!r.dynamicChildren;let b=pi(n)&&n.data===`[`,x=()=>h(n,r,s,l,u,b),{type:S,ref:C,shapeFlag:w,patchFlag:T}=r,E=n.nodeType;r.el=n,T===-2&&(y=!1,r.dynamicChildren=null);let D=null;switch(S){case os:E===3?(n.data!==r.children&&(li(),n.data=r.children),D=a(n)):r.children===``?(c(r.el=i(``),o(n),n),D=n):D=x();break;case J:v(n)?(D=a(n),_(r.el=n.content.firstChild,n,s)):D=E!==8||b?x():a(n);break;case ss:if(b&&(n=a(n),E=n.nodeType),E===1||E===3){D=n;let e=!r.children.length;for(let t=0;t{o||=!!t.dynamicChildren;let{type:c,props:l,patchFlag:u,shapeFlag:d,dirs:f,transition:m}=t,h=c===`input`||c===`option`;if(h||u!==-1){f&&Er(t,null,n,`created`);let c=!1;if(v(e)){c=Ho(null,m)&&n&&n.vnode.props&&n.vnode.props.appear;let r=e.content.firstChild;if(c){let e=r.getAttribute(`class`);e&&(r.$cls=e),m.beforeEnter(r)}_(r,e,n),t.el=e=r}if(d&16&&!(l&&(l.innerHTML||l.textContent))){let r=p(e.firstChild,t,e,n,i,a,o);for(;r;){_i(e,1)||li();let t=r;r=r.nextSibling,s(t)}}else if(d&8){let n=t.children;n[0]===` -`&&(e.tagName===`PRE`||e.tagName===`TEXTAREA`)&&(n=n.slice(1));let{textContent:r}=e;r!==n&&r!==n.replace(/\r\n|\r/g,` -`)&&(_i(e,0)||li(),e.textContent=t.children)}if(l){if(h||!o||u&48){let t=e.tagName.includes(`-`);for(let i in l)(h&&(i.endsWith(`value`)||i===`indeterminate`)||T(i)&&!fe(i)||i[0]===`.`||t)&&r(e,i,null,l[i],void 0,n)}else if(l.onClick)r(e,`onClick`,null,l.onClick,void 0,n);else if(u&4&&fn(l.style))for(let e in l.style)l.style[e]}let g;(g=l&&l.onVnodeBeforeMount)&&Ms(g,n,t),f&&Er(t,null,n,`beforeMount`),((g=l&&l.onVnodeMounted)||f||c)&&rs(()=>{g&&Ms(g,n,t),c&&m.enter(e),f&&Er(t,null,n,`mounted`)},i)}return e.nextSibling},p=(e,t,r,o,s,l,u)=>{u||=!!t.dynamicChildren;let f=t.children,p=f.length;for(let t=0;t{let{slotScopeIds:u}=t;u&&(i=i?i.concat(u):u);let d=o(e),f=p(a(e),t,d,n,r,i,s);return f&&pi(f)&&f.data===`]`?a(t.anchor=f):(li(),c(t.anchor=l(`]`),d,f),f)},h=(e,t,r,i,c,l)=>{if(_i(e.parentElement,1)||li(),t.el=null,l){let t=g(e);for(;;){let n=a(e);if(n&&n!==t)s(n);else break}}let u=a(e),d=o(e);return s(e),n(null,t,d,u,r,i,fi(d),c),r&&(r.vnode.el=t.el,vo(r,t.el)),u},g=(e,t=`[`,n=`]`)=>{let r=0;for(;e;)if(e=a(e),e&&pi(e)&&(e.data===t&&r++,e.data===n)){if(r===0)return a(e);r--}return e},_=(e,t,n)=>{let r=t.parentNode;r&&r.replaceChild(e,t);let i=n;for(;i;)i.vnode.el===t&&(i.vnode.el=i.subTree.el=e),i=i.parent},v=e=>e.nodeType===1&&e.tagName===`TEMPLATE`;return[u,d]}var hi=`data-allow-mismatch`,gi={0:`text`,1:`children`,2:`class`,3:`style`,4:`attribute`};function _i(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(hi);)e=e.parentElement;let n=e&&e.getAttribute(hi);if(n==null)return!1;if(n===``)return!0;{let e=n.split(`,`);return t===0&&e.includes(`children`)?!0:e.includes(gi[t])}}var vi=Ce().requestIdleCallback||(e=>setTimeout(e,1)),yi=Ce().cancelIdleCallback||(e=>clearTimeout(e)),bi=(e=1e4)=>t=>{let n=vi(t,{timeout:e});return()=>yi(n)};function xi(e){let{top:t,left:n,bottom:r,right:i}=e.getBoundingClientRect(),{innerHeight:a,innerWidth:o}=window;return(t>0&&t0&&r0&&n0&&i(t,n)=>{let r=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){r.disconnect(),t();break}},e);return n(e=>{if(e instanceof Element){if(xi(e))return t(),r.disconnect(),!1;r.observe(e)}}),()=>r.disconnect()},Ci=e=>t=>{if(e){let n=matchMedia(e);if(n.matches)t();else return n.addEventListener(`change`,t,{once:!0}),()=>n.removeEventListener(`change`,t)}},wi=(e=[])=>(t,n)=>{M(e)&&(e=[e]);let r=!1,i=e=>{r||(r=!0,a(),t(),e.target.dispatchEvent(new e.constructor(e.type,e)))},a=()=>{n(t=>{for(let n of e)t.removeEventListener(n,i)})};return n(t=>{for(let n of e)t.addEventListener(n,i,{once:!0})}),a};function Ti(e,t){if(pi(e)&&e.data===`[`){let n=1,r=e.nextSibling;for(;r;){if(r.nodeType===1){if(t(r)===!1)break}else if(pi(r))if(r.data===`]`){if(--n===0)break}else r.data===`[`&&n++;r=r.nextSibling}}else t(e)}var Ei=e=>!!e.type.__asyncLoader;function Di(e){j(e)&&(e={loader:e});let{loader:t,loadingComponent:n,errorComponent:r,delay:i=200,hydrate:a,timeout:o,suspensible:s=!0,onError:c}=e,l=null,u,d=0,f=()=>(d++,l=null,p()),p=()=>{let e;return l||(e=l=t().catch(e=>{if(e=e instanceof Error?e:Error(String(e)),c)return new Promise((t,n)=>{c(e,()=>t(f()),()=>n(e),d+1)});throw e}).then(t=>e!==l&&l?l:(t&&(t.__esModule||t[Symbol.toStringTag]===`Module`)&&(t=t.default),u=t,t)))};return ti({name:`AsyncComponentWrapper`,__asyncLoader:p,__asyncHydrate(e,t,n){let r=!1;(t.bu||=[]).push(()=>r=!0);let i=()=>{r||n()},o=a?()=>{let n=a(i,t=>Ti(e,t));n&&(t.bum||=[]).push(n)}:i;u?o():p().then(()=>!t.isUnmounted&&o())},get __asyncResolved(){return u},setup(){let e=Z;if(ri(e),u)return()=>Oi(u,e);let t=t=>{l=null,$n(t,e,13,!r)};if(s&&e.suspense||Vs)return p().then(t=>()=>Oi(t,e)).catch(e=>(t(e),()=>r?X(r,{error:e}):null));let a=vn(!1),c=vn(),d=vn(!!i);return i&&setTimeout(()=>{d.value=!1},i),o!=null&&setTimeout(()=>{if(!a.value&&!c.value){let e=Error(`Async component timed out after ${o}ms.`);t(e),c.value=e}},o),p().then(()=>{a.value=!0,e.parent&&ki(e.parent.vnode)&&e.parent.update()}).catch(e=>{t(e),c.value=e}),()=>{if(a.value&&u)return Oi(u,e);if(c.value&&r)return X(r,{error:c.value});if(n&&!d.value)return Oi(n,e)}}})}function Oi(e,t){let{ref:n,props:r,children:i,ce:a}=t.vnode,o=X(e,r,i);return o.ref=n,o.ce=a,delete t.vnode.ce,o}var ki=e=>e.type.__isKeepAlive,Ai={name:`KeepAlive`,__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){let n=Q(),r=n.ctx;if(!r.renderer)return()=>{let e=t.default&&t.default();return e&&e.length===1?e[0]:e};let i=new Map,a=new Set,o=null,s=n.suspense,{renderer:{p:c,m:l,um:u,o:{createElement:d}}}=r,f=d(`div`);r.activate=(e,t,n,r,i)=>{let a=e.component;l(e,t,n,0,s),c(a.vnode,e,t,n,a,s,r,e.slotScopeIds,i),K(()=>{a.isDeactivated=!1,a.a&&ve(a.a);let t=e.props&&e.props.onVnodeMounted;t&&Ms(t,a.parent,e)},s)},r.deactivate=e=>{let t=e.component;Ko(t.m),Ko(t.a),l(e,f,null,1,s),K(()=>{t.da&&ve(t.da);let n=e.props&&e.props.onVnodeUnmounted;n&&Ms(n,t.parent,e),t.isDeactivated=!0},s)};function p(e){Ii(e),u(e,n,s,!0)}function m(e){i.forEach((t,n)=>{let r=$s(t.type);r&&!e(r)&&h(n)})}function h(e){let t=i.get(e);t&&(!o||!_s(t,o))?p(t):o&&Ii(o),i.delete(e),a.delete(e)}to(()=>[e.include,e.exclude],([e,t])=>{e&&m(t=>ji(e,t)),t&&m(e=>!ji(t,e))},{flush:`post`,deep:!0});let g=null,_=()=>{g!=null&&(qo(n.subTree.type)?K(()=>{i.set(g,Li(n.subTree))},n.subTree.suspense):i.set(g,Li(n.subTree)))};return Vi(_),Ui(_),Wi(()=>{i.forEach(e=>{let{subTree:t,suspense:r}=n,i=Li(t);if(e.type===i.type&&e.key===i.key){Ii(i);let e=i.component.da;e&&K(e,r);return}p(e)})}),()=>{if(g=null,!t.default)return o=null;let n=t.default(),r=n[0];if(n.length>1)return o=null,n;if(!gs(r)||!(r.shapeFlag&4)&&!(r.shapeFlag&128))return o=null,r;let s=Li(r);if(s.type===J)return o=null,s;let c=s.type,l=$s(Ei(s)?s.type.__asyncResolved||{}:c),{include:u,exclude:d,max:f}=e;if(u&&(!l||!ji(u,l))||d&&l&&ji(d,l))return s.shapeFlag&=-257,o=s,r;let p=s.key==null?c:s.key,m=i.get(p);return s.el&&(s=ws(s),r.shapeFlag&128&&(r.ssContent=s)),g=p,m?(s.el=m.el,s.component=m.component,s.transition&&$r(s,s.transition),s.shapeFlag|=512,a.delete(p),a.add(p)):(a.add(p),f&&a.size>parseInt(f,10)&&h(a.values().next().value)),s.shapeFlag|=256,o=s,qo(r.type)?r:s}}};function ji(e,t){return k(e)?e.some(e=>ji(e,t)):M(e)?e.split(`,`).includes(t):ie(e)?(e.lastIndex=0,e.test(t)):!1}function Mi(e,t){Pi(e,`a`,t)}function Ni(e,t){Pi(e,`da`,t)}function Pi(e,t,n=Z){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(Ri(t,r,n),n){let e=n.parent;for(;e&&e.parent;)ki(e.parent.vnode)&&Fi(r,t,n,e),e=e.parent}}function Fi(e,t,n,r){let i=Ri(t,e,r,!0);Gi(()=>{ee(r[t],i)},n)}function Ii(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Li(e){return e.shapeFlag&128?e.ssContent:e}function Ri(e,t,n=Z,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{dt();let i=Rs(n),a=Qn(t,n,e,r);return i(),ft(),a};return r?i.unshift(a):i.push(a),a}}var zi=e=>(t,n=Z)=>{(!Vs||e===`sp`)&&Ri(e,(...e)=>t(...e),n)},Bi=zi(`bm`),Vi=zi(`m`),Hi=zi(`bu`),Ui=zi(`u`),Wi=zi(`bum`),Gi=zi(`um`),Ki=zi(`sp`),qi=zi(`rtg`),Ji=zi(`rtc`);function Yi(e,t=Z){Ri(`ec`,e,t)}var Xi=`components`,Zi=`directives`;function Qi(e,t){return na(Xi,e,!0,t)||e}var $i=Symbol.for(`v-ndc`);function ea(e){return M(e)?na(Xi,e,!1)||e:e||$i}function ta(e){return na(Zi,e)}function na(e,t,n=!0,r=!1){let i=W||Z;if(i){let n=i.type;if(e===Xi){let e=$s(n,!1);if(e&&(e===t||e===P(t)||e===ge(P(t))))return n}let a=ra(i[e]||n[e],t)||ra(i.appContext[e],t);return!a&&r?n:a}}function ra(e,t){return e&&(e[t]||e[P(t)]||e[ge(P(t))])}function ia(e,t,n,r){let i,a=n&&n[r],o=k(e);if(o||M(e)){let n=o&&fn(e),r=!1,s=!1;n&&(r=!B(e),s=pn(e),e=Tt(e)),i=Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r{let t=r.fn(...e);return t&&(t.key=r.key),t}:r.fn)}return e}function oa(e,t,n={},r,i){if(W.ce||W.parent&&Ei(W.parent)&&W.parent.ce){let e=Object.keys(n).length>0;return t!==`default`&&(n.name=t),ls(),hs(q,null,[X(`slot`,n,r&&r())],e?-2:64)}let a=e[t];a&&a._c&&(a._d=!1),ls();let o=a&&sa(a(n)),s=n.key||o&&o.key,c=hs(q,{key:(s&&!ae(s)?s:`_${t}`)+(!o&&r?`_fb`:``)},o||(r?r():[]),o&&e._===1?64:-2);return!i&&c.scopeId&&(c.slotScopeIds=[c.scopeId+`-s`]),a&&a._c&&(a._d=!0),c}function sa(e){return e.some(e=>gs(e)?!(e.type===J||e.type===q&&!sa(e.children)):!0)?e:null}function ca(e,t){let n={};for(let r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:_e(r)]=e[r];return n}var la=e=>e?Bs(e)?Qs(e):la(e.parent):null,ua=D(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>la(e.parent),$root:e=>la(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Pa(e),$forceUpdate:e=>e.f||=()=>{lr(e.update)},$nextTick:e=>e.n||=sr.bind(e.proxy),$watch:e=>ro.bind(e)}),da=(e,t)=>e!==x&&!e.__isScriptSetup&&O(e,t),fa={get({_:e},t){if(t===`__v_skip`)return!0;let{ctx:n,setupState:r,data:i,props:a,accessCache:o,type:s,appContext:c}=e;if(t[0]!==`$`){let e=o[t];if(e!==void 0)switch(e){case 1:return r[t];case 2:return i[t];case 4:return n[t];case 3:return a[t]}else if(da(r,t))return o[t]=1,r[t];else if(i!==x&&O(i,t))return o[t]=2,i[t];else if(O(a,t))return o[t]=3,a[t];else if(n!==x&&O(n,t))return o[t]=4,n[t];else ka&&(o[t]=0)}let l=ua[t],u,d;if(l)return t===`$attrs`&&z(e.attrs,`get`,``),l(e);if((u=s.__cssModules)&&(u=u[t]))return u;if(n!==x&&O(n,t))return o[t]=4,n[t];if(d=c.config.globalProperties,O(d,t))return d[t]},set({_:e},t,n){let{data:r,setupState:i,ctx:a}=e;return da(i,t)?(i[t]=n,!0):r!==x&&O(r,t)?(r[t]=n,!0):O(e.props,t)||t[0]===`$`&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,props:a,type:o}},s){let c;return!!(n[s]||e!==x&&s[0]!==`$`&&O(e,s)||da(t,s)||O(a,s)||O(r,s)||O(ua,s)||O(i.config.globalProperties,s)||(c=o.__cssModules)&&c[s])},defineProperty(e,t,n){return n.get==null?O(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}},pa=D({},fa,{get(e,t){if(t!==Symbol.unscopables)return fa.get(e,t,e)},has(e,t){return t[0]!==`_`&&!we(t)}});function ma(){return null}function ha(){return null}function ga(e){}function _a(e){}function va(){return null}function ya(){}function ba(e,t){return null}function xa(){return Ca(`useSlots`).slots}function Sa(){return Ca(`useAttrs`).attrs}function Ca(e){let t=Q();return t.setupContext||=Zs(t)}function wa(e){return k(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}function Ta(e,t){let n=wa(e);for(let e in t){if(e.startsWith(`__skip`))continue;let r=n[e];r?k(r)||j(r)?r=n[e]={type:r,default:t[e]}:r.default=t[e]:r===null&&(r=n[e]={default:t[e]}),r&&t[`__skip_${e}`]&&(r.skipFactory=!0)}return n}function Ea(e,t){return!e||!t?e||t:k(e)&&k(t)?e.concat(t):D({},wa(e),wa(t))}function Da(e,t){let n={};for(let r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function Oa(e){let t=Q(),n=e();return zs(),oe(n)&&(n=n.catch(e=>{throw Rs(t),e})),[n,()=>Rs(t)]}var ka=!0;function Aa(e){let t=Pa(e),n=e.proxy,r=e.ctx;ka=!1,t.beforeCreate&&Ma(t.beforeCreate,e,`bc`);let{data:i,computed:a,methods:o,watch:s,provide:c,inject:l,created:u,beforeMount:d,mounted:f,beforeUpdate:p,updated:m,activated:h,deactivated:g,beforeDestroy:_,beforeUnmount:v,destroyed:y,unmounted:b,render:x,renderTracked:S,renderTriggered:w,errorCaptured:T,serverPrefetch:E,expose:D,inheritAttrs:ee,components:te,directives:O,filters:ne}=t;if(l&&ja(l,r,null),o)for(let e in o){let t=o[e];j(t)&&(r[e]=t.bind(n))}if(i){let t=i.call(n,n);N(t)&&(e.data=sn(t))}if(ka=!0,a)for(let e in a){let t=a[e],i=tc({get:j(t)?t.bind(n,n):j(t.get)?t.get.bind(n,n):C,set:!j(t)&&j(t.set)?t.set.bind(n):C});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e})}if(s)for(let e in s)Na(s[e],r,n,e);if(c){let e=j(c)?c.call(n):c;Reflect.ownKeys(e).forEach(t=>{qa(t,e[t])})}u&&Ma(u,e,`c`);function A(e,t){k(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(A(Bi,d),A(Vi,f),A(Hi,p),A(Ui,m),A(Mi,h),A(Ni,g),A(Yi,T),A(Ji,S),A(qi,w),A(Wi,v),A(Gi,b),A(Ki,E),k(D))if(D.length){let t=e.exposed||={};D.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={};x&&e.render===C&&(e.render=x),ee!=null&&(e.inheritAttrs=ee),te&&(e.components=te),O&&(e.directives=O),E&&ri(e)}function ja(e,t,n=C){for(let n in k(e)&&(e=za(e)),e){let r=e[n],i;i=N(r)?`default`in r?Ja(r.from||n,r.default,!0):Ja(r.from||n):Ja(r),H(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function Ma(e,t,n){Qn(k(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function Na(e,t,n,r){let i=r.includes(`.`)?io(n,r):()=>n[r];if(M(e)){let n=t[e];j(n)&&to(i,n)}else if(j(e))to(i,e.bind(n));else if(N(e))if(k(e))e.forEach(e=>Na(e,t,n,r));else{let r=j(e.handler)?e.handler.bind(n):t[e.handler];j(r)&&to(i,r,e)}}function Pa(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>Fa(c,e,o,!0)),Fa(c,t,o)),N(t)&&a.set(t,c),c}function Fa(e,t,n,r=!1){let{mixins:i,extends:a}=t;for(let o in a&&Fa(e,a,n,!0),i&&i.forEach(t=>Fa(e,t,n,!0)),t)if(!(r&&o===`expose`)){let r=Ia[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}var Ia={data:La,props:Va,emits:Va,methods:Ba,computed:Ba,beforeCreate:G,created:G,beforeMount:G,mounted:G,beforeUpdate:G,updated:G,beforeDestroy:G,beforeUnmount:G,destroyed:G,unmounted:G,activated:G,deactivated:G,errorCaptured:G,serverPrefetch:G,components:Ba,directives:Ba,watch:Ha,provide:La,inject:Ra};function La(e,t){return t?e?function(){return D(j(e)?e.call(this,this):e,j(t)?t.call(this,this):t)}:t:e}function Ra(e,t){return Ba(za(e),za(t))}function za(e){if(k(e)){let t={};for(let n=0;n1)return n&&j(t)?t.call(r&&r.proxy):t}}function Ya(){return!!(Q()||Ka)}var Xa=Symbol.for(`v-scx`),Za=()=>Ja(Xa);function Qa(e,t){return no(e,null,t)}function $a(e,t){return no(e,null,{flush:`post`})}function eo(e,t){return no(e,null,{flush:`sync`})}function to(e,t,n){return no(e,t,n)}function no(e,t,n=x){let{immediate:r,deep:i,flush:a,once:o}=n,s=D({},n),c=t&&r||!t&&a!==`post`,l;if(Vs){if(a===`sync`){let e=Za();l=e.__watcherHandles||=[]}else if(!c){let e=()=>{};return e.stop=C,e.resume=C,e.pause=C,e}}let u=Z;s.call=(e,t,n)=>Qn(e,u,t,n);let d=!1;a===`post`?s.scheduler=e=>{K(e,u&&u.suspense)}:a!==`sync`&&(d=!0,s.scheduler=(e,t)=>{t?e():lr(e)}),s.augmentJob=e=>{t&&(e.flags|=4),d&&(e.flags|=2,u&&(e.id=u.uid,e.i=u))};let f=Un(e,t,s);return Vs&&(l?l.push(f):c&&f()),f}function ro(e,t,n){let r=this.proxy,i=M(e)?e.includes(`.`)?io(r,e):()=>r[e]:e.bind(r,r),a;j(t)?a=t:(a=t.handler,n=t);let o=Rs(this),s=no(i,a.bind(r),n);return o(),s}function io(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;e{let c,l=x,u;return eo(()=>{let t=e[i];I(c,t)&&(c=t,s())}),{get(){return o(),n.get?n.get(c):c},set(e){let o=n.set?n.set(e):e;if(!I(o,c)&&!(l!==x&&I(e,l)))return;let d=r.vnode.props;d&&(t in d||i in d||a in d)&&(`onUpdate:${t}`in d||`onUpdate:${i}`in d||`onUpdate:${a}`in d)||(c=e,s()),r.emit(`update:${t}`,o),I(e,o)&&I(e,l)&&!I(o,u)&&s(),l=e,u=o}}});return s[Symbol.iterator]=()=>{let e=0;return{next(){return e<2?{value:e++?o||x:s,done:!1}:{done:!0}}}},s}var oo=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${P(t)}Modifiers`]||e[`${F(t)}Modifiers`];function so(e,t,...n){if(e.isUnmounted)return;let r=e.vnode.props||x,i=n,a=t.startsWith(`update:`),o=a&&oo(r,t.slice(7));o&&(o.trim&&(i=n.map(e=>M(e)?e.trim():e)),o.number&&(i=n.map(be)));let s,c=r[s=_e(t)]||r[s=_e(P(t))];!c&&a&&(c=r[s=_e(F(t))]),c&&Qn(c,e,6,i);let l=r[s+`Once`];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[s])return;e.emitted[s]=!0,Qn(l,e,6,i)}}var co=new WeakMap;function lo(e,t,n=!1){let r=n?co:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},s=!1;if(!j(e)){let r=e=>{let n=lo(e,t,!0);n&&(s=!0,D(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!s?(N(e)&&r.set(e,null),null):(k(a)?a.forEach(e=>o[e]=null):D(o,a),N(e)&&r.set(e,o),o)}function uo(e,t){return!e||!T(t)?!1:(t=t.slice(2).replace(/Once$/,``),O(e,t[0].toLowerCase()+t.slice(1))||O(e,F(t))||O(e,t))}function fo(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:o,attrs:s,emit:c,render:l,renderCache:u,props:d,data:f,setupState:p,ctx:m,inheritAttrs:h}=e,g=br(e),_,v;try{if(n.shapeFlag&4){let e=i||r,t=e;_=Os(l.call(t,e,u,d,p,f,m)),v=s}else{let e=t;_=Os(e.length>1?e(d,{attrs:s,slots:o,emit:c}):e(d,null)),v=t.props?s:mo(s)}}catch(t){cs.length=0,$n(t,e,1),_=X(J)}let y=_;if(v&&h!==!1){let e=Object.keys(v),{shapeFlag:t}=y;e.length&&t&7&&(a&&e.some(E)&&(v=ho(v,a)),y=ws(y,v,!1,!0))}return n.dirs&&(y=ws(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition&&$r(y,n.transition),_=y,br(g),_}function po(e,t=!0){let n;for(let t=0;t{let t;for(let n in e)(n===`class`||n===`style`||T(n))&&((t||={})[n]=e[n]);return t},ho=(e,t)=>{let n={};for(let r in e)(!E(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function go(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?_o(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;tObject.create(yo),xo=e=>Object.getPrototypeOf(e)===yo;function So(e,t,n,r=!1){let i={},a=bo();for(let n in e.propsDefaults=Object.create(null),wo(e,t,i,a),e.propsOptions[0])n in i||(i[n]=void 0);n?e.props=r?i:cn(i):e.type.props?e.props=i:e.props=a,e.attrs=a}function Co(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=V(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r{c=!0;let[n,r]=Do(e,t,!0);D(o,n),r&&s.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!a&&!c)return N(e)&&r.set(e,S),S;if(k(a))for(let e=0;ee===`_`||e===`_ctx`||e===`$stable`,Ao=e=>k(e)?e.map(Os):[Os(e)],jo=(e,t,n)=>{if(t._n)return t;let r=wr((...e)=>Ao(t(...e)),n);return r._c=!1,r},Mo=(e,t,n)=>{let r=e._ctx;for(let n in e){if(ko(n))continue;let i=e[n];if(j(i))t[n]=jo(n,i,r);else if(i!=null){let e=Ao(i);t[n]=()=>e}}},No=(e,t)=>{let n=Ao(t);e.slots.default=()=>n},Po=(e,t,n)=>{for(let r in t)(n||!ko(r))&&(e[r]=t[r])},Fo=(e,t,n)=>{let r=e.slots=bo();if(e.vnode.shapeFlag&32){let e=t._;e?(Po(r,t,n),n&&ye(r,`_`,e,!0)):Mo(t,r)}else t&&No(e,t)},Io=(e,t,n)=>{let{vnode:r,slots:i}=e,a=!0,o=x;if(r.shapeFlag&32){let e=t._;e?n&&e===1?a=!1:Po(i,t,n):(a=!t.$stable,Mo(t,i)),o=t}else t&&(No(e,t),o={default:1});if(a)for(let e in i)!ko(e)&&o[e]==null&&delete i[e]},K=rs;function Lo(e){return zo(e)}function Ro(e){return zo(e,mi)}function zo(e,t){let n=Ce();n.__VUE__=!0;let{insert:r,remove:i,patchProp:a,createElement:o,createText:s,createComment:c,setText:l,setElementText:u,parentNode:d,nextSibling:f,setScopeId:p=C,insertStaticContent:m}=e,h=(e,t,n,r=null,i=null,a=null,o=void 0,s=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!_s(e,t)&&(r=pe(e),se(e,i,a,!0),e=null),t.patchFlag===-2&&(c=!1,t.dynamicChildren=null);let{type:l,ref:u,shapeFlag:d}=t;switch(l){case os:g(e,t,n,r);break;case J:_(e,t,n,r);break;case ss:e??v(t,n,r,o);break;case q:k(e,t,n,r,i,a,o,s,c);break;default:d&1?w(e,t,n,r,i,a,o,s,c):d&6?ne(e,t,n,r,i,a,o,s,c):(d&64||d&128)&&l.process(e,t,n,r,i,a,o,s,c,he)}u!=null&&i?oi(u,e&&e.ref,a,t||e,!t):u==null&&e&&e.ref!=null&&oi(e.ref,null,a,e,!0)},g=(e,t,n,i)=>{if(e==null)r(t.el=s(t.children),n,i);else{let n=t.el=e.el;t.children!==e.children&&l(n,t.children)}},_=(e,t,n,i)=>{e==null?r(t.el=c(t.children||``),n,i):t.el=e.el},v=(e,t,n,r)=>{[e.el,e.anchor]=m(e.children,t,n,r,e.el,e.anchor)},y=({el:e,anchor:t},n,i)=>{let a;for(;e&&e!==t;)a=f(e),r(e,n,i),e=a;r(t,n,i)},b=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=f(e),i(e),e=n;i(t)},w=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)T(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ee(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},T=(e,t,n,i,s,c,l,d)=>{let f,p,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(f=e.el=o(e.type,c,m&&m.is,m),h&8?u(f,e.children):h&16&&D(e.children,f,null,i,s,Bo(e,c),l,d),_&&Er(e,null,i,`created`),E(f,e,e.scopeId,l,i),m){for(let e in m)e!==`value`&&!fe(e)&&a(f,e,null,m[e],c,i);`value`in m&&a(f,`value`,null,m.value,c),(p=m.onVnodeBeforeMount)&&Ms(p,i,e)}_&&Er(e,null,i,`beforeMount`);let v=Ho(s,g);v&&g.beforeEnter(f),r(f,t,n),((p=m&&m.onVnodeMounted)||v||_)&&K(()=>{p&&Ms(p,i,e),v&&g.enter(f),_&&Er(e,null,i,`mounted`)},s)},E=(e,t,n,r,i)=>{if(n&&p(e,n),r)for(let t=0;t{for(let l=c;l{let c=t.el=e.el,{patchFlag:l,dynamicChildren:d,dirs:f}=t;l|=e.patchFlag&16;let p=e.props||x,m=t.props||x,h;if(n&&Vo(n,!1),(h=m.onVnodeBeforeUpdate)&&Ms(h,n,t,e),f&&Er(t,e,n,`beforeUpdate`),n&&Vo(n,!0),(p.innerHTML&&m.innerHTML==null||p.textContent&&m.textContent==null)&&u(c,``),d?te(e.dynamicChildren,d,c,n,r,Bo(t,i),o):s||M(e,t,c,null,n,r,Bo(t,i),o,!1),l>0){if(l&16)O(c,p,m,n,i);else if(l&2&&p.class!==m.class&&a(c,`class`,null,m.class,i),l&4&&a(c,`style`,p.style,m.style,i),l&8){let e=t.dynamicProps;for(let t=0;t{h&&Ms(h,n,t,e),f&&Er(t,e,n,`updated`)},r)},te=(e,t,n,r,i,a,o)=>{for(let s=0;s{if(t!==n){if(t!==x)for(let o in t)!fe(o)&&!(o in n)&&a(e,o,t[o],null,i,r);for(let o in n){if(fe(o))continue;let s=n[o],c=t[o];s!==c&&o!==`value`&&a(e,o,c,s,i,r)}`value`in n&&a(e,`value`,t.value,n.value,i)}},k=(e,t,n,i,a,o,c,l,u)=>{let d=t.el=e?e.el:s(``),f=t.anchor=e?e.anchor:s(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(l=l?l.concat(h):h),e==null?(r(d,n,i),r(f,n,i),D(t.children||[],n,f,a,o,c,l,u)):p>0&&p&64&&m&&e.dynamicChildren?(te(e.dynamicChildren,m,n,a,o,c,l),(t.key!=null||a&&t===a.subTree)&&Uo(e,t,!0)):M(e,t,n,f,a,o,c,l,u)},ne=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):A(t,n,r,i,a,o,c):re(e,t,c)},A=(e,t,n,r,i,a,o)=>{let s=e.component=Fs(e,r,i);if(ki(e)&&(s.ctx.renderer=he),Hs(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,ie,o),!e.el){let r=s.subTree=X(J);_(null,r,t,n),e.placeholder=r.el}}else ie(s,e,t,n,i,a,o)},re=(e,t,n)=>{let r=t.component=e.component;if(go(e,t,n))if(r.asyncDep&&!r.asyncResolved){j(r,t,n);return}else r.next=t,r.update();else t.el=e.el,r.vnode=t},ie=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:c,vnode:l}=e;{let n=Go(e);if(n){t&&(t.el=l.el,j(e,t,o)),n.asyncDep.then(()=>{e.isUnmounted||s()});return}}let u=t,f;Vo(e,!1),t?(t.el=l.el,j(e,t,o)):t=l,n&&ve(n),(f=t.props&&t.props.onVnodeBeforeUpdate)&&Ms(f,c,t,l),Vo(e,!0);let p=fo(e),m=e.subTree;e.subTree=p,h(m,p,d(m.el),pe(m),e,i,a),t.el=p.el,u===null&&vo(e,p.el),r&&K(r,i),(f=t.props&&t.props.onVnodeUpdated)&&K(()=>Ms(f,c,t,l),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=Ei(t);if(Vo(e,!1),l&&ve(l),!m&&(o=c&&c.onVnodeBeforeMount)&&Ms(o,d,t),Vo(e,!0),s&&ge){let t=()=>{e.subTree=fo(e),ge(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._def.shadowRoot!==!1&&f.ce._injectChildStyle(p);let o=e.subTree=fo(e);h(null,o,n,r,e,i,a),t.el=o.el}if(u&&K(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;K(()=>Ms(o,d,e),i)}(t.shapeFlag&256||d&&Ei(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&K(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Je(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>lr(u),Vo(e,!0),l()},j=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,Co(e,t.props,r,n),Io(e,t.children,n),dt(),fr(e),ft()},M=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,d=e?e.shapeFlag:0,f=t.children,{patchFlag:p,shapeFlag:m}=t;if(p>0){if(p&128){N(l,f,n,r,i,a,o,s,c);return}else if(p&256){ae(l,f,n,r,i,a,o,s,c);return}}m&8?(d&16&&de(l,i,a),f!==l&&u(n,f)):d&16?m&16?N(l,f,n,r,i,a,o,s,c):de(l,i,a,!0):(d&8&&u(n,``),m&16&&D(f,n,r,i,a,o,s,c))},ae=(e,t,n,r,i,a,o,s,c)=>{e||=S,t||=S;let l=e.length,u=t.length,d=Math.min(l,u),f;for(f=0;fu?de(e,i,a,!0,!1,d):D(t,n,r,i,a,o,s,c,d)},N=(e,t,n,r,i,a,o,s,c)=>{let l=0,u=t.length,d=e.length-1,f=u-1;for(;l<=d&&l<=f;){let r=e[l],u=t[l]=c?ks(t[l]):Os(t[l]);if(_s(r,u))h(r,u,n,null,i,a,o,s,c);else break;l++}for(;l<=d&&l<=f;){let r=e[d],l=t[f]=c?ks(t[f]):Os(t[f]);if(_s(r,l))h(r,l,n,null,i,a,o,s,c);else break;d--,f--}if(l>d){if(l<=f){let e=f+1,d=ef)for(;l<=d;)se(e[l],i,a,!0),l++;else{let p=l,m=l,g=new Map;for(l=m;l<=f;l++){let e=t[l]=c?ks(t[l]):Os(t[l]);e.key!=null&&g.set(e.key,l)}let _,v=0,y=f-m+1,b=!1,x=0,C=Array(y);for(l=0;l=y){se(r,i,a,!0);continue}let u;if(r.key!=null)u=g.get(r.key);else for(_=m;_<=f;_++)if(C[_-m]===0&&_s(r,t[_])){u=_;break}u===void 0?se(r,i,a,!0):(C[u-m]=l+1,u>=x?x=u:b=!0,h(r,t[u],n,null,i,a,o,s,c),v++)}let w=b?Wo(C):S;for(_=w.length-1,l=y-1;l>=0;l--){let e=m+l,d=t[e],f=t[e+1],p=e+1{let{el:s,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){oe(e.component.subTree,t,n,a);return}if(d&128){e.suspense.move(t,n,a);return}if(d&64){c.move(e,t,n,he);return}if(c===q){r(s,t,n);for(let e=0;el.enter(s),o);else{let{leave:a,delayLeave:o,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?i(s):r(s,t,n)},d=()=>{s._isLeaving&&s[Br](!0),a(s,()=>{u(),c&&c()})};o?o(s,u,d):d()}else r(s,t,n)},se=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p}=e;if(d===-2&&(i=!1),s!=null&&(dt(),oi(s,null,n,e,!0),ft()),p!=null&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let m=u&1&&f,h=!Ei(e),g;if(h&&(g=o&&o.onVnodeBeforeUnmount)&&Ms(g,t,e),u&6)ue(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}m&&Er(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,he,r):l&&!l.hasOnce&&(a!==q||d>0&&d&64)?de(l,t,n,!1,!0):(a===q&&d&384||!i&&u&16)&&de(c,t,n),r&&ce(e)}(h&&(g=o&&o.onVnodeUnmounted)||m)&&K(()=>{g&&Ms(g,t,e),m&&Er(e,null,t,`unmounted`)},n)},ce=e=>{let{type:t,el:n,anchor:r,transition:a}=e;if(t===q){le(n,r);return}if(t===ss){b(e);return}let o=()=>{i(n),a&&!a.persisted&&a.afterLeave&&a.afterLeave()};if(e.shapeFlag&1&&a&&!a.persisted){let{leave:t,delayLeave:r}=a,i=()=>t(n,o);r?r(e.el,o,i):i()}else o()},le=(e,t)=>{let n;for(;e!==t;)n=f(e),i(e),e=n;i(t)},ue=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;Ko(c),Ko(l),r&&ve(r),i.stop(),a&&(a.flags|=8,se(o,e,t,n)),s&&K(s,t),K(()=>{e.isUnmounted=!0},t)},de=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o{if(e.shapeFlag&6)return pe(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=f(e.anchor||e.el),n=t&&t[Dr];return n?f(n):t},me=!1,P=(e,t,n)=>{e==null?t._vnode&&se(t._vnode,null,null,!0):h(t._vnode||null,e,t,null,null,null,n),t._vnode=e,me||=(me=!0,fr(),pr(),!1)},he={p:h,um:se,m:oe,r:ce,mt:A,mc:D,pc:M,pbc:te,n:pe,o:e},F,ge;return t&&([F,ge]=t(he)),{render:P,hydrate:F,createApp:Ga(P,F)}}function Bo({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function Vo({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ho(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Uo(e,t,n=!1){let r=e.children,i=t.children;if(k(r)&&k(i))for(let e=0;e>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-- >0;)n[a]=o,o=t[o];return n}function Go(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Go(t)}function Ko(e){if(e)for(let t=0;te.__isSuspense,Jo=0,Yo={name:`Suspense`,__isSuspense:!0,process(e,t,n,r,i,a,o,s,c,l){if(e==null)Zo(t,n,r,i,a,o,s,c,l);else{if(a&&a.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Qo(e,t,n,r,i,o,s,c,l)}},hydrate:es,normalize:ts};function Xo(e,t){let n=e.props&&e.props[t];j(n)&&n()}function Zo(e,t,n,r,i,a,o,s,c){let{p:l,o:{createElement:u}}=c,d=u(`div`),f=e.suspense=$o(e,i,r,t,d,n,a,o,s,c);l(null,f.pendingBranch=e.ssContent,d,null,r,f,a,o),f.deps>0?(Xo(e,`onPending`),Xo(e,`onFallback`),l(null,e.ssFallback,t,n,r,null,a,o),is(f,e.ssFallback)):f.resolve(!1,!0)}function Qo(e,t,n,r,i,a,o,s,{p:c,um:l,o:{createElement:u}}){let d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;let f=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:h,isInFallback:g,isHydrating:_}=d;if(h)d.pendingBranch=f,_s(h,f)?(c(h,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():g&&(_||(c(m,p,n,r,i,null,a,o,s),is(d,p)))):(d.pendingId=Jo++,_?(d.isHydrating=!1,d.activeBranch=h):l(h,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u(`div`),g?(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0?d.resolve():(c(m,p,n,r,i,null,a,o,s),is(d,p))):m&&_s(m,f)?(c(m,f,n,r,i,d,a,o,s),d.resolve(!0)):(c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0&&d.resolve()));else if(m&&_s(m,f))c(m,f,n,r,i,d,a,o,s),is(d,f);else if(Xo(t,`onPending`),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=Jo++,c(null,f,d.hiddenContainer,null,i,d,a,o,s),d.deps<=0)d.resolve();else{let{timeout:e,pendingId:t}=d;e>0?setTimeout(()=>{d.pendingId===t&&d.fallback(p)},e):e===0&&d.fallback(p)}}function $o(e,t,n,r,i,a,o,s,c,l,u=!1){let{p:d,m:f,um:p,n:m,o:{parentNode:h,remove:g}}=l,_,v=as(e);v&&t&&t.pendingBranch&&(_=t.pendingId,t.deps++);let y=e.props?xe(e.props.timeout):void 0,b=a,x={vnode:e,parent:t,parentComponent:n,namespace:o,container:r,hiddenContainer:i,deps:0,pendingId:Jo++,timeout:typeof y==`number`?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(e=!1,n=!1){let{vnode:r,activeBranch:i,pendingBranch:o,pendingId:s,effects:c,parentComponent:l,container:u,isInFallback:d}=x,g=!1;x.isHydrating?x.isHydrating=!1:e||(g=i&&o.transition&&o.transition.mode===`out-in`,g&&(i.transition.afterLeave=()=>{s===x.pendingId&&(f(o,u,a===b?m(i):a,0),dr(c),d&&r.ssFallback&&(r.ssFallback.el=null))}),i&&(h(i.el)===u&&(a=m(i)),p(i,l,x,!0),!g&&d&&r.ssFallback&&K(()=>r.ssFallback.el=null,x)),g||f(o,u,a,0)),is(x,o),x.pendingBranch=null,x.isInFallback=!1;let y=x.parent,S=!1;for(;y;){if(y.pendingBranch){y.effects.push(...c),S=!0;break}y=y.parent}!S&&!g&&dr(c),x.effects=[],v&&t&&t.pendingBranch&&_===t.pendingId&&(t.deps--,t.deps===0&&!n&&t.resolve()),Xo(r,`onResolve`)},fallback(e){if(!x.pendingBranch)return;let{vnode:t,activeBranch:n,parentComponent:r,container:i,namespace:a}=x;Xo(t,`onFallback`);let o=m(n),l=()=>{x.isInFallback&&(d(null,e,i,o,r,null,a,s,c),is(x,e))},u=e.transition&&e.transition.mode===`out-in`;u&&(n.transition.afterLeave=l),x.isInFallback=!0,p(n,r,null,!0),u||l()},move(e,t,n){x.activeBranch&&f(x.activeBranch,e,t,n),x.container=e},next(){return x.activeBranch&&m(x.activeBranch)},registerDep(e,t,n){let r=!!x.pendingBranch;r&&x.deps++;let i=e.vnode.el;e.asyncDep.catch(t=>{$n(t,e,0)}).then(a=>{if(e.isUnmounted||x.isUnmounted||x.pendingId!==e.suspenseId)return;e.asyncResolved=!0;let{vnode:s}=e;Ws(e,a,!1),i&&(s.el=i);let c=!i&&e.subTree.el;t(e,s,h(i||e.subTree.el),i?null:m(e.subTree),x,o,n),c&&(s.placeholder=null,g(c)),vo(e,s.el),r&&--x.deps===0&&x.resolve()})},unmount(e,t){x.isUnmounted=!0,x.activeBranch&&p(x.activeBranch,n,e,t),x.pendingBranch&&p(x.pendingBranch,n,e,t)}};return x}function es(e,t,n,r,i,a,o,s,c){let l=t.suspense=$o(t,r,n,e.parentNode,document.createElement(`div`),null,i,a,o,s,!0),u=c(e,l.pendingBranch=t.ssContent,n,l,a,o);return l.deps===0&&l.resolve(!1,!0),u}function ts(e){let{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=ns(r?n.default:n),e.ssFallback=r?ns(n.fallback):X(J)}function ns(e){let t;if(j(e)){let n=ds&&e._c;n&&(e._d=!1,ls()),e=e(),n&&(e._d=!0,t=Y,us())}return k(e)&&(e=po(e)),e=Os(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(t=>t!==e)),e}function rs(e,t){t&&t.pendingBranch?k(e)?t.effects.push(...e):t.effects.push(e):dr(e)}function is(e,t){e.activeBranch=t;let{vnode:n,parentComponent:r}=e,i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;n.el=i,r&&r.subTree===n&&(r.vnode.el=i,vo(r,i))}function as(e){let t=e.props&&e.props.suspensible;return t!=null&&t!==!1}var q=Symbol.for(`v-fgt`),os=Symbol.for(`v-txt`),J=Symbol.for(`v-cmt`),ss=Symbol.for(`v-stc`),cs=[],Y=null;function ls(e=!1){cs.push(Y=e?null:[])}function us(){cs.pop(),Y=cs[cs.length-1]||null}var ds=1;function fs(e,t=!1){ds+=e,e<0&&Y&&t&&(Y.hasOnce=!0)}function ps(e){return e.dynamicChildren=ds>0?Y||S:null,us(),ds>0&&Y&&Y.push(e),e}function ms(e,t,n,r,i,a){return ps(xs(e,t,n,r,i,a,!0))}function hs(e,t,n,r,i){return ps(X(e,t,n,r,i,!0))}function gs(e){return e?e.__v_isVNode===!0:!1}function _s(e,t){return e.type===t.type&&e.key===t.key}function vs(e){}var ys=({key:e})=>e??null,bs=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:M(e)||H(e)||j(e)?{i:W,r:e,k:t,f:!!n}:e);function xs(e,t=null,n=null,r=0,i=null,a=e===q?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ys(t),ref:t&&bs(t),scopeId:yr,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:W};return s?(As(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=M(n)?8:16),ds>0&&!o&&Y&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&Y.push(c),c}var X=Ss;function Ss(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===$i)&&(e=J),gs(e)){let r=ws(e,t,!0);return n&&As(r,n),ds>0&&!a&&Y&&(r.shapeFlag&6?Y[Y.indexOf(e)]=r:Y.push(r)),r.patchFlag=-2,r}if(ec(e)&&(e=e.__vccOpts),t){t=Cs(t);let{class:e,style:n}=t;e&&!M(e)&&(t.class=Ae(e)),N(n)&&(mn(n)&&!k(n)&&(n=D({},n)),t.style=Te(n))}let o=M(e)?1:qo(e)?128:Or(e)?64:N(e)?4:j(e)?2:0;return xs(e,t,n,r,i,o,a,!0)}function Cs(e){return e?mn(e)||xo(e)?D({},e):e:null}function ws(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?js(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&ys(l),ref:t&&t.ref?n&&a?k(a)?a.concat(bs(t)):[a,bs(t)]:bs(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==q?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&ws(e.ssContent),ssFallback:e.ssFallback&&ws(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&$r(u,c.clone(u)),u}function Ts(e=` `,t=0){return X(os,null,e,t)}function Es(e,t){let n=X(ss,null,e);return n.staticCount=t,n}function Ds(e=``,t=!1){return t?(ls(),hs(J,null,e)):X(J,null,e)}function Os(e){return e==null||typeof e==`boolean`?X(J):k(e)?X(q,null,e.slice()):gs(e)?ks(e):X(os,null,String(e))}function ks(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:ws(e)}function As(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(k(t))n=16;else if(typeof t==`object`)if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),As(e,n()),n._c&&(n._d=!0));return}else{n=32;let r=t._;!r&&!xo(t)?t._ctx=W:r===3&&W&&(W.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else j(t)?(t={default:t,_ctx:W},n=32):(t=String(t),r&64?(n=16,t=[Ts(t)]):n=8);e.children=t,e.shapeFlag|=n}function js(...e){let t={};for(let n=0;nZ||W,Is,Ls;{let e=Ce(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};Is=t(`__VUE_INSTANCE_SETTERS__`,e=>Z=e),Ls=t(`__VUE_SSR_SETTERS__`,e=>Vs=e)}var Rs=e=>{let t=Z;return Is(e),e.scope.on(),()=>{e.scope.off(),Is(t)}},zs=()=>{Z&&Z.scope.off(),Is(null)};function Bs(e){return e.vnode.shapeFlag&4}var Vs=!1;function Hs(e,t=!1,n=!1){t&&Ls(t);let{props:r,children:i}=e.vnode,a=Bs(e);So(e,r,a,t),Fo(e,i,n||t);let o=a?Us(e,t):void 0;return t&&Ls(!1),o}function Us(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,fa);let{setup:r}=n;if(r){dt();let n=e.setupContext=r.length>1?Zs(e):null,i=Rs(e),a=Zn(r,e,0,[e.props,n]),o=oe(a);if(ft(),i(),(o||e.sp)&&!Ei(e)&&ri(e),o){if(a.then(zs,zs),t)return a.then(n=>{Ws(e,n,t)}).catch(t=>{$n(t,e,0)});e.asyncDep=a}else Ws(e,a,t)}else Ys(e,t)}function Ws(e,t,n){j(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:N(t)&&(e.setupState=En(t)),Ys(e,n)}var Gs,Ks;function qs(e){Gs=e,Ks=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,pa))}}var Js=()=>!Gs;function Ys(e,t,n){let r=e.type;if(!e.render){if(!t&&Gs&&!r.render){let t=r.template||Pa(e).template;if(t){let{isCustomElement:n,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:o}=r,s=D(D({isCustomElement:n,delimiters:a},i),o);r.render=Gs(t,s)}}e.render=r.render||C,Ks&&Ks(e)}{let t=Rs(e);dt();try{Aa(e)}finally{ft(),t()}}}var Xs={get(e,t){return z(e,`get`,``),e[t]}};function Zs(e){return{attrs:new Proxy(e.attrs,Xs),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function Qs(e){return e.exposed?e.exposeProxy||=new Proxy(En(hn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in ua)return ua[n](e)},has(e,t){return t in e||t in ua}}):e.proxy}function $s(e,t=!0){return j(e)?e.displayName||e.name:e.name||t&&e.__name}function ec(e){return j(e)&&`__vccOpts`in e}var tc=(e,t)=>Fn(e,t,Vs);function nc(e,t,n){try{fs(-1);let r=arguments.length;return r===2?N(t)&&!k(t)?gs(t)?X(e,null,[t]):X(e,t):X(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&gs(n)&&(n=[n]),X(e,t,n))}finally{fs(1)}}function rc(){return;function e(t,n,r){let i=t[r];if(k(i)&&i.includes(n)||N(i)&&n in i||t.extends&&e(t.extends,n,r)||t.mixins&&t.mixins.some(t=>e(t,n,r)))return!0}}function ic(e,t,n,r){let i=n[r];if(i&&ac(i,e))return i;let a=t();return a.memo=e.slice(),a.cacheIndex=r,n[r]=a}function ac(e,t){let n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&Y&&Y.push(e),!0}var oc=`3.5.25`,sc=C,cc=Xn,lc=gr,uc=vr,dc={createComponentInstance:Fs,setupComponent:Hs,renderComponentRoot:fo,setCurrentRenderingInstance:br,isVNode:gs,normalizeVNode:Os,getComponentPublicInstance:Qs,ensureValidVNode:sa,pushWarningContext:Kn,popWarningContext:qn},fc=void 0,pc=typeof window<`u`&&window.trustedTypes;if(pc)try{fc=pc.createPolicy(`vue`,{createHTML:e=>e})}catch{}var mc=fc?e=>fc.createHTML(e):e=>e,hc=`http://www.w3.org/2000/svg`,gc=`http://www.w3.org/1998/Math/MathML`,_c=typeof document<`u`?document:null,vc=_c&&_c.createElement(`template`),yc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?_c.createElementNS(hc,e):t===`mathml`?_c.createElementNS(gc,e):n?_c.createElement(e,{is:n}):_c.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>_c.createTextNode(e),createComment:e=>_c.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>_c.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===a||!(i=i.nextSibling)););else{vc.innerHTML=mc(r===`svg`?`${e}`:r===`mathml`?`${e}`:e);let i=vc.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},bc=`transition`,xc=`animation`,Sc=Symbol(`_vtc`),Cc={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},wc=D({},Wr,Cc),Tc=(e=>(e.displayName=`Transition`,e.props=wc,e))((e,{slots:t})=>nc(Jr,Oc(e),t)),Ec=(e,t=[])=>{k(e)?e.forEach(e=>e(...t)):e&&e(...t)},Dc=e=>e?k(e)?e.some(e=>e.length>1):e.length>1:!1;function Oc(e){let t={};for(let n in e)n in Cc||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:c=a,appearActiveClass:l=o,appearToClass:u=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=kc(i),h=m&&m[0],g=m&&m[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:y,onLeave:b,onLeaveCancelled:x,onBeforeAppear:S=_,onAppear:C=v,onAppearCancelled:w=y}=t,T=(e,t,n,r)=>{e._enterCancelled=r,Mc(e,t?u:s),Mc(e,t?l:o),n&&n()},E=(e,t)=>{e._isLeaving=!1,Mc(e,d),Mc(e,p),Mc(e,f),t&&t()},ee=e=>(t,n)=>{let i=e?C:v,o=()=>T(t,e,n);Ec(i,[t,o]),Nc(()=>{Mc(t,e?c:a),jc(t,e?u:s),Dc(i)||Fc(t,r,h,o)})};return D(t,{onBeforeEnter(e){Ec(_,[e]),jc(e,a),jc(e,o)},onBeforeAppear(e){Ec(S,[e]),jc(e,c),jc(e,l)},onEnter:ee(!1),onAppear:ee(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>E(e,t);jc(e,d),e._enterCancelled?(jc(e,f),zc(e)):(zc(e),jc(e,f)),Nc(()=>{e._isLeaving&&(Mc(e,d),jc(e,p),Dc(b)||Fc(e,r,g,n))}),Ec(b,[e,n])},onEnterCancelled(e){T(e,!1,void 0,!0),Ec(y,[e])},onAppearCancelled(e){T(e,!0,void 0,!0),Ec(w,[e])},onLeaveCancelled(e){E(e),Ec(x,[e])}})}function kc(e){if(e==null)return null;if(N(e))return[Ac(e.enter),Ac(e.leave)];{let t=Ac(e);return[t,t]}}function Ac(e){return xe(e)}function jc(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[Sc]||(e[Sc]=new Set)).add(t)}function Mc(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[Sc];n&&(n.delete(t),n.size||(e[Sc]=void 0))}function Nc(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Pc=0;function Fc(e,t,n,r){let i=e._endId=++Pc,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Ic(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u(n[e]||``).split(`, `),i=r(`${bc}Delay`),a=r(`${bc}Duration`),o=Lc(i,a),s=r(`${xc}Delay`),c=r(`${xc}Duration`),l=Lc(s,c),u=null,d=0,f=0;t===bc?o>0&&(u=bc,d=o,f=a.length):t===xc?l>0&&(u=xc,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?bc:xc:null,f=u?u===bc?a.length:c.length:0);let p=u===bc&&/\b(?:transform|all)(?:,|$)/.test(r(`${bc}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Lc(e,t){for(;e.lengthRc(t)+Rc(e[n])))}function Rc(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function zc(e){return(e?e.ownerDocument:document).body.offsetHeight}function Bc(e,t,n){let r=e[Sc];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var Vc=Symbol(`_vod`),Hc=Symbol(`_vsh`),Uc={name:`show`,beforeMount(e,{value:t},{transition:n}){e[Vc]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):Wc(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Wc(e,!0),r.enter(e)):r.leave(e,()=>{Wc(e,!1)}):Wc(e,t))},beforeUnmount(e,{value:t}){Wc(e,t)}};function Wc(e,t){e.style.display=t?e[Vc]:`none`,e[Hc]=!t}function Gc(){Uc.getSSRProps=({value:e})=>{if(!e)return{style:{display:`none`}}}}var Kc=Symbol(``);function qc(e){let t=Q();if(!t)return;let n=t.ut=(n=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(e=>Yc(e,n))},r=()=>{let r=e(t.proxy);t.ce?Yc(t.ce,r):Jc(t.subTree,r),n(r)};Hi(()=>{dr(r)}),Vi(()=>{to(r,C,{flush:`post`});let e=new MutationObserver(r);e.observe(t.subTree.el.parentNode,{childList:!0}),Gi(()=>e.disconnect())})}function Jc(e,t){if(e.shapeFlag&128){let n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Jc(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)Yc(e.el,t);else if(e.type===q)e.children.forEach(e=>Jc(e,t));else if(e.type===ss){let{el:n,anchor:r}=e;for(;n&&(Yc(n,t),n!==r);)n=n.nextSibling}}function Yc(e,t){if(e.nodeType===1){let n=e.style,r=``;for(let e in t){let i=He(t[e]);n.setProperty(`--${e}`,i),r+=`--${e}: ${i};`}n[Kc]=r}}var Xc=/(?:^|;)\s*display\s*:/;function Zc(e,t,n){let r=e.style,i=M(n),a=!1;if(n&&!i){if(t)if(M(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??$c(r,t,``)}else for(let e in t)n[e]??$c(r,e,``);for(let e in n)e===`display`&&(a=!0),$c(r,e,n[e])}else if(i){if(t!==n){let e=r[Kc];e&&(n+=`;`+e),r.cssText=n,a=Xc.test(n)}}else t&&e.removeAttribute(`style`);Vc in e&&(e[Vc]=a?r.display:``,e[Hc]&&(r.display=`none`))}var Qc=/\s*!important$/;function $c(e,t,n){if(k(n))n.forEach(n=>$c(e,t,n));else if(n??=``,t.startsWith(`--`))e.setProperty(t,n);else{let r=nl(e,t);Qc.test(n)?e.setProperty(F(r),n.replace(Qc,``),`important`):e[r]=n}}var el=[`Webkit`,`Moz`,`ms`],tl={};function nl(e,t){let n=tl[t];if(n)return n;let r=P(t);if(r!==`filter`&&r in e)return tl[t]=r;r=ge(r);for(let n=0;nfl||=(pl.then(()=>fl=0),Date.now());function hl(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;Qn(gl(e,n.value),t,5,[e])};return n.value=e,n.attached=ml(),n}function gl(e,t){if(k(t)){let n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(e=>t=>!t._stopped&&e&&e(t))}else return t}var _l=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,vl=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?Bc(e,r,o):t===`style`?Zc(e,n,r):T(t)?E(t)||ll(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),!0):t[0]===`^`?(t=t.slice(1),!1):yl(e,t,r,o))?(al(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&il(e,t,r,o,a,t!==`value`)):e._isVueCE&&(/[A-Z]/.test(t)||!M(r))?al(e,P(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),il(e,t,r,o))};function yl(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&_l(t)&&j(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return _l(t)&&M(n)?!1:t in e}var bl={};function xl(e,t,n){let r=ti(e,t);ue(r)&&(r=D({},r,t));class i extends wl{constructor(e){super(r,e,n)}}return i.def=r,i}var Sl=((e,t)=>xl(e,t,pu)),Cl=typeof HTMLElement<`u`?HTMLElement:class{},wl=class e extends Cl{constructor(e,t={},n=fu){super(),this._def=e,this._props=t,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&n!==fu?this._root=this.shadowRoot:e.shadowRoot===!1?this._root=this:(this.attachShadow(D({},e.shadowRootOptions,{mode:`open`})),this._root=this.shadowRoot)}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t&&=t.parentNode||t.host;)if(t instanceof e){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,sr(()=>{this._connected||(this._ob&&=(this._ob.disconnect(),null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&=(this._teleportTargets.clear(),void 0))})}_processMutations(e){for(let t of e)this._setAttr(t.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let e=0;e{this._resolved=!0,this._pendingResolve=void 0;let{props:n,styles:r}=e,i;if(n&&!k(n))for(let e in n){let t=n[e];(t===Number||t&&t.type===Number)&&(e in this._props&&(this._props[e]=xe(this._props[e])),(i||=Object.create(null))[P(e)]=!0)}this._numberProps=i,this._resolveProps(e),this.shadowRoot&&this._applyStyles(r),this._mount(e)},t=this._def.__asyncLoader;t?this._pendingResolve=t().then(t=>{t.configureApp=this._def.configureApp,e(this._def=t,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);let t=this._instance&&this._instance.exposed;if(t)for(let e in t)O(this,e)||Object.defineProperty(this,e,{get:()=>Cn(t[e])})}_resolveProps(e){let{props:t}=e,n=k(t)?t:Object.keys(t||{});for(let e of Object.keys(this))e[0]!==`_`&&n.includes(e)&&this._setProp(e,this[e]);for(let e of n.map(P))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t,!0,!this._patching)}})}_setAttr(e){if(e.startsWith(`data-v-`))return;let t=this.hasAttribute(e),n=t?this.getAttribute(e):bl,r=P(e);t&&this._numberProps&&this._numberProps[r]&&(n=xe(n)),this._setProp(r,n,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,r=!1){if(t!==this._props[e]&&(this._dirty=!0,t===bl?delete this._props[e]:(this._props[e]=t,e===`key`&&this._app&&(this._app._ceVNode.key=t)),r&&this._instance&&this._update(),n)){let n=this._ob;n&&(this._processMutations(n.takeRecords()),n.disconnect()),t===!0?this.setAttribute(F(e),``):typeof t==`string`||typeof t==`number`?this.setAttribute(F(e),t+``):t||this.removeAttribute(F(e)),n&&n.observe(this,{attributes:!0})}}_update(){let e=this._createVNode();this._app&&(e.appContext=this._app._context),uu(e,this._root)}_createVNode(){let e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));let t=X(this._def,D(e,this._props));return this._instance||(t.ce=e=>{this._instance=e,e.ce=this,e.isCE=!0;let t=(e,t)=>{this.dispatchEvent(new CustomEvent(e,ue(t[0])?D({detail:t},t[0]):{detail:t}))};e.emit=(e,...n)=>{t(e,n),F(e)!==e&&t(F(e),n)},this._setParent()}),t}_applyStyles(e,t){if(!e)return;if(t){if(t===this._def||this._styleChildren.has(t))return;this._styleChildren.add(t)}let n=this._nonce;for(let t=e.length-1;t>=0;t--){let r=document.createElement(`style`);n&&r.setAttribute(`nonce`,n),r.textContent=e[t],this.shadowRoot.prepend(r)}}_parseSlots(){let e=this._slots={},t;for(;t=this.firstChild;){let n=t.nodeType===1&&t.getAttribute(`slot`)||`default`;(e[n]||(e[n]=[])).push(t),this.removeChild(t)}}_renderSlots(){let e=this._getSlots(),t=this._instance.type.__scopeId;for(let n=0;n(delete e.props.mode,e))({name:`TransitionGroup`,props:D({},wc,{tag:String,moveClass:String}),setup(e,{slots:t}){let n=Q(),r=Hr(),i,a;return Ui(()=>{if(!i.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!Il(i[0].el,n.vnode.el,t)){i=[];return}i.forEach(Nl),i.forEach(Pl);let r=i.filter(Fl);zc(n.vnode.el),r.forEach(e=>{let n=e.el,r=n.style;jc(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[Al]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[Al]=null,Mc(n,t))};n.addEventListener(`transitionend`,i)}),i=[]}),()=>{let o=V(e),s=Oc(o),c=o.tag||q;if(i=[],a)for(let e=0;e{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=Ic(r);return a.removeChild(r),o}var Ll=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return k(t)?e=>ve(t,e):t};function Rl(e){e.target.composing=!0}function zl(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var Bl=Symbol(`_assign`);function Vl(e,t,n){return t&&(e=e.trim()),n&&(e=be(e)),e}var Hl={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e[Bl]=Ll(i);let a=r||i.props&&i.props.type===`number`;ol(e,t?`change`:`input`,t=>{t.target.composing||e[Bl](Vl(e.value,n,a))}),(n||a)&&ol(e,`change`,()=>{e.value=Vl(e.value,n,a)}),t||(ol(e,`compositionstart`,Rl),ol(e,`compositionend`,zl),ol(e,`change`,zl))},mounted(e,{value:t}){e.value=t??``},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[Bl]=Ll(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?be(e.value):e.value,c=t??``;s!==c&&(document.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c))}},Ul={deep:!0,created(e,t,n){e[Bl]=Ll(n),ol(e,`change`,()=>{let t=e._modelValue,n=Jl(e),r=e.checked,i=e[Bl];if(k(t)){let e=Le(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(A(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(Yl(e,r))})},mounted:Wl,beforeUpdate(e,t,n){e[Bl]=Ll(n),Wl(e,t,n)}};function Wl(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(k(t))i=Le(t,r.props.value)>-1;else if(A(t))i=t.has(r.props.value);else{if(t===n)return;i=Ie(t,Yl(e,!0))}e.checked!==i&&(e.checked=i)}var Gl={created(e,{value:t},n){e.checked=Ie(t,n.props.value),e[Bl]=Ll(n),ol(e,`change`,()=>{e[Bl](Jl(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[Bl]=Ll(r),t!==n&&(e.checked=Ie(t,r.props.value))}},Kl={deep:!0,created(e,{value:t,modifiers:{number:n}},r){let i=A(t);ol(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?be(Jl(e)):Jl(e));e[Bl](e.multiple?i?new Set(t):t:t[0]),e._assigning=!0,sr(()=>{e._assigning=!1})}),e[Bl]=Ll(r)},mounted(e,{value:t}){ql(e,t)},beforeUpdate(e,t,n){e[Bl]=Ll(n)},updated(e,{value:t}){e._assigning||ql(e,t)}};function ql(e,t){let n=e.multiple,r=k(t);if(!(n&&!r&&!A(t))){for(let i=0,a=e.options.length;iString(e)===String(o)):a.selected=Le(t,o)>-1}else a.selected=t.has(o);else if(Ie(Jl(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Jl(e){return`_value`in e?e._value:e.value}function Yl(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var Xl={created(e,t,n){Ql(e,t,n,null,`created`)},mounted(e,t,n){Ql(e,t,n,null,`mounted`)},beforeUpdate(e,t,n,r){Ql(e,t,n,r,`beforeUpdate`)},updated(e,t,n,r){Ql(e,t,n,r,`updated`)}};function Zl(e,t){switch(e){case`SELECT`:return Kl;case`TEXTAREA`:return Hl;default:switch(t){case`checkbox`:return Ul;case`radio`:return Gl;default:return Hl}}}function Ql(e,t,n,r,i){let a=Zl(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,r)}function $l(){Hl.getSSRProps=({value:e})=>({value:e}),Gl.getSSRProps=({value:e},t)=>{if(t.props&&Ie(t.props.value,e))return{checked:!0}},Ul.getSSRProps=({value:e},t)=>{if(k(e)){if(t.props&&Le(e,t.props.value)>-1)return{checked:!0}}else if(A(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},Xl.getSSRProps=(e,t)=>{if(typeof t.type!=`string`)return;let n=Zl(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}var eu=[`ctrl`,`shift`,`alt`,`meta`],tu={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>eu.some(n=>e[`${n}Key`]&&!t.includes(n))},nu=(e,t)=>{let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=F(n.key);if(t.some(e=>e===r||ru[e]===r))return e(n)}))},au=D({patchProp:vl},yc),ou,su=!1;function cu(){return ou||=Lo(au)}function lu(){return ou=su?ou:Ro(au),su=!0,ou}var uu=((...e)=>{cu().render(...e)}),du=((...e)=>{lu().hydrate(...e)}),fu=((...e)=>{let t=cu().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=hu(e);if(!r)return;let i=t._component;!j(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,mu(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t}),pu=((...e)=>{let t=lu().createApp(...e),{mount:n}=t;return t.mount=e=>{let t=hu(e);if(t)return n(t,!0,mu(t))},t});function mu(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function hu(e){return M(e)?document.querySelector(e):e}var gu=!1,_u=()=>{gu||(gu=!0,$l(),Gc())},vu=e({BaseTransition:()=>Jr,BaseTransitionPropsValidators:()=>Wr,Comment:()=>J,DeprecationTypes:()=>null,EffectScope:()=>Ue,ErrorCodes:()=>Yn,ErrorTypeStrings:()=>cc,Fragment:()=>q,KeepAlive:()=>Ai,ReactiveEffect:()=>Je,Static:()=>ss,Suspense:()=>Yo,Teleport:()=>Lr,Text:()=>os,TrackOpTypes:()=>In,Transition:()=>Tc,TransitionGroup:()=>Ml,TriggerOpTypes:()=>Ln,VueElement:()=>wl,assertNumber:()=>Jn,callWithAsyncErrorHandling:()=>Qn,callWithErrorHandling:()=>Zn,camelize:()=>P,capitalize:()=>ge,cloneVNode:()=>ws,compatUtils:()=>null,compile:()=>yu,computed:()=>tc,createApp:()=>fu,createBlock:()=>hs,createCommentVNode:()=>Ds,createElementBlock:()=>ms,createElementVNode:()=>xs,createHydrationRenderer:()=>Ro,createPropsRestProxy:()=>Da,createRenderer:()=>Lo,createSSRApp:()=>pu,createSlots:()=>aa,createStaticVNode:()=>Es,createTextVNode:()=>Ts,createVNode:()=>X,customRef:()=>On,defineAsyncComponent:()=>Di,defineComponent:()=>ti,defineCustomElement:()=>xl,defineEmits:()=>ha,defineExpose:()=>ga,defineModel:()=>ya,defineOptions:()=>_a,defineProps:()=>ma,defineSSRCustomElement:()=>Sl,defineSlots:()=>va,devtools:()=>lc,effect:()=>st,effectScope:()=>We,getCurrentInstance:()=>Q,getCurrentScope:()=>Ge,getCurrentWatcher:()=>Vn,getTransitionRawChildren:()=>ei,guardReactiveProps:()=>Cs,h:()=>nc,handleError:()=>$n,hasInjectionContext:()=>Ya,hydrate:()=>du,hydrateOnIdle:()=>bi,hydrateOnInteraction:()=>wi,hydrateOnMediaQuery:()=>Ci,hydrateOnVisible:()=>Si,initCustomFormatter:()=>rc,initDirectivesForSSR:()=>_u,inject:()=>Ja,isMemoSame:()=>ac,isProxy:()=>mn,isReactive:()=>fn,isReadonly:()=>pn,isRef:()=>H,isRuntimeOnly:()=>Js,isShallow:()=>B,isVNode:()=>gs,markRaw:()=>hn,mergeDefaults:()=>Ta,mergeModels:()=>Ea,mergeProps:()=>js,nextTick:()=>sr,nodeOps:()=>yc,normalizeClass:()=>Ae,normalizeProps:()=>je,normalizeStyle:()=>Te,onActivated:()=>Mi,onBeforeMount:()=>Bi,onBeforeUnmount:()=>Wi,onBeforeUpdate:()=>Hi,onDeactivated:()=>Ni,onErrorCaptured:()=>Yi,onMounted:()=>Vi,onRenderTracked:()=>Ji,onRenderTriggered:()=>qi,onScopeDispose:()=>Ke,onServerPrefetch:()=>Ki,onUnmounted:()=>Gi,onUpdated:()=>Ui,onWatcherCleanup:()=>Hn,openBlock:()=>ls,patchProp:()=>vl,popScopeId:()=>Sr,provide:()=>qa,proxyRefs:()=>En,pushScopeId:()=>xr,queuePostFlushCb:()=>dr,reactive:()=>sn,readonly:()=>ln,ref:()=>vn,registerRuntimeCompiler:()=>qs,render:()=>uu,renderList:()=>ia,renderSlot:()=>oa,resolveComponent:()=>Qi,resolveDirective:()=>ta,resolveDynamicComponent:()=>ea,resolveFilter:()=>null,resolveTransitionHooks:()=>Xr,setBlockTracking:()=>fs,setDevtoolsHook:()=>uc,setTransitionHooks:()=>$r,shallowReactive:()=>cn,shallowReadonly:()=>un,shallowRef:()=>yn,ssrContextKey:()=>Xa,ssrUtils:()=>dc,stop:()=>ct,toDisplayString:()=>ze,toHandlerKey:()=>_e,toHandlers:()=>ca,toRaw:()=>V,toRef:()=>Mn,toRefs:()=>kn,toValue:()=>wn,transformVNodeArgs:()=>vs,triggerRef:()=>Sn,unref:()=>Cn,useAttrs:()=>Sa,useCssModule:()=>Dl,useCssVars:()=>qc,useHost:()=>Tl,useId:()=>ni,useModel:()=>ao,useSSRContext:()=>Za,useShadowRoot:()=>El,useSlots:()=>xa,useTemplateRef:()=>ii,useTransitionState:()=>Hr,vModelCheckbox:()=>Ul,vModelDynamic:()=>Xl,vModelRadio:()=>Gl,vModelSelect:()=>Kl,vModelText:()=>Hl,vShow:()=>Uc,version:()=>oc,warn:()=>sc,watch:()=>to,watchEffect:()=>Qa,watchPostEffect:()=>$a,watchSyncEffect:()=>eo,withAsyncContext:()=>Oa,withCtx:()=>wr,withDefaults:()=>ba,withDirectives:()=>Tr,withKeys:()=>iu,withMemo:()=>ic,withModifiers:()=>nu,withScopeId:()=>Cr}),yu=()=>{},bu=0;const xu=(e,t)=>{let n=v[e],r=n.costMultiplier**(t-1);return{metal:Math.floor(n.baseCost.metal*r),crystal:Math.floor(n.baseCost.crystal*r),deuterium:Math.floor(n.baseCost.deuterium*r),darkMatter:Math.floor(n.baseCost.darkMatter*r),energy:0}},Su=(e,t,n=0,r=1,i=0)=>{let a=v[e],o=a.baseTime*a.costMultiplier**+t,s=Math.max(1,r)*(1+i),c=1-n/100;return Math.floor(o/s*c)},Cu=(e,t,n)=>{let r=v[e];if(!r.requirements)return!0;for(let[e,i]of Object.entries(r.requirements))if(Object.values(a).includes(e)){if((t[e]||0){let r=Date.now();return bu++,{id:`research_${r}_${bu}`,type:`technology`,itemType:e,targetLevel:t,startTime:r,endTime:r+n*1e3}},Tu=(e,t,n,r)=>e.filter(e=>{if(n>=e.endTime){let n=t[e.itemType]||0,i=e.targetLevel||0;return t[e.itemType]=i,r&&i>n&&r(Au(e.itemType,n,i),`technology`,e.itemType,i),!1}return!0}),Eu=e=>e.metal+e.crystal+e.deuterium,Du=e=>Math.floor(e/1e3),Ou=(e,t)=>{e.points+=t},ku=(e,t,n)=>{let r=0;for(let i=t+1;i<=n;i++){let t=Eu(Pu(e,i));r+=Du(t)}return r},Au=(e,t,n)=>{let r=0;for(let i=t+1;i<=n;i++){let t=Eu(xu(e,i));r+=Du(t)}return r},ju=(e,t)=>{let n=u[e];return Du(Eu(n.cost))*t},Mu=(e,t)=>{let n=h[e];return Du(Eu(n.cost))*t};var Nu=0;const Pu=(e,t)=>{let n=f[e],r=n.costMultiplier**(t-1);return{metal:Math.floor(n.baseCost.metal*r),crystal:Math.floor(n.baseCost.crystal*r),deuterium:Math.floor(n.baseCost.deuterium*r),darkMatter:Math.floor(n.baseCost.darkMatter*r),energy:0}},Fu=(e,t,n=0,r=0,i=0)=>{let a=f[e],o=a.costMultiplier**(t-1),s=a.baseTime*o,c=1+r+i*2,l=1-n/100;return Math.floor(s/c*l)},Iu=e=>{let t=0;return Object.entries(e.buildings).forEach(([e,n])=>{if(n>0){let r=f[e];t+=r.spaceUsage*n}}),t},Lu=(e,t,n)=>{let r=f[e].requirements;if(!r)return!0;for(let[e,i]of Object.entries(r)){let r=i;if(Object.values(a).includes(e)){if((t.buildings[e]||0)Iu(e)+f[t].spaceUsage<=e.maxSpace,zu=(e,t,n)=>{let r=Date.now();return Nu++,{id:`build_${r}_${Nu}`,type:`building`,itemType:e,targetLevel:t,startTime:r,endTime:r+n*1e3}},Bu=(e,t,n)=>{e.buildQueue=e.buildQueue.filter(r=>{if(t>=r.endTime){if(r.type===`building`){let t=e.buildings[r.itemType]||0,i=r.targetLevel||0;e.buildings[r.itemType]=i,n&&i>t&&n(ku(r.itemType,t,i),`building`,r.itemType,i)}else if(r.type===`ship`){let t=r.itemType,i=r.quantity||0;e.fleet[t]=(e.fleet[t]||0)+i,n&&i>0&&n(ju(t,i),`ship`,r.itemType,void 0,i)}else if(r.type===`defense`){let t=r.itemType,i=r.quantity||0;e.defense[t]=(e.defense[t]||0)+i,n&&i>0&&n(Mu(t,i),`defense`,r.itemType,void 0,i)}else if(r.type===`demolish`){let t=r.itemType,n=e.buildings[t]||0;e.buildings[t]=Math.max(0,n-1)}return!1}return!0})},Vu=(e,t)=>{let n=Pu(e,t);return{metal:Math.floor(n.metal*.5),crystal:Math.floor(n.crystal*.5),deuterium:Math.floor(n.deuterium*.5),darkMatter:Math.floor(n.darkMatter*.5),energy:0}},Hu=(e,t,n=0,r=0,i=0)=>{let a=Fu(e,t,n,r,i);return Math.floor(a*.5)},Uu=(e,t,n)=>{let r=Date.now();return Nu++,{id:`demolish_${r}_${Nu}`,type:`demolish`,itemType:e,targetLevel:t-1,startTime:r,endTime:r+n*1e3}},Wu=e=>g[e].cost,Gu=(e,t)=>e.active&&(!e.expiresAt||e.expiresAt>t),Ku=(e,t)=>{let n=Date.now();return{type:e,active:!0,hiredAt:n,expiresAt:n+t*24*60*60*1e3}},qu=e=>({type:e,active:!1}),Ju=(e,t,n)=>{let r=e.expiresAt&&e.expiresAt>n?e.expiresAt:n;return{...e,active:!0,expiresAt:r+t*24*60*60*1e3}},Yu=(e,t)=>{let n={buildingSpeedBonus:0,researchSpeedBonus:0,resourceProductionBonus:0,darkMatterProductionBonus:0,energyProductionBonus:0,fleetSpeedBonus:0,fuelConsumptionReduction:0,defenseBonus:0,additionalBuildQueue:0,additionalFleetSlots:0,storageCapacityBonus:0};return Object.values(e).forEach(e=>{if(Gu(e,t)){let t=g[e.type];Object.entries(t.benefits).forEach(([e,t])=>{t!==void 0&&(n[e]+=t)})}}),n},Xu=(e,t)=>{Object.values(e).forEach(e=>{e.active&&e.expiresAt&&e.expiresAt<=t&&(e.active=!1)})};var Zu=0;const Qu=(e,t)=>{let n=u[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t,energy:0}},$u=(e,t)=>{let n=h[e];return{metal:n.cost.metal*t,crystal:n.cost.crystal*t,deuterium:n.cost.deuterium*t,darkMatter:n.cost.darkMatter*t,energy:0}},ed=(e,t,n=0,r=0,i=0)=>{let a=u[e].buildTime*t,o=1+r+i*2,s=1-n/100;return Math.floor(a/o*s)},td=(e,t,n=0,r=0,i=0)=>{let a=h[e].buildTime*t,o=1+r+i*2,s=1-n/100;return Math.floor(a/o*s)},nd=(e,t,n)=>{let r=u[e];if(!r.requirements)return!0;for(let[e,i]of Object.entries(r.requirements))if(Object.values(a).includes(e)){if((t[e]||0){let r=h[e];if(!r.requirements)return!0;for(let[e,i]of Object.entries(r.requirements))if(Object.values(a).includes(e)){if((t[e]||0)!((e===o.SmallShieldDome||e===o.LargeShieldDome)&&((t[e]||0)>0||n>1)),ad=e=>(e[a.MissileSilo]||0)*10,od=e=>(e[o.InterplanetaryMissile]||0)+(e[o.AntiBallisticMissile]||0),sd=(e,t,n,r)=>{if(e!==o.InterplanetaryMissile&&e!==o.AntiBallisticMissile)return!0;let i=ad(n);return od(t)+r<=i},cd=(e,t,n)=>{let r=Date.now();return Zu++,{id:`ship_${r}_${Zu}`,type:`ship`,itemType:e,quantity:t,startTime:r,endTime:r+n*1e3}},ld=(e,t,n)=>{let r=Date.now();return Zu++,{id:`defense_${r}_${Zu}`,type:`defense`,itemType:e,quantity:t,startTime:r,endTime:r+n*1e3}},ud=(e,t)=>{for(let[n,r]of Object.entries(t))if((e[n]||0){let r=0;for(let[t,n]of Object.entries(e)){let e=u[t];r+=e.fuelConsumption*n}let i=0;if(n){let e=n.metal+n.crystal+n.deuterium+n.darkMatter;i=Math.floor(e/1e3)}let a=1-t/100;return Math.floor(r*a)+i},fd=(e,t=0)=>{let n=1/0;for(let[t,r]of Object.entries(e))if(r>0){let e=u[t];n=Math.min(n,e.speed)}let r=1+t/100;return Math.floor(n*r)},pd=(e,t)=>{for(let[n,r]of Object.entries(t))e[n]-=r},md=(e,t)=>{for(let[n,r]of Object.entries(t))r>0&&(e[n]+=r)},hd=(e,t=`Home Planet`)=>{let i={id:`planet1`,name:t,ownerId:e,position:{galaxy:1,system:1,position:1},resources:{metal:500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[n.LightFighter]:0,[n.HeavyFighter]:0,[n.Cruiser]:0,[n.Battleship]:0,[n.Battlecruiser]:0,[n.Bomber]:0,[n.Destroyer]:0,[n.SmallCargo]:0,[n.LargeCargo]:0,[n.ColonyShip]:0,[n.Recycler]:0,[n.EspionageProbe]:0,[n.SolarSatellite]:0,[n.DarkMatterHarvester]:0,[n.Deathstar]:0},defense:{[o.RocketLauncher]:0,[o.LightLaser]:0,[o.HeavyLaser]:0,[o.GaussCannon]:0,[o.IonCannon]:0,[o.PlasmaTurret]:0,[o.SmallShieldDome]:0,[o.LargeShieldDome]:0,[o.AntiBallisticMissile]:0,[o.InterplanetaryMissile]:0,[o.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:r.baseStorage,isMoon:!1};return Object.values(a).forEach(e=>{i.buildings[e]=0}),i},gd=(e,t,i=`Planet`)=>{let s={id:`npc_planet_${e}`,name:`${i} ${t.galaxy}:${t.system}:${t.position}`,ownerId:`npc_${e}`,position:t,resources:{metal:Math.floor(Math.random()*1e4)+5e3,crystal:Math.floor(Math.random()*5e3)+2e3,deuterium:Math.floor(Math.random()*2e3)+500,darkMatter:Math.floor(Math.random()*100),energy:0},buildings:{},fleet:{[n.LightFighter]:Math.floor(Math.random()*50),[n.HeavyFighter]:Math.floor(Math.random()*20),[n.Cruiser]:Math.floor(Math.random()*10),[n.Battleship]:Math.floor(Math.random()*5),[n.Battlecruiser]:Math.floor(Math.random()*3),[n.Bomber]:Math.floor(Math.random()*2),[n.Destroyer]:Math.floor(Math.random()*2),[n.SmallCargo]:Math.floor(Math.random()*10),[n.LargeCargo]:Math.floor(Math.random()*5),[n.ColonyShip]:0,[n.Recycler]:0,[n.EspionageProbe]:0,[n.SolarSatellite]:Math.floor(Math.random()*20),[n.DarkMatterHarvester]:0,[n.Deathstar]:0},defense:{[o.RocketLauncher]:Math.floor(Math.random()*100),[o.LightLaser]:Math.floor(Math.random()*50),[o.HeavyLaser]:Math.floor(Math.random()*20),[o.GaussCannon]:Math.floor(Math.random()*10),[o.IonCannon]:Math.floor(Math.random()*10),[o.PlasmaTurret]:Math.floor(Math.random()*5),[o.SmallShieldDome]:Math.random()>.5?1:0,[o.LargeShieldDome]:Math.random()>.8?1:0,[o.AntiBallisticMissile]:Math.floor(Math.random()*3),[o.InterplanetaryMissile]:Math.floor(Math.random()*2),[o.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:r.baseStorage,isMoon:!1};return Object.values(a).forEach(e=>{s.buildings[e]=Math.floor(Math.random()*10)}),s},_d=e=>{let t=e.metal+e.crystal;if(t{if(!e.isMoon)return 0;let t=e.buildings[a.LunarBase]||0;return p.baseSize+t*p.lunarBaseSpaceBonus},yd=(e,t)=>{if(e.isMoon)return 0;let n=i.baseSize,r=e.buildings[a.Terraformer]||0;return n+=r*i.terraformerSpaceBonus,n+=t*i.terraformingTechSpaceBonus,n},bd=(e,t)=>{let n=e.buildings[a.SolarPlant]||0,r=e.buildings[a.FusionReactor]||0,i=e.fleet.solarSatellite||0,o=1+(t.energyProductionBonus||0)/100,s=n*50*1.1**n,c=r*150*1.15**r,l=i*50;return(s+c+l)*o},xd=e=>{let t=e.buildings[a.MetalMine]||0,n=e.buildings[a.CrystalMine]||0,r=e.buildings[a.DeuteriumSynthesizer]||0,i=t*10*1.1**t,o=n*10*1.1**n,s=r*15*1.1**r;return i+o+s},Sd=(e,t)=>{let n=e.buildings[a.MetalMine]||0,r=e.buildings[a.CrystalMine]||0,i=e.buildings[a.DeuteriumSynthesizer]||0,o=e.buildings[a.DarkMatterCollector]||0,s=1+(t.resourceProductionBonus||0)/100,c=1+(t.darkMatterProductionBonus||0)/100,l=bd(e,{energyProductionBonus:t.energyProductionBonus}),u=e.resources.energy>0?1:0;return{metal:n*1500*1.5**n*s*u,crystal:r*1e3*1.5**r*s*u,deuterium:i*500*1.5**i*s*u,darkMatter:o*25*1.5**o*c,energy:l}},Cd=(e,t)=>{let n=e.buildings[a.MetalStorage]||0,r=e.buildings[a.CrystalStorage]||0,i=e.buildings[a.DeuteriumTank]||0,o=e.buildings[a.DarkMatterTank]||0,s=e.buildings[a.SolarPlant]||0,c=1+(t||0)/100,l=1e4;return{metal:l*2**n*c,crystal:l*2**r*c,deuterium:l*2**i*c,darkMatter:1e3*2**o*c,energy:1e3+s*500}},wd=(e,t,n)=>{let r=(t-e.lastUpdate)/1e3,i=xd(e),a=bd(e,{energyProductionBonus:n.energyProductionBonus});e.resources.energy+=a*r/3600;let o=Cd(e,n.storageCapacityBonus);e.resources.energy=Math.min(e.resources.energy,o.energy),e.resources.energy-=i*r/3600,e.resources.energy=Math.max(0,e.resources.energy);let s=Sd(e,{resourceProductionBonus:n.resourceProductionBonus,darkMatterProductionBonus:n.darkMatterProductionBonus,energyProductionBonus:n.energyProductionBonus});e.resources.metal+=s.metal*r/3600,e.resources.crystal+=s.crystal*r/3600,e.resources.deuterium+=s.deuterium*r/3600,e.resources.darkMatter+=s.darkMatter*r/3600,e.resources.metal=Math.min(e.resources.metal,o.metal),e.resources.crystal=Math.min(e.resources.crystal,o.crystal),e.resources.deuterium=Math.min(e.resources.deuterium,o.deuterium),e.resources.darkMatter=Math.min(e.resources.darkMatter,o.darkMatter),e.lastUpdate=t},Td=(e,t)=>e.metal>=t.metal&&e.crystal>=t.crystal&&e.deuterium>=t.deuterium&&e.darkMatter>=t.darkMatter,Ed=(e,t)=>{e.metal-=t.metal,e.crystal-=t.crystal,e.deuterium-=t.deuterium,e.darkMatter-=t.darkMatter},Dd=(e,t)=>{e.metal+=t.metal,e.crystal+=t.crystal,e.deuterium+=t.deuterium,e.darkMatter+=t.darkMatter},Od=(e,t,n)=>{let r=e.buildings[a.MetalMine]||0,i=e.buildings[a.CrystalMine]||0,o=e.buildings[a.DeuteriumSynthesizer]||0,s=e.buildings[a.DarkMatterCollector]||0,c=e.buildings[a.SolarPlant]||0,l=e.resources.energy>0,u=l?1:0,d=[];Object.values(t).forEach(e=>{if(Gu(e,n)){let t=g[e.type];d.push({type:e.type,name:t.name,resourceBonus:t.benefits.resourceProductionBonus||0,darkMatterBonus:t.benefits.darkMatterProductionBonus||0,energyBonus:t.benefits.energyProductionBonus||0})}});let f=d.reduce((e,t)=>e+t.resourceBonus,0),p=d.reduce((e,t)=>e+t.darkMatterBonus,0),m=d.reduce((e,t)=>e+t.energyBonus,0),h=r*1500*1.5**r,_=[];d.forEach(e=>{if(e.resourceBonus>0){let t=h*(e.resourceBonus/100);_.push({name:`officers.${e.type}`,percentage:e.resourceBonus,value:t,source:`officer`})}}),l||_.push({name:`resources.noEnergy`,percentage:-100,value:-h*(1+f/100),source:`other`});let v=h*(1+f/100)*u,y=i*1e3*1.5**i,b=[];d.forEach(e=>{if(e.resourceBonus>0){let t=y*(e.resourceBonus/100);b.push({name:`officers.${e.type}`,percentage:e.resourceBonus,value:t,source:`officer`})}}),l||b.push({name:`resources.noEnergy`,percentage:-100,value:-y*(1+f/100),source:`other`});let x=y*(1+f/100)*u,S=o*500*1.5**o,C=[];d.forEach(e=>{if(e.resourceBonus>0){let t=S*(e.resourceBonus/100);C.push({name:`officers.${e.type}`,percentage:e.resourceBonus,value:t,source:`officer`})}}),l||C.push({name:`resources.noEnergy`,percentage:-100,value:-S*(1+f/100),source:`other`});let w=S*(1+f/100)*u,T=s*25*1.5**s,E=[];d.forEach(e=>{if(e.darkMatterBonus>0){let t=T*(e.darkMatterBonus/100);E.push({name:`officers.${e.type}`,percentage:e.darkMatterBonus,value:t,source:`officer`})}});let D=T*(1+p/100),ee=e.buildings[a.FusionReactor]||0,te=e.fleet.solarSatellite||0,O=c*50*1.1**c,k=ee*150*1.15**ee,ne=te*50,A=O+k+ne,re=[];c>0&&re.push({name:`buildings.solarPlant`,level:c,production:O}),ee>0&&re.push({name:`buildings.fusionReactor`,level:ee,production:k}),te>0&&re.push({name:`ships.solarSatellite`,level:te,production:ne});let ie=[];d.forEach(e=>{if(e.energyBonus>0){let t=A*(e.energyBonus/100);ie.push({name:`officers.${e.type}`,percentage:e.energyBonus,value:t,source:`officer`})}});let j=A*(1+m/100);return{metal:{baseProduction:h,buildingLevel:r,buildingName:`buildings.metalMine`,bonuses:_,finalProduction:v},crystal:{baseProduction:y,buildingLevel:i,buildingName:`buildings.crystalMine`,bonuses:b,finalProduction:x},deuterium:{baseProduction:S,buildingLevel:o,buildingName:`buildings.deuteriumSynthesizer`,bonuses:C,finalProduction:w},darkMatter:{baseProduction:T,buildingLevel:s,buildingName:`buildings.darkMatterCollector`,bonuses:E,finalProduction:D},energy:{baseProduction:A,buildingLevel:c,buildingName:`buildings.solarPlant`,bonuses:ie,finalProduction:j,sources:re}}},kd=e=>{let t=e.buildings[a.MetalMine]||0,n=e.buildings[a.CrystalMine]||0,r=e.buildings[a.DeuteriumSynthesizer]||0,i=t*10*1.1**t,o=n*10*1.1**n,s=r*15*1.1**r;return{metalMine:{buildingLevel:t,buildingName:`buildings.metalMine`,consumption:i},crystalMine:{buildingLevel:n,buildingName:`buildings.crystalMine`,consumption:o},deuteriumSynthesizer:{buildingLevel:r,buildingName:`buildings.deuteriumSynthesizer`,consumption:s},total:i+o+s}},Ad=(e,t=`Commander`)=>{let n={id:e,name:t,planets:[],technologies:{},officers:{},researchQueue:[],fleetMissions:[],missileAttacks:[],battleReports:[],spyReports:[],spiedNotifications:[],npcActivityNotifications:[],missionReports:[],incomingFleetAlerts:[],giftNotifications:[],giftRejectedNotifications:[],diplomaticRelations:{},diplomaticReports:[],points:0};return Object.values(y).forEach(e=>{n.technologies[e]=0}),Object.values(c).forEach(e=>{n.officers[e]=qu(e)}),n},jd=e=>e.length===0,Md=(e,t,n=10)=>{let r=[];for(let e=1;e<=n;e++)r.push({position:e,planet:null});return r},Nd=()=>({galaxy:Math.floor(Math.random()*9)+1,system:Math.floor(Math.random()*10)+1,position:Math.floor(Math.random()*10)+1}),Pd=(e,t,n)=>`${e}:${t}:${n}`,Fd=(e,t)=>{let n=Yu(e.officers,t),r=(t,n,r,i,a)=>{Ou(e,t)};return e.planets.forEach(e=>{wd(e,t,n)}),e.planets.forEach(n=>{Bu(n,t,r),n.isMoon?n.maxSpace=vd(n):n.maxSpace=yd(n,e.technologies[y.TerraformingTechnology]||0)}),{updatedResearchQueue:Tu(e.researchQueue,e.technologies,t,r)}},Id=(e,t)=>{Xu(e,t)},Ld=(e,t)=>{let n={};if(e.requirements&&Object.assign(n,e.requirements),e.levelRequirements){let r=Object.keys(e.levelRequirements).map(Number).filter(e=>e<=t).sort((e,t)=>e-t);for(let t of r){let r=e.levelRequirements[t];if(r)for(let[e,t]of Object.entries(r)){let r=n[e]||0;n[e]=Math.max(r,t)}}}return n},Rd=(e,t,n)=>{if(!e||!n)return!0;for(let[r,i]of Object.entries(n))if(Object.values(a).includes(r)){if((e.buildings[r]||0)Sd(e,Yu(t,Date.now())),Bd=(e,t)=>Cd(e,Yu(t,Date.now()).storageCapacityBonus),Vd=(e,t=0)=>{let n=e.buildings[a.NaniteFactory]||0;return Math.min(1+n+t,10)},Hd=e=>{let t=e[y.ComputerTechnology]||0;return Math.min(1+t,10)},Ud=(e=0)=>Math.min(1+e,10),Wd=(e,t,n,r)=>{let i=Pu(t,(e.buildings[t]||0)+1),a=f[t];if(e.buildQueue.find(e=>(e.type===`building`||e.type===`demolish`)&&e.itemType===t))return{valid:!1,reason:`errors.buildingAlreadyInQueue`};if(a.planetOnly&&e.isMoon)return{valid:!1,reason:`errors.planetOnly`};if(a.moonOnly&&!e.isMoon)return{valid:!1,reason:`errors.moonOnly`};let o=Vd(e,Yu(r,Date.now()).additionalBuildQueue);return e.buildQueue.filter(e=>e.type===`building`||e.type===`demolish`).length>=o?{valid:!1,reason:`errors.buildQueueFull`}:Ru(e,t)?Td(e.resources,i)?Lu(t,e,n)?{valid:!0}:{valid:!1,reason:`errors.requirementsNotMet`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.insufficientSpace`}},Gd=(e,t,n)=>{let r=(e.buildings[t]||0)+1,i=Pu(t,r),o=Yu(n,Date.now()),s=e.buildings[a.RoboticsFactory]||0,c=e.buildings[a.NaniteFactory]||0,l=Fu(t,r,o.buildingSpeedBonus,s,c);return Ed(e.resources,i),zu(t,r,l)},Kd=(e,t)=>{let n=Pu(t.itemType,t.targetLevel||1);return{metal:Math.floor(n.metal*.5),crystal:Math.floor(n.crystal*.5),deuterium:Math.floor(n.deuterium*.5),darkMatter:Math.floor(n.darkMatter*.5),energy:0}},qd=(e,t)=>{let n=e.findIndex(e=>e.id===t);return n===-1?{item:null,index:-1}:{item:e[n]||null,index:n}},Jd=(e,t,n)=>{if((e.buildings[t]||0)<=0)return{valid:!1,reason:`errors.buildingLevelZero`};let r=Vd(e,Yu(n,Date.now()).additionalBuildQueue);return e.buildQueue.filter(e=>e.type===`building`||e.type===`demolish`).length>=r?{valid:!1,reason:`errors.buildQueueFull`}:{valid:!0}},Yd=(e,t,n)=>{let r=e.buildings[t]||0,i=Yu(n,Date.now()),o=e.buildings[a.RoboticsFactory]||0,s=e.buildings[a.NaniteFactory]||0,c=Hu(t,r,i.buildingSpeedBonus,o,s),l=Vu(t,r);return e.resources.metal+=l.metal,e.resources.crystal+=l.crystal,e.resources.deuterium+=l.deuterium,e.resources.darkMatter+=l.darkMatter,Uu(t,r,c)},Xd=(e,t,n,r)=>{let i=xu(t,(n[t]||0)+1);if(r.find(e=>e.type===`technology`&&e.itemType===t))return{valid:!1,reason:`errors.technologyAlreadyInQueue`};let a=Hd(n);return r.length>=a?{valid:!1,reason:`errors.researchQueueFull`}:Cu(t,e.buildings,n)?Td(e.resources,i)?{valid:!0}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},Zd=(e,t,n,r,i)=>{let o=n+1,s=xu(t,o),c=Yu(r,Date.now()),l=e.buildings[a.ResearchLab]||1,u=i[y.EnergyTechnology]||0,d=Su(t,n,c.researchSpeedBonus,l,u);return Ed(e.resources,s),{queueItem:wu(t,o,d)}},Qd=e=>{let t=xu(e.itemType,e.targetLevel||1);return{metal:Math.floor(t.metal*.5),crystal:Math.floor(t.crystal*.5),deuterium:Math.floor(t.deuterium*.5),darkMatter:Math.floor(t.darkMatter*.5),energy:0}};function $d(e){return new Worker(``+new URL(`battle.worker-CkRIHUu5.js`,import.meta.url).href,{name:e?.name})}var ef=e=>{if(typeof e!=`object`||!e)return e;let t=V(e);if(Array.isArray(t))return t.map(e=>ef(e));if(t&&typeof t==`object`){let e={};for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=ef(t[n]));return e}return t};const tf=new class{constructor(){this.battleWorker=null,this.pendingTasks=new Map,this.messageIdCounter=0,this.defaultTimeout=1e4}initBattleWorker(){this.battleWorker||(this.battleWorker=new $d,this.setupWorkerHandlers(this.battleWorker,`Battle`))}setupWorkerHandlers(e,t){e.onmessage=e=>{let{id:t,success:n,data:r,error:i}=e.data,a=this.pendingTasks.get(t);if(!a){console.warn(`[WorkerManager] No pending task found for message ID: ${t}`);return}a.timeout&&clearTimeout(a.timeout),this.pendingTasks.delete(t),n?a.resolve(r):a.reject(Error(i||`Worker task failed`))},e.onerror=e=>{console.error(`[WorkerManager] ${t} worker error:`,e);for(let e of this.pendingTasks.values())e.timeout&&clearTimeout(e.timeout),e.reject(Error(`${t} worker crashed`));this.pendingTasks.clear(),t===`Battle`&&(this.battleWorker=null)}}generateMessageId(){return`msg_${Date.now()}_${++this.messageIdCounter}`}getWorkerByType(e){if(e===_.SIMULATE_BATTLE||e===_.CALCULATE_PLUNDER||e===_.CALCULATE_DEBRIS)return this.initBattleWorker(),this.battleWorker;throw Error(`Unknown message type: ${e}`)}sendMessage(e,t,n=this.defaultTimeout){let r=this.getWorkerByType(e);if(!r)return Promise.reject(Error(`Worker initialization failed`));let i=this.generateMessageId();return new Promise((a,o)=>{let s=setTimeout(()=>{this.pendingTasks.delete(i),o(Error(`Worker task timeout after ${n}ms`))},n);this.pendingTasks.set(i,{resolve:a,reject:o,timeout:s});let c={id:i,type:e,payload:ef(t)};r.postMessage(c)})}async simulateBattle(e){return this.sendMessage(_.SIMULATE_BATTLE,e)}async calculatePlunder(e){return this.sendMessage(_.CALCULATE_PLUNDER,e)}async calculateDebris(e){return this.sendMessage(_.CALCULATE_DEBRIS,e)}destroy(){this.battleWorker&&=(this.battleWorker.terminate(),null);for(let e of this.pendingTasks.values())e.timeout&&clearTimeout(e.timeout),e.reject(Error(`Worker manager destroyed`));this.pendingTasks.clear()}getPendingTaskCount(){return this.pendingTasks.size}},nf=async(e,t,n,r,i,a,o,s)=>{let c=o.weaponsTechnology||0,l=o.shieldingTechnology||0,u=o.armourTechnology||0,d=s.weaponsTechnology||0,f=s.shieldingTechnology||0,m=s.armourTechnology||0,h=await tf.simulateBattle({attacker:{ships:e,weaponTech:c,shieldTech:l,armorTech:u},defender:{ships:t,defense:n,weaponTech:d,shieldTech:f,armorTech:m},maxRounds:6}),g=h.winner===`attacker`?await tf.calculatePlunder({defenderResources:r,attackerFleet:h.attackerRemaining}):{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},_=await tf.calculateDebris({attackerLosses:h.attackerLosses,defenderLosses:h.defenderLosses}),v=_.metal+_.crystal,y=Math.min(p.baseChance+Math.floor(v/p.chancePerDebris),p.maxChance)/100;return{id:`battle_${Date.now()}`,timestamp:Date.now(),attackerId:``,defenderId:``,attackerPlanetId:``,defenderPlanetId:``,attackerFleet:e,defenderFleet:t,defenderDefense:n,attackerLosses:h.attackerLosses,defenderLosses:h.defenderLosses,winner:h.winner,plunder:g,debrisField:_,rounds:h.rounds,attackerRemaining:h.attackerRemaining,defenderRemaining:h.defenderRemaining,roundDetails:h.roundDetails,moonChance:y}},rf=(e,t)=>{let n={...t};return Object.keys(e).forEach(r=>{let i=e[r]||0,a=t[r]||0,o=i-a;o>0&&(n[r]=a+Math.floor(o*.7))}),n},af=e=>{let t=e.metal+e.crystal;if(t{let c=af(e);if(c===0||Math.random()*100>=c)return null;let l={id:`moon_${Date.now()}`,name:`Moon [${t.galaxy}:${t.system}:${t.position}]`,ownerId:s,position:t,resources:{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[n.LightFighter]:0,[n.HeavyFighter]:0,[n.Cruiser]:0,[n.Battleship]:0,[n.Battlecruiser]:0,[n.Bomber]:0,[n.Destroyer]:0,[n.SmallCargo]:0,[n.LargeCargo]:0,[n.ColonyShip]:0,[n.Recycler]:0,[n.EspionageProbe]:0,[n.SolarSatellite]:0,[n.DarkMatterHarvester]:0,[n.Deathstar]:0},defense:{[o.RocketLauncher]:0,[o.LightLaser]:0,[o.HeavyLaser]:0,[o.GaussCannon]:0,[o.IonCannon]:0,[o.PlasmaTurret]:0,[o.SmallShieldDome]:0,[o.LargeShieldDome]:0,[o.AntiBallisticMissile]:0,[o.InterplanetaryMissile]:0,[o.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:p.baseSize,maxFleetStorage:r.baseStorage,isMoon:!0,parentPlanetId:i};return Object.values(a).forEach(e=>{l.buildings[e]=0}),l},sf=(e,t,n)=>{if(e.find(e=>e.position.galaxy===t.galaxy&&e.position.system===t.system&&e.position.position===t.position&&e.isMoon))return{canCreate:!1,reason:`errors.moonExists`};let r=_d(n);return r===0?{canCreate:!1,reason:`errors.insufficientDebris`,chance:r}:{canCreate:!0,chance:r}},cf=e=>Math.random()*100<=e;var $=(e,n,r)=>{let i=e.split(`.`),a=t[n];for(let t of i)if(a&&typeof a==`object`&&t in a)a=a[t];else return e;let o=typeof a==`string`?a:e;return r&&Object.entries(r).forEach(([e,t])=>{o=o.replace(RegExp(`\\{${e}\\}`,`g`),String(t))}),o};const lf=e=>e<=l.HOSTILE_THRESHOLD?s.Hostile:e>=l.FRIENDLY_THRESHOLD?s.Friendly:s.Neutral,uf=(e,t)=>({fromId:e,toId:t,reputation:0,status:s.Neutral,lastUpdated:Date.now(),history:[]}),df=(e,t,n,r)=>{let i=e.reputation,a=Math.max(l.MIN_REPUTATION,Math.min(l.MAX_REPUTATION,i+t)),o=lf(a);return e.history||=[],e.history.push({timestamp:Date.now(),change:t,reason:n,details:r}),e.history.length>50&&(e.history=e.history.slice(-50)),{...e,reputation:a,status:o,lastUpdated:Date.now()}},ff=e=>{let{REPUTATION_CHANGES:t}=l,n=e.metal+e.crystal*1.5+e.deuterium*3;if(n(e[n]||(e[n]=uf(t,n)),e[n]),mf=(e,t)=>{let{GIFT_ACCEPTANCE_CONFIG:n}=l,r=e.relations?.[t.id]?.reputation||0,i=n.NPC_REJECTION_BASE_PROBABILITY;return r<0?i+=Math.abs(r)*n.NPC_REJECTION_REPUTATION_MODIFIER:r>0&&(i-=r*n.NPC_REJECTION_REPUTATION_MODIFIER),Math.max(n.MIN_REJECTION_PROBABILITY,Math.min(n.MAX_REJECTION_PROBABILITY,i))},hf=(e,t,n,r)=>{let i=mf(n,t);if(Math.random(){let{GIFT_ACCEPTANCE_CONFIG:i}=l;e.giftRejectedNotifications||=[];let a=t.relations?.[e.id]?.reputation||0,o={id:`gift-rejected-${Date.now()}-${Math.random()}`,timestamp:Date.now(),npcId:t.id,npcName:t.name,rejectedResources:n,currentReputation:a,reason:a<-20?`hostile`:a<20?`neutral_distrust`:`polite_decline`,read:!1};e.giftRejectedNotifications.push(o),e.giftRejectedNotifications.length>50&&(e.giftRejectedNotifications=e.giftRejectedNotifications.slice(-50)),t.relations||={};let s=pf(t.relations,t.id,e.id);t.relations[e.id]=df(s,i.REJECTION_REPUTATION_PENALTY,m.GiftResources,$(`diplomacy.reports.rejectedPlayerGift`,r)),xf(e,t,m.GiftResources,i.REJECTION_REPUTATION_PENALTY,$(`diplomacy.reports.npcRejectedGift`,r,{npcName:t.name,reputation:i.REJECTION_REPUTATION_PENALTY.toString()}))};const _f=(e,t,n,r,i)=>{let{REPUTATION_CHANGES:a}=l,o=a.ATTACK;n.winner===`attacker`&&(o=a.ATTACK_WIN),e.diplomaticRelations||={};let s=pf(e.diplomaticRelations,e.id,t.id);e.diplomaticRelations[t.id]=df(s,o,m.Attack,$(`diplomacy.reports.attackedNpc`,i,{npcName:t.name})),t.relations||={};let c=pf(t.relations,t.id,e.id);t.relations[e.id]=df(c,o,m.Attack,$(`diplomacy.reports.wasAttackedByPlayer`,i)),t.allies&&t.allies.length>0&&vf(e,t,r,i),xf(e,t,m.Attack,-o,$(`diplomacy.reports.youAttackedNpc`,i,{npcName:t.name}))},vf=(e,t,n,r)=>{let{REPUTATION_CHANGES:i}=l;n.filter(e=>t.allies?.includes(e.id)).forEach(n=>{n.relations||={};let a=pf(n.relations,n.id,e.id);n.relations[e.id]=df(a,i.ALLY_ATTACKED,m.AllyAttacked,$(`diplomacy.reports.playerAttackedAlly`,r,{allyName:t.name})),xf(e,n,m.AllyAttacked,i.ALLY_ATTACKED,$(`diplomacy.reports.allyDispleased`,r,{allyName:n.name,targetName:t.name}))})},yf=(e,t,n,r)=>{let{REPUTATION_CHANGES:i}=l,a=n?i.SPY_DETECTED:i.SPY_UNDETECTED;t.relations||={};let o=pf(t.relations,t.id,e.id);t.relations[e.id]=df(o,a,m.Spy,$(`diplomacy.reports.wasSpiedByPlayer`,r,{detected:n?`true`:`false`})),n&&xf(e,t,m.Spy,a,$(`diplomacy.reports.spyDetected`,r,{npcName:t.name}))},bf=(e,t,n,r)=>{let{REPUTATION_CHANGES:i}=l,a=n.find(e=>e.planets.some(e=>e.position.galaxy===t.galaxy&&e.position.system===t.system&&e.position.position===t.position));if(a){e.diplomaticRelations||={};let t=pf(e.diplomaticRelations,e.id,a.id);e.diplomaticRelations[a.id]=df(t,i.STEAL_DEBRIS,m.StealDebris,$(`diplomacy.reports.stoleDebrisFromTerritory`,r,{npcName:a.name})),a.relations||={};let n=pf(a.relations,a.id,e.id);a.relations[e.id]=df(n,i.STEAL_DEBRIS,m.StealDebris,$(`diplomacy.reports.playerStoleDebris`,r)),xf(e,a,m.StealDebris,i.STEAL_DEBRIS,$(`diplomacy.reports.recycledDebrisNearNpc`,r,{npcName:a.name}))}};var xf=(e,t,n,r,i)=>{e.diplomaticReports||=[],e.diplomaticRelations||={};let a=e.diplomaticRelations[t.id]||uf(e.id,t.id),o=a.status,s=Math.max(l.MIN_REPUTATION,Math.min(l.MAX_REPUTATION,a.reputation+r)),c=lf(s),u={id:`diplomatic-${Date.now()}-${Math.random()}`,timestamp:Date.now(),npcId:t.id,npcName:t.name,eventType:n,reputationChange:r,newReputation:s,oldStatus:o,newStatus:c,message:i,read:!1};e.diplomaticReports.push(u),e.diplomaticReports.length>100&&(e.diplomaticReports=e.diplomaticReports.slice(-100))};const Sf=(e,t,n)=>{let{GIFT_ACCEPTANCE_CONFIG:r}=l;t.giftNotifications||=[];let i=e.relations?.[t.id]?.reputation||0,a=Math.floor(ff(n)*.5),o={id:`gift-${Date.now()}-${Math.random()}`,timestamp:Date.now(),fromNpcId:e.id,fromNpcName:e.name,resources:n,currentReputation:i,expectedReputationGain:a,expiresAt:Date.now()+r.GIFT_EXPIRATION_DAYS*24*3600*1e3,read:!1};t.giftNotifications.push(o),t.giftNotifications.length>50&&(t.giftNotifications=t.giftNotifications.slice(-50))},Cf=(e,t,n,r)=>{if(e.planets&&e.planets.length>0){let t=e.planets[0];t&&(t.resources.metal+=n.resources.metal,t.resources.crystal+=n.resources.crystal,t.resources.deuterium+=n.resources.deuterium,t.resources.darkMatter+=n.resources.darkMatter)}t.relations||={};let i=pf(t.relations,t.id,e.id);t.relations[e.id]=df(i,n.expectedReputationGain,m.GiftResources,$(`diplomacy.reports.giftedResourcesToPlayer`,r)),e.diplomaticRelations||={};let a=pf(e.diplomaticRelations,e.id,t.id);e.diplomaticRelations[t.id]=df(a,n.expectedReputationGain,m.GiftResources,$(`diplomacy.reports.receivedGiftFromNpc`,r,{npcName:t.name})),xf(e,t,m.GiftResources,n.expectedReputationGain,$(`diplomacy.reports.acceptedGiftFromNpc`,r,{npcName:t.name,metal:n.resources.metal.toString(),crystal:n.resources.crystal.toString(),deuterium:n.resources.deuterium.toString()})),e.giftNotifications&&=e.giftNotifications.filter(e=>e.id!==n.id)},wf=(e,t,n,r)=>{let{GIFT_ACCEPTANCE_CONFIG:i}=l;t.relations||={};let a=pf(t.relations,t.id,e.id);t.relations[e.id]=df(a,i.REJECTION_REPUTATION_PENALTY,m.GiftResources,$(`diplomacy.reports.playerRejectedGift`,r)),xf(e,t,m.GiftResources,i.REJECTION_REPUTATION_PENALTY,$(`diplomacy.reports.rejectedGiftFromNpc`,r,{npcName:t.name,reputation:i.REJECTION_REPUTATION_PENALTY.toString()})),e.giftNotifications&&=e.giftNotifications.filter(e=>e.id!==n.id)},Tf=(e,t)=>e.galaxy===t.galaxy&&e.system===t.system&&e.position===t.position?5:e.galaxy===t.galaxy&&e.system===t.system?1e3+Math.abs(t.position-e.position)*5:e.galaxy===t.galaxy?2700+Math.abs(t.system-e.system)*95:2e4+Math.abs(t.galaxy-e.galaxy)*2e4,Ef=(e,t)=>Math.max(10,Math.floor(e*1e4/t)),Df=(e,t,n,r,i,a,o)=>{let s=Date.now();return{id:`mission_${s}`,playerId:e,originPlanetId:t,targetPosition:n,missionType:r,fleet:i,cargo:a,departureTime:s,arrivalTime:s+o*1e3,returnTime:s+o*2*1e3,status:`outbound`}},Of=(e,t,n,r,i=`zh-CN`)=>{if(e.isGift&&e.giftTargetNpcId&&n&&r){let t=r.find(t=>t.id===e.giftTargetNpcId);if(t){let r=hf(e,n,t,i);return e.status=`returning`,r.accepted?(e.cargo={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},{success:!0,reputationGain:r.reputationGain}):{success:!1,reputationGain:void 0}}}return t?(t.resources.metal+=e.cargo.metal,t.resources.crystal+=e.cargo.crystal,t.resources.deuterium+=e.cargo.deuterium,t.resources.darkMatter+=e.cargo.darkMatter,e.status=`returning`,e.cargo={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},{success:!0}):(e.status=`returning`,e.cargo={metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},{success:!1})},kf=async(e,t,n,r,i)=>{if(!t||t.ownerId===n.id)return e.status=`returning`,null;let a=await nf(e.fleet,t.fleet,t.defense,t.resources,n.officers,r?.officers||{},n.technologies,r?.technologies||{});a.id=`battle_${Date.now()}`,a.attackerId=n.id,a.defenderId=t.ownerId||`unknown`,a.attackerPlanetId=e.originPlanetId,a.defenderPlanetId=t.id,e.cargo=a.plunder;let o={};Object.entries(e.fleet).forEach(([e,t])=>{let n=t-(a.attackerLosses[e]||0);n>0&&(o[e]=n)}),e.fleet=o,Object.entries(a.defenderLosses.fleet).forEach(([e,n])=>{t.fleet[e]=Math.max(0,t.fleet[e]-n)}),Object.entries(a.defenderLosses.defense).forEach(([e,n])=>{t.defense[e]=Math.max(0,t.defense[e]-n)});let s={...t.defense};Object.entries(a.defenderLosses.defense).forEach(([e,t])=>{s[e]=(s[e]||0)+t}),t.defense=rf(s,t.defense),t.resources.metal-=a.plunder.metal,t.resources.crystal-=a.plunder.crystal,t.resources.deuterium-=a.plunder.deuterium,e.status=`returning`;let c=null,l=sf(i,t.position,a.debrisField);l.canCreate&&l.chance&&cf(l.chance)&&(c=of(a.debrisField,t.position,t.id,t.ownerId||`unknown`));let u=null;return a.debrisField.metal+a.debrisField.crystal>0&&(u={id:`debris_${t.position.galaxy}_${t.position.system}_${t.position.position}`,position:t.position,resources:{metal:a.debrisField.metal,crystal:a.debrisField.crystal},createdAt:Date.now()}),{battleResult:a,moon:c,debrisField:u}},Af=async(e,t,n,r,i)=>{let a=await nf(t.fleet,n.fleet,n.defense,n.resources,{},r.officers||{},e.technologies,r.technologies);a.id=`battle_${Date.now()}`,a.attackerId=e.id,a.defenderId=r.id,a.attackerPlanetId=t.originPlanetId,a.defenderPlanetId=n.id,a.timestamp=Date.now(),a.winner===`attacker`&&a.plunder&&e.planets.find(e=>e.id===t.originPlanetId)&&(t.cargo=a.plunder);let o={};Object.entries(t.fleet).forEach(([e,t])=>{let n=t-(a.attackerLosses[e]||0);n>0&&(o[e]=n)}),t.fleet=o,Object.entries(a.defenderLosses.fleet).forEach(([e,t])=>{n.fleet[e]=Math.max(0,(n.fleet[e]||0)-t)}),Object.entries(a.defenderLosses.defense).forEach(([e,t])=>{n.defense[e]=Math.max(0,(n.defense[e]||0)-t)});let s={...n.defense};Object.entries(a.defenderLosses.defense).forEach(([e,t])=>{s[e]=(s[e]||0)+t}),n.defense=rf(s,n.defense),a.plunder&&(n.resources.metal=Math.max(0,n.resources.metal-a.plunder.metal),n.resources.crystal=Math.max(0,n.resources.crystal-a.plunder.crystal),n.resources.deuterium=Math.max(0,n.resources.deuterium-a.plunder.deuterium)),t.status=`returning`;let c=null,l=sf(i,n.position,a.debrisField);l.canCreate&&l.chance&&cf(l.chance)&&(c=of(a.debrisField,n.position,n.id,n.ownerId||`unknown`));let u=null;return a.debrisField.metal+a.debrisField.crystal>0&&(u={id:`debris_${n.position.galaxy}_${n.position.system}_${n.position.position}`,position:n.position,resources:{metal:a.debrisField.metal,crystal:a.debrisField.crystal},createdAt:Date.now()}),{battleResult:a,moon:c,debrisField:u}},jf=e=>1+e,Mf=e=>{let t=jf(e.technologies[y.Astrophysics]||0);return e.planets.length{if(t||!Mf(i))return e.status=`returning`,null;let c={id:`planet_${Date.now()}`,name:`${s} ${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}`,ownerId:i.id,position:e.targetPosition,resources:{metal:500,crystal:500,deuterium:0,darkMatter:0,energy:0},buildings:{},fleet:{[n.LightFighter]:0,[n.HeavyFighter]:0,[n.Cruiser]:0,[n.Battleship]:0,[n.Battlecruiser]:0,[n.Bomber]:0,[n.Destroyer]:0,[n.SmallCargo]:0,[n.LargeCargo]:0,[n.ColonyShip]:0,[n.Recycler]:0,[n.EspionageProbe]:0,[n.SolarSatellite]:0,[n.DarkMatterHarvester]:0,[n.Deathstar]:0},defense:{[o.RocketLauncher]:0,[o.LightLaser]:0,[o.HeavyLaser]:0,[o.GaussCannon]:0,[o.IonCannon]:0,[o.PlasmaTurret]:0,[o.SmallShieldDome]:0,[o.LargeShieldDome]:0,[o.AntiBallisticMissile]:0,[o.InterplanetaryMissile]:0,[o.PlanetaryShield]:0},buildQueue:[],lastUpdate:Date.now(),maxSpace:200,maxFleetStorage:r.baseStorage,isMoon:!1};return Object.values(a).forEach(e=>{c.buildings[e]=0}),e.fleet[n.ColonyShip]=(e.fleet[n.ColonyShip]||1)-1,e.status=`returning`,c},Pf=(e,t,n)=>{let r=e-t+Math.floor(n/5);return{showFleet:r>=-1,showDefense:r>=1,showBuildings:r>=3,showTechnologies:r>=5}},Ff=(e,t,n)=>{let r=.25,i=t-e;return i>0?r+=i*.1:r+=i*.05,r-=n*.01,Math.max(.01,Math.min(.99,r))},If=(e,t,r,i,a,o=`zh-CN`)=>{if(!t)return e.status=`returning`,null;let s=r.technologies[y.EspionageTechnology]||0,c=i?.technologies[y.EspionageTechnology]||0,l=e.fleet[n.EspionageProbe]||0,u=Pf(s,c,l),d=Ff(s,c,l),f=Math.random()e.planets.some(e=>e.id===t.id));e&&yf(r,e,f,o)}return e.status=`returning`,p},Lf=(e,t,n)=>{if(!t||t.ownerId!==n)return e.status=`returning`,!1;for(let[n,r]of Object.entries(e.fleet))t.fleet[n]+=r;return!0},Rf=(e,t,r,i,a=`zh-CN`)=>{if(!t)return e.status=`returning`,null;let o=(e.fleet[n.Recycler]||0)*2e4-(e.cargo.metal+e.cargo.crystal+e.cargo.deuterium),s=t.resources.metal+t.resources.crystal,c=Math.min(s,o);if(s===0)return e.status=`returning`,null;let l=t.resources.metal/s,u=t.resources.crystal/s,d=Math.floor(c*l),f=Math.floor(c*u);e.cargo.metal+=d,e.cargo.crystal+=f;let p=t.resources.metal-d,m=t.resources.crystal-f;return e.status=`returning`,r&&i&&c>0&&bf(r,t.position,i,a),{collectedResources:{metal:d,crystal:f},remainingDebris:p>0||m>0?{metal:p,crystal:m}:null}},zf=(e,t,n)=>{let r=e*10,i=t*5,a=Math.floor(n/1e4),o=r-i-a;return Math.max(1,Math.min(99,o))},Bf=(e,t)=>{let n=0;return Object.entries(e).forEach(([e,t])=>{t>0&&(n+=t*100)}),Object.entries(t).forEach(([e,t])=>{t>0&&(n+=t*50)}),n},Vf=(e,t,r)=>{if(!t||t.ownerId===r.id)return e.status=`returning`,null;let i=e.fleet[n.Deathstar]||0;if(i===0)return e.status=`returning`,null;let a=zf(i,t.defense[o.PlanetaryShield]||0,Bf(t.fleet,t.defense)),s=Math.random()*100{if(e.status!==`outbound`)return!1;let n=t-e.departureTime;return te<1e3?{powerRatio:.3+e/1e3*.2,checkInterval:300,resourceGrowthRate:.4,buildingGrowthSpeed:.4,techGrowthSpeed:.4}:e<5e3?{powerRatio:.5+(e-1e3)/4e3*.2,checkInterval:240,resourceGrowthRate:.6,buildingGrowthSpeed:.6,techGrowthSpeed:.6}:e<2e4?{powerRatio:.7+(e-5e3)/15e3*.2,checkInterval:180,resourceGrowthRate:.8,buildingGrowthSpeed:.8,techGrowthSpeed:.8}:e<5e4?{powerRatio:.9+(e-2e4)/3e4*.2,checkInterval:150,resourceGrowthRate:1,buildingGrowthSpeed:1,techGrowthSpeed:1}:{powerRatio:Math.min(1.3,1.1+(e-5e4)/5e4*.2),checkInterval:120,resourceGrowthRate:1.2,buildingGrowthSpeed:1.2,techGrowthSpeed:1.2},Gf=e=>{let t=e.planets.filter(t=>t.ownerId===e.player.id);if(t.length===0)return{avgBuildingLevel:0,avgTechLevel:0,totalFleetPower:0,totalResources:0};let n=0,r=0;t.forEach(e=>{Object.values(e.buildings).forEach(e=>{n+=e,r++})});let i=Object.values(e.player.technologies),a=i.length>0?i.reduce((e,t)=>e+t,0)/i.length:0,o=0;t.forEach(e=>{Object.entries(e.fleet).forEach(([e,t])=>{let n=u[e],r=n.attack+n.shield+n.armor/10;o+=r*t})});let s=t.reduce((e,t)=>e+t.resources.metal+t.resources.crystal+t.resources.deuterium,0);return{avgBuildingLevel:r>0?n/r:0,avgTechLevel:a,totalFleetPower:o,totalResources:s}},Kf=e=>{let t=0,n=0;e.planets.forEach(e=>{Object.values(e.buildings).forEach(e=>{t+=e,n++})});let r=Object.values(e.technologies),i=r.length>0?r.reduce((e,t)=>e+t,0)/r.length:0,a=0;e.planets.forEach(e=>{Object.entries(e.fleet).forEach(([e,t])=>{let n=u[e],r=n.attack+n.shield+n.armor/10;a+=r*t})});let o=e.planets.reduce((e,t)=>e+t.resources.metal+t.resources.crystal+t.resources.deuterium,0);return{avgBuildingLevel:n>0?t/n:0,avgTechLevel:i,totalFleetPower:a,totalResources:o}},qf=e=>{let t=e.planets[0];if(!t)return;let n=[a.MetalMine,a.CrystalMine,a.DeuteriumSynthesizer,a.SolarPlant,a.RoboticsFactory,a.Shipyard,a.ResearchLab,a.MetalStorage,a.CrystalStorage,a.DeuteriumTank,a.DarkMatterCollector];for(let e of n){let n=t.buildings[e]||0,r=n+1,i=f[e];if(i.maxLevel&&n>=i.maxLevel)continue;let a=Pu(e,r);if(t.resources.metal>=a.metal&&t.resources.crystal>=a.crystal&&t.resources.deuterium>=a.deuterium&&t.resources.darkMatter>=a.darkMatter){t.resources.metal-=a.metal,t.resources.crystal-=a.crystal,t.resources.deuterium-=a.deuterium,t.resources.darkMatter-=a.darkMatter,t.buildings[e]=r;break}}},Jf=e=>{let t=e.planets[0];if(!t)return;let n=[y.EnergyTechnology,y.ComputerTechnology,y.WeaponsTechnology,y.ShieldingTechnology,y.ArmourTechnology,y.CombustionDrive,y.ImpulseDrive,y.HyperspaceDrive,y.LaserTechnology,y.IonTechnology,y.PlasmaTechnology,y.Astrophysics,y.EspionageTechnology];for(let r of n){let n=e.technologies[r]||0,i=n+1,a=v[r];if(a.maxLevel&&n>=a.maxLevel)continue;let o=xu(r,i);if(t.resources.metal>=o.metal&&t.resources.crystal>=o.crystal&&t.resources.deuterium>=o.deuterium&&t.resources.darkMatter>=o.darkMatter){t.resources.metal-=o.metal,t.resources.crystal-=o.crystal,t.resources.deuterium-=o.deuterium,t.resources.darkMatter-=o.darkMatter,e.technologies[r]=i;break}}},Yf=e=>{let t=e.planets[0];if(!t)return;let r=[{shipType:n.LightFighter,priority:1},{shipType:n.HeavyFighter,priority:2},{shipType:n.Cruiser,priority:3},{shipType:n.Battleship,priority:4},{shipType:n.SmallCargo,priority:5},{shipType:n.LargeCargo,priority:6},{shipType:n.Recycler,priority:7},{shipType:n.EspionageProbe,priority:8}];r.sort((e,t)=>e.priority-t.priority);for(let{shipType:n}of r){let r=u[n];if(!Object.entries(r.requirements||{}).every(([n,r])=>n in a?(t.buildings[n]||0)>=r:n in y?(e.technologies[n]||0)>=r:!1))continue;let i=Math.floor(Math.min(t.resources.metal/r.cost.metal,t.resources.crystal/r.cost.crystal,t.resources.deuterium/r.cost.deuterium,r.cost.darkMatter>0?t.resources.darkMatter/r.cost.darkMatter:1/0)),o=Math.min(i,e.difficulty===`easy`?5:e.difficulty===`medium`?10:20);if(o>0){t.resources.metal-=r.cost.metal*o,t.resources.crystal-=r.cost.crystal*o,t.resources.deuterium-=r.cost.deuterium*o,t.resources.darkMatter-=r.cost.darkMatter*o,t.fleet[n]=(t.fleet[n]||0)+o;break}}},Xf=(e,t,n)=>{let r=e.planets[0];if(!r)return;let i=r.buildings[a.MetalMine]||0,o=r.buildings[a.CrystalMine]||0,s=r.buildings[a.DeuteriumSynthesizer]||0,c=r.buildings[a.DarkMatterCollector]||0,l=30*i*1.1**i*n.resourceGrowthRate,u=20*o*1.1**o*n.resourceGrowthRate,d=10*s*1.1**s*n.resourceGrowthRate,f=25*c*1.5**c/3600*n.resourceGrowthRate;r.resources.metal+=l*t,r.resources.crystal+=u*t,r.resources.deuterium+=d*t,r.resources.darkMatter+=f*t;let p=r.buildings[a.MetalStorage]||0,m=r.buildings[a.CrystalStorage]||0,h=r.buildings[a.DeuteriumTank]||0,g=r.buildings[a.DarkMatterTank]||0;r.resources.metal=Math.min(r.resources.metal,1e4*2**p),r.resources.crystal=Math.min(r.resources.crystal,1e4*2**m),r.resources.deuterium=Math.min(r.resources.deuterium,1e4*2**h),r.resources.darkMatter=Math.min(r.resources.darkMatter,1e3*2**g)},Zf=(e,t,n)=>{let r=Wf(t.player.points);Xf(e,n,r);let i=Date.now();if(i-(e.lastGrowthCheck||0)>=r.checkInterval*1e3){e.lastGrowthCheck=i;let n=Gf(t),a=Kf(e),o=n.avgBuildingLevel*r.powerRatio,s=n.avgTechLevel*r.powerRatio,c=n.totalFleetPower*r.powerRatio;a.avgBuildingLevel{let n=Uf[e.difficulty],r=e.planets[0];if(!r)return;let i=Math.max(5,Math.floor(t.avgBuildingLevel*n.powerRatio));r.buildings[a.MetalMine]=i,r.buildings[a.CrystalMine]=Math.floor(i*.8),r.buildings[a.DeuteriumSynthesizer]=Math.floor(i*.6),r.buildings[a.SolarPlant]=i+2,r.buildings[a.RoboticsFactory]=Math.floor(i*.5),r.buildings[a.Shipyard]=Math.floor(i*.4),r.buildings[a.ResearchLab]=Math.floor(i*.4),r.buildings[a.MetalStorage]=Math.floor(i*.3),r.buildings[a.CrystalStorage]=Math.floor(i*.3),r.buildings[a.DeuteriumTank]=Math.floor(i*.3);let o=Math.max(3,Math.floor(t.avgTechLevel*n.powerRatio));e.technologies[y.EnergyTechnology]=o,e.technologies[y.ComputerTechnology]=Math.floor(o*.8),e.technologies[y.WeaponsTechnology]=Math.floor(o*.7),e.technologies[y.ShieldingTechnology]=Math.floor(o*.7),e.technologies[y.ArmourTechnology]=Math.floor(o*.7),e.technologies[y.CombustionDrive]=Math.floor(o*.6),r.resources.metal=1e5*n.powerRatio,r.resources.crystal=5e4*n.powerRatio,r.resources.deuterium=2e4*n.powerRatio,r.resources.darkMatter=1e3*n.powerRatio},$f=e=>{e.forEach(e=>{e.allies||=[],e.enemies||=[],e.relations||={}}),e.forEach(t=>{let n=e.filter(e=>e.id!==t.id&&!t.allies.includes(e.id)&&!e.allies.includes(t.id));if(n.length===0)return;let r=Math.min(Math.floor(Math.random()*2)+1,n.length);for(let e=0;ee<1e3?{spyInterval:2400,attackInterval:4800,attackProbability:.15,minSpyProbes:1,attackFleetSizeRatio:.3}:e<5e3?{spyInterval:1800,attackInterval:3600,attackProbability:.25,minSpyProbes:2,attackFleetSizeRatio:.5}:e<2e4?{spyInterval:1200,attackInterval:2400,attackProbability:.4,minSpyProbes:3,attackFleetSizeRatio:.7}:e<5e4?{spyInterval:900,attackInterval:1800,attackProbability:.55,minSpyProbes:4,attackFleetSizeRatio:.85}:{spyInterval:600,attackInterval:1200,attackProbability:.7,minSpyProbes:5,attackFleetSizeRatio:.95},tp=(e,t,n,r)=>{if(n-(e.lastSpyTime||0){if(n-(e.lastAttackTime||0){let{NPC_GIFT_CONFIG:r}=l;if(!r.ENABLED||n-(e.lastGiftTime||0){let{NPC_GIFT_CONFIG:n}=l;Sf(e,t,{metal:Math.floor(Math.random()*(n.GIFT_AMOUNT.METAL.max-n.GIFT_AMOUNT.METAL.min+1))+n.GIFT_AMOUNT.METAL.min,crystal:Math.floor(Math.random()*(n.GIFT_AMOUNT.CRYSTAL.max-n.GIFT_AMOUNT.CRYSTAL.min+1))+n.GIFT_AMOUNT.CRYSTAL.min,deuterium:Math.floor(Math.random()*(n.GIFT_AMOUNT.DEUTERIUM.max-n.GIFT_AMOUNT.DEUTERIUM.min+1))+n.GIFT_AMOUNT.DEUTERIUM.min,darkMatter:0,energy:0}),e.lastGiftTime=Date.now()};var ap=(e,t)=>{if(e.planets.length===0)return null;let n=null,r=1/0;for(let i of e.planets){let e=Tf(i.position,t);Object.values(i.fleet).some(e=>(e||0)>0)&&e{let a=ap(e,t.position);if(!a||(a.fleet[n.EspionageProbe]||0){let a=e.technologies[y.EspionageTechnology]||0,o=i.technologies[y.EspionageTechnology]||0,s=t.fleet[n.EspionageProbe]||0,c=Math.max(0,Math.min(100,50+(o-a)*10-s*5)),l=Math.random()*100=2?{...r.fleet}:void 0,defense:a>=4?{...r.defense}:void 0,buildings:a>=6?{...r.buildings}:void 0,technologies:a>=8?{...i.technologies}:void 0,detectionChance:c};e.playerSpyReports||={},e.playerSpyReports[r.id]=u;let d={id:`spied-${t.id}`,timestamp:Date.now(),npcId:e.id,npcName:e.name,targetPlanetId:r.id,targetPlanetName:r.name,detectionSuccess:l,read:!1};return t.status=`returning`,t.returnTime=Date.now()+(t.arrivalTime-t.departureTime),{spiedNotification:d,spyReport:u}};var cp=(e,t,r,i)=>{let a={},o=!1,s=[n.LightFighter,n.HeavyFighter,n.Cruiser,n.Battleship,n.Bomber,n.Destroyer,n.Battlecruiser,n.Deathstar];for(let e of s){let n=t.fleet[e]||0;if(n>0){let t=Math.floor(n*i.attackFleetSizeRatio);t>0&&(a[e]=t,o=!0)}}return o?a:null};const lp=(e,t,n,r)=>{let i=ap(e,t.position);if(!i)return null;let a=cp(e,i,n,r);if(!a)return null;for(let[e,t]of Object.entries(a))i.fleet[e]=(i.fleet[e]||0)-t;let o=Tf(i.position,t.position),s=1/0;for(let e of Object.keys(a))s=Math.min(s,1e4);let c=Ef(o,s),l=Date.now(),u={id:`npc-attack-${e.id}-${l}`,playerId:e.id,npcId:e.id,isHostile:!0,originPlanetId:i.id,targetPosition:t.position,targetPlanetId:t.id,missionType:d.Attack,fleet:a,cargo:{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},departureTime:l,arrivalTime:l+c*1e3,status:`outbound`};return e.lastAttackTime=l,e.fleetMissions||=[],e.fleetMissions.push(u),u},up=(e,t,n)=>{let r=Object.values(e.fleet).reduce((e,t)=>e+(t||0),0);return{id:e.id,npcId:t.id,npcName:t.name,missionType:e.missionType,targetPlanetId:n.id,targetPlanetName:n.name,arrivalTime:e.arrivalTime,fleetSize:r,read:!1}},dp=(e,t)=>{e.incomingFleetAlerts||=[],e.incomingFleetAlerts=e.incomingFleetAlerts.filter(e=>e.arrivalTime>t)},fp=(e,t,n,r,i)=>{let a=ep(t.points),o=vp(e,r);if(o.length>0){let r=e.fleetMissions?.filter(e=>e.missionType===d.Recycle&&e.status===`outbound`)||[],i=new Set(r.map(e=>e.debrisFieldId).filter(Boolean)),a=o.filter(e=>!i.has(e.id));if(a.length>0){let r=a[Math.floor(Math.random()*a.length)];r&&yp(e,r,t,n)}}if(bp(e,i)){let r=xp(e,n,a);if(r){let i=n.find(e=>e.id===r.targetPlanetId);if(i){let n=up(r,e,i);t.incomingFleetAlerts||=[],t.incomingFleetAlerts.push(n)}return}}if(tp(e,t,i,a)){let r=n.filter(e=>e.ownerId===t.id);if(r.length>0){let i=r[Math.floor(Math.random()*r.length)];if(!i)return;let o=op(e,i,n,a);if(o){let n=up(o,e,i);t.incomingFleetAlerts||=[],t.incomingFleetAlerts.push(n)}}}if(np(e,t,i,a)&&e.playerSpyReports&&Object.keys(e.playerSpyReports).length>0){let r=Object.values(e.playerSpyReports),i=r[Math.floor(Math.random()*r.length)];if(!i)return;let o=n.find(e=>e.id===i.targetPlanetId);if(o){let n=lp(e,o,i,a);if(n){let r=up(n,e,o);t.incomingFleetAlerts||=[],t.incomingFleetAlerts.push(r)}}}rp(e,t,i)&&ip(e,t),dp(t,i)},pp=(e,t,n,r=0)=>{let i=ep(t.points),a=n.filter(e=>e.ownerId===t.id);if(a.length===0)return console.error(`[Test] No player planets found`),null;let o=a[r]||a[0];if(!o)return console.error(`[Test] Target planet not found`),null;let s=op(e,o,n,i);if(s){let n=up(s,e,o);t.incomingFleetAlerts||=[],t.incomingFleetAlerts.push(n)}else console.error(`[Test] Failed to create spy mission - NPC may not have spy probes`);return s},mp=(e,t,n,r=0)=>{let i=ep(t.points);if(!e.playerSpyReports||Object.keys(e.playerSpyReports).length===0)return console.error(`[Test] No spy reports available - NPC must spy first!`),null;let a=n.filter(e=>e.ownerId===t.id);if(a.length===0)return console.error(`[Test] No player planets found`),null;let o=a[r]||a[0];if(!o)return console.error(`[Test] Target planet not found`),null;let s=e.playerSpyReports[o.id];if(!s)return console.error(`[Test] No spy report for ${o.name} - spy this planet first!`),null;let c=lp(e,o,s,i);if(c){let n=up(c,e,o);t.incomingFleetAlerts||=[],t.incomingFleetAlerts.push(n)}else console.error(`[Test] Failed to create attack mission - NPC may not have ships`);return c},hp=(e,t,n,r=0)=>{let i=pp(e,t,n,r);if(!i)return{spyMission:null,attackMission:null};let a=n.filter(e=>e.ownerId===t.id),o=a[r]||a[0];if(!o)return console.error(`[Test] Target planet not found`),{spyMission:i,attackMission:null};let{spyReport:s,spiedNotification:c}=sp(e,i,o,t);return e.playerSpyReports||={},e.playerSpyReports[o.id]=s,t.spiedNotifications||=[],t.spiedNotifications.push(c),{spyMission:i,attackMission:mp(e,t,n,r)}},gp=(e,t,n=5,r)=>{if(!e.fleetMissions)return console.error(`[Test] NPC has no fleet missions`),!1;let i=e.fleetMissions.find(e=>e.id===t);if(!i)return console.error(`[Test] Mission not found`),!1;let a=Date.now(),o=n*1e3;if(i.departureTime=a,i.arrivalTime=a+o,r&&r.incomingFleetAlerts){let e=r.incomingFleetAlerts.find(e=>e.id===t);e&&(e.arrivalTime=i.arrivalTime)}return!0},_p=(e,t=5,n)=>{if(!e.fleetMissions)return console.error(`[Test] NPC has no fleet missions`),0;let r=Date.now(),i=t*1e3,a=0;return e.fleetMissions.forEach(e=>{if(e.status===`outbound`){if(e.departureTime=r,e.arrivalTime=r+i,n&&n.incomingFleetAlerts){let t=n.incomingFleetAlerts.find(t=>t.id===e.id);t&&(t.arrivalTime=e.arrivalTime)}a++}else e.status===`returning`&&e.returnTime&&(e.returnTime=r+i,a++)}),a},vp=(e,t)=>{let n=[];for(let r of Object.values(t))for(let t of e.planets)r.position.galaxy===t.position.galaxy&&r.position.system===t.position.system&&(r.resources.metal>1e3||r.resources.crystal>1e3)&&Math.abs(r.position.position-t.position.position)<=15&&n.push(r);return n},yp=(e,t,r,i)=>{let a=null,o=1/0;for(let n of e.planets)if(n.position.galaxy===t.position.galaxy&&n.position.system===t.position.system){let e=Math.abs(n.position.position-t.position.position);ee.ownerId===r.id&&e.position.galaxy===t.position.galaxy&&e.position.system===t.position.system&&e.position.position===t.position.position);if(h){let n=up(m,e,h);r.incomingFleetAlerts||=[],r.incomingFleetAlerts.push(n),r.npcActivityNotifications||=[],r.npcActivityNotifications.push({id:`npc-activity-${m.id}`,timestamp:p,npcId:e.id,npcName:e.name,activityType:`recycle`,targetPosition:t.position,targetPlanetId:h.id,targetPlanetName:h.name,arrivalTime:m.arrivalTime,read:!1})}return m},bp=(e,t)=>{if(!e.revengeTarget||!e.attackedBy)return!1;let n=e.attackedBy[e.revengeTarget];if(!n)return!1;let r=t-n.lastAttackTime;return!(r>24*3600*1e3||r<600*1e3)},xp=(e,t,n)=>{if(!e.revengeTarget||!e.attackedBy)return null;let r=e.attackedBy[e.revengeTarget];if(!r||!r.planetId)return null;let i=t.find(e=>e.id===r.planetId);if(!i)return null;let a=ap(e,i.position);if(!a)return null;let o=cp(e,a,{},{...n,attackFleetSizeRatio:Math.min(1,n.attackFleetSizeRatio*1.5)});if(!o)return null;for(let[e,t]of Object.entries(o))a.fleet[e]=(a.fleet[e]||0)-t;let s=Tf(a.position,i.position),c=1/0;for(let e of Object.keys(o))c=Math.min(c,1e4);let l=Ef(s,c),u=Date.now(),f={id:`npc-revenge-${e.id}-${u}`,playerId:e.id,npcId:e.id,isHostile:!0,originPlanetId:a.id,targetPosition:i.position,targetPlanetId:i.id,missionType:d.Attack,fleet:o,cargo:{metal:0,crystal:0,deuterium:0,darkMatter:0,energy:0},departureTime:u,arrivalTime:u+l*1e3,status:`outbound`};return e.fleetMissions||=[],e.fleetMissions.push(f),e.revengeTarget=void 0,f},Sp=e=>e===0?0:5*e-1,Cp=(e,t)=>e.galaxy===t.galaxy?Math.abs(e.system-t.system):1/0,wp=(e,t,n)=>{let r=Sp(n);return Cp(e,t)<=r},Tp=e=>30+e*60,Ep=(e,t,n,r,i)=>{let a=Date.now(),o=Tp(Cp(t.position,n))*1e3;return{id:`missile_${a}_${e}`,playerId:e,originPlanetId:t.id,targetPosition:n,targetPlanetId:r,missileCount:i,launchTime:a,arrivalTime:a+o,status:`flying`}},Dp=(e,t,n,r)=>{if((e.defense[o.InterplanetaryMissile]||0){let n=e.defense[o.InterplanetaryMissile]||0;e.defense[o.InterplanetaryMissile]=n-t},kp=(e,t)=>{let n=t.defense[o.AntiBallisticMissile]||0,r=Math.min(e,n),i=e-r,a={};if(r>0&&(a[o.AntiBallisticMissile]=r),i>0){let e=Object.keys(t.defense).filter(e=>e===o.SmallShieldDome||e===o.LargeShieldDome||e===o.PlanetaryShield?!1:(t.defense[e]||0)>0);for(let n=0;n0;n++){let n=Math.floor(Math.random()*e.length),r=e[n];r&&(a[r]||(a[r]=0),a[r]++,(t.defense[r]||0)-(a[r]||0)<=0&&e.splice(n,1))}}return{missileHits:i,missileIntercepted:r,defenseLosses:a}},Ap=(e,t)=>{for(let[n,r]of Object.entries(t)){let t=e.defense[n]||0;e.defense[n]=Math.max(0,t-r)}},jp=e=>{let t=0;for(let r of Object.values(n)){let n=e[r]||0,i=u[r];t+=n*i.storageUsage}return t},Mp=(e,t)=>{let n=r.baseStorage,i=e.buildings[a.Shipyard]||0,o=f[a.Shipyard].fleetStorageBonus||0;n+=i*o;let s=t[y.ComputerTechnology]||0,c=v[y.ComputerTechnology].fleetStorageBonus||0;return n+=s*c,n},Np=(e,t,n,r)=>{let i=jp(e.fleet),a=Mp(e,r);return i+u[t].storageUsage*n<=a},Pp=(e,t,n,r)=>{let i=Qu(t,n);return nd(t,e.buildings,r)?Td(e.resources,i)?Np(e,t,n,r)?{valid:!0}:{valid:!1,reason:`errors.insufficientFleetStorage`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},Fp=(e,t,n,r)=>{let i=Qu(t,n),o=Yu(r,Date.now()),s=e.buildings[a.RoboticsFactory]||0,c=e.buildings[a.NaniteFactory]||0,l=ed(t,n,o.buildingSpeedBonus,s,c);return Ed(e.resources,i),cd(t,n,l)},Ip=(e,t,n,r)=>{let i=$u(t,n);return rd(t,e.buildings,r)?Td(e.resources,i)?id(t,e.defense,n)?sd(t,e.defense,e.buildings,n)?{valid:!0}:{valid:!1,reason:`errors.missileSiloLimit`}:{valid:!1,reason:`errors.shieldDomeLimit`}:{valid:!1,reason:`errors.insufficientResources`}:{valid:!1,reason:`errors.requirementsNotMet`}},Lp=(e,t,n,r)=>{let i=$u(t,n),o=Yu(r,Date.now()),s=e.buildings[a.RoboticsFactory]||0,c=e.buildings[a.NaniteFactory]||0,l=td(t,n,o.buildingSpeedBonus,s,c);return Ed(e.resources,i),ld(t,n,l)},Rp=(e,t,n,r,i=0)=>{let a=Yu(r,Date.now());if(i>=Ud(a.additionalFleetSlots))return{valid:!1,reason:`errors.fleetMissionsFull`};if(!ud(e.fleet,t))return{valid:!1,reason:`errors.insufficientFleet`};let o=dd(t,a.fuelConsumptionReduction,n);return e.resources.deuterium{pd(e.fleet,t),e.resources.deuterium-=n,r&&Ed(e.resources,i)};export{Jd as $,V as $n,Uc as $t,Ef as A,ea as An,dd as At,Hf as B,On as Bn,Fu as Bt,sp as C,Wi as Cn,wd as Ct,Qf as D,qa as Dn,md as Dt,$f as E,ls as En,gd as Et,Vf as F,to as Fn,Ku as Ft,tf as G,hn as Gn,ju as Gt,ff as H,Ge as Hn,Iu as Ht,Af as I,Qa as In,qu as It,Xd as J,ln as Jn,Su as Jt,Qd as K,Ke as Kn,Au as Kt,Rf as L,$a as Ln,Wu as Lt,kf as M,Sa as Mn,ad as Mt,Nf as N,ni as Nn,ed as Nt,Zf as O,ia as On,od as Ot,Lf as P,xa as Pn,Yu as Pt,qd as Q,yn as Qn,Hl as Qt,If as R,wr as Rn,Ju as Rt,pp as S,sr as Sn,Ed as St,Gf as T,Gi as Tn,hd as Tt,_f as U,fn as Un,ku as Ut,Cf as V,We as Vn,Vu as Vt,wf as W,H as Wn,Mu as Wt,Yd as X,cn as Xn,Tc as Xt,Kd as Y,vn as Yn,vu as Yt,Gd as Z,un as Zn,fu as Zt,Dp as _,Ya as _n,xd as _t,Rp as a,ws as an,Ae as ar,Hd as at,mp as b,Ta as bn,Sd as bt,Mp as c,hs as cn,ze as cr,Id as ct,kp as d,Ts as dn,Md as dt,iu as en,Mn as er,Wd as et,Sp as f,X as fn,Ad as ft,wp as g,nc as gn,kd as gt,Op as h,Cs as hn,Dd as ht,Ip as i,Lr as in,P as ir,Ud as it,Df as j,ca as jn,fd as jt,Tf as k,oa as kn,td as kt,Ap as l,Ds as ln,_e as lr,Pd as lt,Ep as m,Q as mn,jd as mt,zp as n,J as nn,wn as nr,Ld as nt,Pp as o,tc as on,je as or,Bd as ot,Cp as p,ti as pn,Fd as pt,Zd as q,sn as qn,xu as qt,Fp as r,q as rn,Cn as rr,Vd as rt,jp as s,xs as sn,Te as sr,zd as st,Lp as t,nu as tn,kn as tr,Rd as tt,Tp as u,ms as un,Nd as ut,_p as v,Ja as vn,Od as vt,fp as w,Vi as wn,_d as wt,hp as x,js as xn,Td as xt,gp as y,gs as yn,Cd as yt,Of as z,Tr as zn,Pu as zt}; \ No newline at end of file diff --git a/docs/assets/index-B4KMqZ_y.js b/docs/assets/index-B4KMqZ_y.js deleted file mode 100644 index fa6bd2e..0000000 --- a/docs/assets/index-B4KMqZ_y.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./missileLogic-_46Nr-Ju.js","./game-logic-BBFCPVtv.js","./game-config-DRP-gbpS.js","./game-i18n-BC9uiVvf.js","./rolldown-runtime-CIDIeb-o.js","./OverviewView-D7lWE9IR.js","./vendor-others-Bce0hM6h.js","./vendor-others-BMPyaZWq.css","./vendor-reka-ui-DR3m_AkV.js","./vendor-vueuse-Djj-oRw9.js","./vendor-crypto-CQM8pryk.js","./vendor-utils-BlvnUqQX.js","./vendor-pinia-L_8CmDWM.js","./CardDescription-DduF5EVY.js","./TabsTrigger-BnZOhHbD.js","./useGameConfig-DLqfPHtW.js","./BuildingsView-BwpaZTPf.js","./vendor-icons-Ccm2_GPI.js","./CardUnlockOverlay-CspXlcWR.js","./ResearchView-BoGXU7Gy.js","./vendor-vue-router-0mfLVB6Y.js","./UnlockRequirement-DJ9dN5JL.js","./ShipyardView-DRH89hEQ.js","./DefenseView-aCDrCjw8.js","./FleetView-BzElc0kX.js","./OfficersView-CXh701uW.js","./BattleSimulatorView-BMgbGRUI.js","./BattleReportDialog-BNULWr3T.js","./TooltipProvider-Cspoy8HK.js","./MessagesView-w53RKU-r.js","./GalaxyView-LGfalWWd.js","./SelectValue-8cT4Hu-1.js","./DiplomacyView-BZEvKDfM.js","./SettingsView-CqA4xeYn.js","./GMView-BMhV90vD.js","./empty-Ds0PR_Pd.js","./NotFoundView-BqreQe6E.js"])))=>i.map(i=>d[i]); -import{i as e}from"./rolldown-runtime-CIDIeb-o.js";import{$t as t,An as n,Bt as r,C as i,Ct as a,D as o,Dt as s,E as c,En as l,Et as u,F as ee,Fn as te,Gt as d,I as ne,Jt as re,K as f,Kt as p,L as ie,M as ae,N as oe,Nt as se,O as ce,On as m,P as le,Pt as ue,Q as de,Qt as h,R as fe,Rn as g,T as pe,Tn as me,Tt as he,U as ge,Ut as _e,Wn as ve,Wt as ye,Xt as be,Y as xe,Yn as _,Zt as Se,_t as Ce,ar as v,bt as we,cn as y,cr as b,ct as Te,dn as x,fn as S,ft as Ee,hn as C,ht as De,kn as w,kt as Oe,ln as T,lt as E,mt as ke,on as D,or as O,pn as k,pt as Ae,qt as je,rn as A,rr as j,sn as M,sr as Me,un as N,ut as Ne,w as Pe,wn as Fe,xn as P,yt as Ie,z as Le,zn as Re,zt as ze}from"./game-logic-BBFCPVtv.js";import{n as Be,r as Ve,t as He}from"./vendor-pinia-L_8CmDWM.js";import{i as Ue,n as We,r as Ge,t as Ke}from"./vendor-vue-router-0mfLVB6Y.js";import{t as qe}from"./vendor-crypto-CQM8pryk.js";import{n as Je,r as Ye,t as Xe}from"./game-i18n-BC9uiVvf.js";import{B as Ze,l as F,n as Qe,r as $e,t as et,z as tt}from"./vendor-others-Bce0hM6h.js";import{$ as I,A as nt,B as L,C as rt,G as R,H as it,J as at,K as z,L as ot,M as st,N as ct,P as lt,Q as ut,R as dt,U as ft,V as pt,W as mt,X as ht,Y as gt,Z as _t,a as vt,et as yt,i as bt,j as xt,n as St,o as Ct,q as wt,r as Tt,t as Et,tt as Dt,w as Ot,z as kt}from"./vendor-reka-ui-DR3m_AkV.js";import{n as At}from"./vendor-utils-BlvnUqQX.js";import{i as jt,n as Mt,r as Nt,t as Pt}from"./vendor-vueuse-Djj-oRw9.js";import{A as Ft,C as It,E as Lt,G as Rt,H as zt,I as Bt,K as Vt,M as Ht,N as Ut,O as Wt,P as Gt,Q as Kt,R as qt,T as Jt,W as Yt,X as Xt,d as Zt,g as Qt,h as $t,i as en,j as tn,l as nn,m as rn,n as an,p as on,q as sn,r as cn,s as ln,t as un,u as dn,v as fn,w as pn,z as mn}from"./vendor-icons-Ccm2_GPI.js";import{l as hn,m as B,r as gn}from"./game-config-DRP-gbpS.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 V={name:`ogame-vue-ts`,title:`OGame-Vue-Ts`,qq:`920930589`,id:`2zBlHPUA6E`,author:{name:`setube`,email:`1962257451@qq.com`},private:!0,version:`1.2.5`,buildDate:`2025/12/15 19:58:04`,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":`cross-env ELECTRON_BUILD=1 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`,marked:`^17.0.1`,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`,"cross-env":`^7.0.3`,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`],ignoredBuiltDependencies:[`electron`]},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}"}}},_n=e(qe(),1);const vn=e=>{try{let t=JSON.stringify(e);return _n.default.AES.encrypt(t,V.name).toString()}catch(e){console.error(e)}return``},yn=e=>{try{let t=_n.default.AES.decrypt(e,V.name).toString(_n.default.enc.Utf8);return JSON.parse(t)}catch(e){return console.error(e),{}}},bn=Ve(`game`,{state:()=>({gameTime:Date.now(),isPaused:!1,gameSpeed:1,player:{id:`player1`,name:``,planets:[],technologies:{},officers:{},researchQueue:[],fleetMissions:[],missileAttacks:[],battleReports:[],spyReports:[],spiedNotifications:[],npcActivityNotifications:[],missionReports:[],incomingFleetAlerts:[],giftNotifications:[],giftRejectedNotifications:[],points:0,isGMEnabled:!1,lastVersionCheckTime:0},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:V.name,storage:localStorage,serializer:{serialize:e=>vn(e),deserialize:e=>yn(e)}}}),xn=Ve(`universe`,{state:()=>({planets:{},debrisFields:{}}),persist:{key:`${V.name}-universe`,storage:localStorage,serializer:{serialize:e=>vn(e),deserialize:e=>yn(e)}}}),Sn=Ve(`npc`,{state:()=>({npcs:[],lastGrowthCheck:{}}),persist:{key:`${V.name}-npcs`,storage:localStorage,serializer:{serialize:e=>vn(e),deserialize:e=>yn(e)}}});var H=_(!1);const Cn=()=>{let e=bn();Fe(()=>{e.isDark?H.value=e.isDark===`dark`:(H.value=window.matchMedia(`(prefers-color-scheme: dark)`).matches,e.isDark=H.value?`dark`:`light`),t()}),te(H,()=>{t(),e.isDark=H.value?`dark`:`light`});let t=()=>{H.value?document.documentElement.classList.add(`dark`):document.documentElement.classList.remove(`dark`)};return{isDark:H,toggleTheme:()=>{H.value=!H.value}}},wn=()=>{let e=bn(),t=D(()=>e.locale),n=D(()=>Ye[t.value]);return{t:(e,t)=>{let r=e.split(`.`),i=n.value;for(let t of r)if(i&&typeof i==`object`&&t in i)i=i[t];else return e;let a=typeof i==`string`?i:e;return t&&Object.entries(t).forEach(([e,t])=>{a=a.replace(RegExp(`\\{${e}\\}`,`g`),String(t))}),a},locale:t,setLocale:t=>{e.locale=t},messages:n}},U=(...e)=>At(Ze(e));var W=k({__name:`Button`,props:{variant:{},size:{},class:{},asChild:{type:Boolean},as:{default:`button`}},setup(e){let t=e;return(n,r)=>(l(),y(j(ut),{"data-slot":`button`,as:e.as,"as-child":e.asChild,class:v(j(U)(j(Tn)({variant:e.variant,size:e.size}),t.class))},{default:g(()=>[w(n.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`]))}});const Tn=tt(`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 En=k({__name:`Badge`,props:{asChild:{type:Boolean},as:{},variant:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(r,i)=>(l(),y(j(ut),P({"data-slot":`badge`,class:j(U)(j(Dn)({variant:e.variant}),t.class)},j(n)),{default:g(()=>[w(r.$slots,`default`)]),_:3},16,[`class`]))}});const Dn=tt(`inline-flex items-center justify-center rounded-sm border h-5 min-w-5 px-1 text-xs font-medium tabular-nums select-none 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 On=k({__name:`Progress`,props:{modelValue:{default:0},max:{},getValueLabel:{},getValueText:{},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(Ot),P({"data-slot":`progress`},j(n),{class:j(U)(`bg-primary/20 relative h-2 w-full overflow-hidden rounded-full`,t.class)}),{default:g(()=>[S(j(rt),{"data-slot":`progress-indicator`,class:`bg-primary h-full w-full flex-1 transition-all`,style:Me(`transform: translateX(-${100-(t.modelValue??0)}%);`)},null,8,[`style`])]),_:1},16,[`class`]))}}),kn=k({__name:`Popover`,props:{defaultOpen:{type:Boolean},open:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=I(e,t);return(e,t)=>(l(),y(j(lt),P({"data-slot":`popover`},j(n)),{default:g(t=>[w(e.$slots,`default`,O(C(t)))]),_:3},16))}}),An=k({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=I(F(n,`class`),r);return(e,t)=>(l(),y(j(st),null,{default:g(()=>[S(j(ct),P({"data-slot":`popover-content`},{...e.$attrs,...j(i)},{class:j(U)(`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:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),jn=k({__name:`PopoverTrigger`,props:{asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(l(),y(j(xt),P({"data-slot":`popover-trigger`},t),{default:g(()=>[w(e.$slots,`default`)]),_:3},16))}}),Mn={key:0,class:`bg-destructive/10 border-b border-destructive/20`},Nn={class:`px-4 sm:px-6 py-2 space-y-2`},Pn={class:`flex items-center gap-2 flex-1 min-w-0`},Fn={class:`flex-1 min-w-0`},In={class:`text-sm font-semibold text-destructive truncate`},Ln={class:`text-xs text-muted-foreground truncate`},Rn={class:`flex items-center gap-2 flex-shrink-0`},zn={class:`text-right`},Bn={class:`text-xs font-mono text-destructive`},Vn={class:`text-[10px] text-muted-foreground`},Hn=k({__name:`IncomingFleetAlerts`,props:{alerts:{}},emits:[`markAsRead`],setup(e,{emit:t}){let n=t,{t:r}=wn(),i=_(Date.now()),a=null;Fe(()=>{a=setInterval(()=>{i.value=Date.now()},1e3)}),me(()=>{a&&clearInterval(a)});let o=e=>{let t=Math.max(0,e-i.value),n=Math.floor(t/1e3%60),r=Math.floor(t/(1e3*60)%60),a=Math.floor(t/(1e3*60*60));return a>0?`${a}:${String(r).padStart(2,`0`)}:${String(n).padStart(2,`0`)}`:`${r}:${String(n).padStart(2,`0`)}`},s=e=>new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}),c=e=>{n(`markAsRead`,e)};return(t,n)=>e.alerts.length>0?(l(),N(`div`,Mn,[M(`div`,Nn,[(l(!0),N(A,null,m(e.alerts,e=>(l(),N(`div`,{key:e.id,class:`flex items-center justify-between gap-3 bg-destructive/5 rounded-lg px-3 py-2 border border-destructive/20`},[M(`div`,Pn,[S(j(ln),{class:`h-5 w-5 text-destructive flex-shrink-0 animate-pulse`}),M(`div`,Fn,[M(`p`,In,[e.missionType===`spy`?(l(),N(A,{key:0},[x(b(j(r)(`alerts.npcSpyIncoming`)),1)],64)):e.missionType===`attack`?(l(),N(A,{key:1},[x(b(j(r)(`alerts.npcAttackIncoming`)),1)],64)):(l(),N(A,{key:2},[x(b(j(r)(`alerts.npcFleetIncoming`)),1)],64))]),M(`p`,Ln,[x(b(e.npcName)+` → `+b(e.targetPlanetName)+` `,1),e.missionType===`attack`?(l(),N(A,{key:0},[x(`(`+b(e.fleetSize)+` `+b(j(r)(`alerts.ships`))+`)`,1)],64)):T(``,!0)])])]),M(`div`,Rn,[M(`div`,zn,[M(`p`,Bn,b(o(e.arrivalTime)),1),M(`p`,Vn,b(s(e.arrivalTime)),1)]),S(j(W),{onClick:t=>c(e),variant:`ghost`,size:`sm`,class:`h-6 w-6 p-0`},{default:g(()=>[S(j(an),{class:`h-3 w-3`})]),_:1},8,[`onClick`])])]))),128))])])):T(``,!0)}}),Un=k({__name:`Sheet`,props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=I(e,t);return(e,t)=>(l(),y(j(_t),P({"data-slot":`sheet`},j(n)),{default:g(t=>[w(e.$slots,`default`,O(C(t)))]),_:3},16))}}),Wn=k({__name:`SheetOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(wt),P({"data-slot":`sheet-overlay`,class:j(U)(`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)},j(n)),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Gn=k({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=I(F(n,`class`,`side`),r);return(t,r)=>(l(),y(j(z),null,{default:g(()=>[S(Wn),S(j(gt),P({"data-slot":`sheet-content`,class:j(U)(`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,...j(i)}),{default:g(()=>[w(t.$slots,`default`),S(j(ht),{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:g(()=>[S(j(an),{class:`size-4`}),r[0]||=M(`span`,{class:`sr-only`},`Close`,-1)]),_:1})]),_:3},16,[`class`])]),_:3}))}}),Kn=k({__name:`SheetDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(at),P({"data-slot":`sheet-description`,class:j(U)(`text-muted-foreground text-sm`,t.class)},j(n)),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),qn=k({__name:`SheetHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sheet-header`,class:v(j(U)(`flex flex-col gap-1.5 p-4`,t.class))},[w(e.$slots,`default`)],2))}}),Jn=k({__name:`SheetTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(R),P({"data-slot":`sheet-title`,class:j(U)(`text-foreground font-semibold`,t.class)},j(n)),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}});const Yn=`sidebar_state`,[Xn,Zn]=Dt(`Sidebar`);var Qn={class:`flex h-full w-full flex-col`},$n=[`data-state`,`data-collapsible`,`data-variant`,`data-side`],er={"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`},tr=k({inheritAttrs:!1,__name:`Sidebar`,props:{side:{default:`left`},variant:{default:`sidebar`},collapsible:{default:`offcanvas`},class:{}},setup(e){let t=e,{isMobile:n,state:r,openMobile:i,setOpenMobile:a}=Xn();return(o,s)=>e.collapsible===`none`?(l(),N(`div`,P({key:0,"data-slot":`sidebar`,class:j(U)(`bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col`,t.class)},o.$attrs),[w(o.$slots,`default`)],16)):j(n)?(l(),y(j(Un),P({key:1,open:j(i)},o.$attrs,{"onUpdate:open":j(a)}),{default:g(()=>[S(j(Gn),{"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:Me({"--sidebar-width":j(`18rem`)})},{default:g(()=>[S(qn,{class:`sr-only`},{default:g(()=>[S(Jn,null,{default:g(()=>[...s[0]||=[x(`Sidebar`,-1)]]),_:1}),S(Kn,null,{default:g(()=>[...s[1]||=[x(`Displays the mobile sidebar.`,-1)]]),_:1})]),_:1}),M(`div`,Qn,[w(o.$slots,`default`)])]),_:3},8,[`side`,`style`])]),_:3},16,[`open`,`onUpdate:open`])):(l(),N(`div`,{key:2,class:`group peer text-sidebar-foreground hidden md:block`,"data-slot":`sidebar`,"data-state":j(r),"data-collapsible":j(r)===`collapsed`?e.collapsible:``,"data-variant":e.variant,"data-side":e.side},[M(`div`,{class:v(j(U)(`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),M(`div`,P({class:j(U)(`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)},o.$attrs),[M(`div`,er,[w(o.$slots,`default`)])],16)],8,$n))}}),nr=k({__name:`SidebarContent`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,class:v(j(U)(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,t.class))},[w(e.$slots,`default`)],2))}}),rr=k({__name:`SidebarFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,class:v(j(U)(`flex flex-col gap-2 p-2`,t.class))},[w(e.$slots,`default`)],2))}}),ir=k({__name:`SidebarGroup`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,class:v(j(U)(`relative flex w-full min-w-0 flex-col p-2`,t.class))},[w(e.$slots,`default`)],2))}}),ar=k({__name:`SidebarHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,class:v(j(U)(`flex flex-col gap-2 p-2`,t.class))},[w(e.$slots,`default`)],2))}}),or=k({__name:`Input`,props:{defaultValue:{},modelValue:{},class:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=jt(n,`modelValue`,t,{passive:!0,defaultValue:n.defaultValue});return(e,t)=>Re((l(),N(`input`,{"onUpdate:modelValue":t[0]||=e=>ve(r)?r.value=e:null,"data-slot":`input`,class:v(j(U)(`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)),[[h,j(r)]])}}),sr=k({__name:`SidebarInset`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`main`,{"data-slot":`sidebar-inset`,class:v(j(U)(`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))},[w(e.$slots,`default`)],2))}}),cr=k({__name:`SidebarMenu`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,class:v(j(U)(`flex w-full min-w-0 flex-col gap-1`,t.class))},[w(e.$slots,`default`)],2))}}),lr=k({__name:`SidebarMenuBadge`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`sidebar-menu-badge`,"data-sidebar":`menu-badge`,class:v(j(U)(`text-sidebar-foreground pointer-events-none flex h-5 min-w-5 items-center justify-center rounded-sm 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`,`absolute right-1`,`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]:absolute group-data-[collapsible=icon]:right-0 group-data-[collapsible=icon]:-top-1 group-data-[collapsible=icon]:h-4 group-data-[collapsible=icon]:min-w-4`,t.class))},[w(e.$slots,`default`)],2))}}),ur=k({__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=I(e,t);return(e,t)=>(l(),y(j(bt),P({"data-slot":`tooltip`},j(n)),{default:g(t=>[w(e.$slots,`default`,O(C(t)))]),_:3},16))}}),dr=k({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=I(F(n,`class`),r);return(e,t)=>(l(),y(j(St),null,{default:g(()=>[S(j(Tt),P({"data-slot":`tooltip-content`},{...j(i),...e.$attrs},{class:j(U)(`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:g(()=>[w(e.$slots,`default`),S(j(Ct),{class:`bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]),_:3},16,[`class`])]),_:3}))}}),fr=k({__name:`TooltipTrigger`,props:{reference:{},asChild:{type:Boolean},as:{}},setup(e){let t=e;return(e,n)=>(l(),y(j(Et),P({"data-slot":`tooltip-trigger`},t),{default:g(()=>[w(e.$slots,`default`)]),_:3},16))}}),pr=k({__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)=>(l(),y(j(ut),P({"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":e.size,"data-active":e.isActive,class:j(U)(j(vr)({variant:e.variant,size:e.size}),t.class),as:e.as,"as-child":e.asChild},n.$attrs),{default:g(()=>[w(n.$slots,`default`)]),_:3},16,[`data-size`,`data-active`,`class`,`as`,`as-child`]))}}),mr=k({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:r,state:i}=Xn(),a=F(t,`tooltip`);return(t,o)=>e.tooltip?(l(),y(j(ur),{key:1},{default:g(()=>[S(j(fr),{"as-child":``},{default:g(()=>[S(pr,O(C({...j(a),...t.$attrs})),{default:g(()=>[w(t.$slots,`default`)]),_:3},16)]),_:3}),S(j(dr),{side:`right`,align:`center`,hidden:j(i)!==`collapsed`||j(r)},{default:g(()=>[typeof e.tooltip==`string`?(l(),N(A,{key:0},[x(b(e.tooltip),1)],64)):(l(),y(n(e.tooltip),{key:1}))]),_:1},8,[`hidden`])]),_:3})):(l(),y(pr,O(P({key:0},{...j(a),...t.$attrs})),{default:g(()=>[w(t.$slots,`default`)]),_:3},16))}}),hr=k({__name:`SidebarMenuItem`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,class:v(j(U)(`group/menu-item relative`,t.class))},[w(e.$slots,`default`)],2))}}),gr=k({__name:`SidebarProvider`,props:{defaultOpen:{type:Boolean,default:!Pt?.cookie.includes(`${Yn}=false`)},open:{type:Boolean,default:void 0},class:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,i=Nt(`(max-width: 768px)`),a=_(!1),o=jt(n,`open`,r,{defaultValue:n.defaultOpen??!1,passive:n.open===void 0}),s=e=>{o.value=e,document.cookie=`${Yn}=${o.value}; path=/; max-age=604800`},c=e=>{a.value=e},u=()=>i.value?c(!a.value):s(!o.value);return Mt(`keydown`,e=>{e.key===`b`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),u())}),Zn({state:D(()=>o.value?`expanded`:`collapsed`),open:o,setOpen:s,isMobile:i,openMobile:a,setOpenMobile:c,toggleSidebar:u}),(e,t)=>(l(),y(j(vt),{"delay-duration":0},{default:g(()=>[M(`div`,P({"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":j(`16rem`),"--sidebar-width-icon":j(`3rem`)},class:j(U)(`group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full`,n.class)},e.$attrs),[w(e.$slots,`default`)],16)]),_:3}))}}),_r=k({__name:`SidebarTrigger`,props:{class:{}},setup(e){let t=e,{toggleSidebar:n}=Xn();return(e,r)=>(l(),y(j(W),{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon`,class:v(j(U)(`h-7 w-7`,t.class)),onClick:j(n)},{default:g(()=>[S(j(It)),r[0]||=M(`span`,{class:`sr-only`},`Toggle Sidebar`,-1)]),_:1},8,[`class`,`onClick`]))}});const vr=tt(`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 yr=k({__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(r,i)=>(l(),N(`div`,{class:v([t[e.type],n[e.size],`rounded shadow-sm`])},null,2))}}),br=k({__name:`AlertDialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=I(e,t);return(e,t)=>(l(),y(j(dt),P({"data-slot":`alert-dialog`},j(n)),{default:g(t=>[w(e.$slots,`default`,O(C(t)))]),_:3},16))}}),xr=k({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(mt),P(j(n),{class:j(U)(j(Tn)(),t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Sr=k({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(it),P(j(n),{class:j(U)(j(Tn)({variant:`outline`}),`mt-2 sm:mt-0`,t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Cr=k({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:t}){let n=e,r=t,i=I(F(n,`class`),r);return(e,t)=>(l(),y(j(kt),null,{default:g(()=>[S(j(L),{"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`}),S(j(ft),P({"data-slot":`alert-dialog-content`},{...e.$attrs,...j(i)},{class:j(U)(`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:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),wr=k({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(pt),P({"data-slot":`alert-dialog-description`},j(n),{class:j(U)(`text-muted-foreground text-sm`,t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Tr=k({__name:`AlertDialogFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`alert-dialog-footer`,class:v(j(U)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,t.class))},[w(e.$slots,`default`)],2))}}),Er=k({__name:`AlertDialogHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`alert-dialog-header`,class:v(j(U)(`flex flex-col gap-2 text-center sm:text-left`,t.class))},[w(e.$slots,`default`)],2))}}),Dr=k({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(ot),P({"data-slot":`alert-dialog-title`},j(n),{class:j(U)(`text-lg font-semibold`,t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Or=k({__name:`Dialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean},modal:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=I(e,t);return(e,t)=>(l(),y(j(_t),P({"data-slot":`dialog`},j(n)),{default:g(t=>[w(e.$slots,`default`,O(C(t)))]),_:3},16))}}),kr=k({__name:`DialogOverlay`,props:{forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(wt),P({"data-slot":`dialog-overlay`},j(n),{class:j(U)(`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:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),Ar=k({__name:`DialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=yt(F(t,`class`));return(e,r)=>(l(),y(j(at),P({"data-slot":`dialog-description`},j(n),{class:j(U)(`text-muted-foreground text-sm`,t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}}),jr=k({__name:`DialogFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`dialog-footer`,class:v(j(U)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,t.class))},[w(e.$slots,`default`)],2))}}),Mr=k({__name:`DialogHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`dialog-header`,class:v(j(U)(`flex flex-col gap-2 text-center sm:text-left`,t.class))},[w(e.$slots,`default`)],2))}}),Nr=k({inheritAttrs:!1,__name:`DialogScrollContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=I(F(n,`class`),r);return(e,t)=>(l(),y(j(z),null,{default:g(()=>[S(j(wt),{class:`fixed inset-0 z-50 grid place-items-center overflow-y-auto bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`},{default:g(()=>[S(j(gt),P({class:j(U)(`relative z-50 grid w-full max-w-lg my-8 gap-4 border border-border bg-background p-6 shadow-lg duration-200 sm:rounded-lg md:w-full`,n.class)},{...e.$attrs,...j(i)},{onPointerDownOutside:t[0]||=e=>{let t=e.detail.originalEvent,n=t.target;(t.offsetX>n.clientWidth||t.offsetY>n.clientHeight)&&e.preventDefault()}}),{default:g(()=>[w(e.$slots,`default`),S(j(ht),{class:`absolute top-4 right-4 p-0.5 transition-colors rounded-md hover:bg-secondary`},{default:g(()=>[S(j(an),{class:`w-4 h-4`}),t[1]||=M(`span`,{class:`sr-only`},`Close`,-1)]),_:1})]),_:3},16,[`class`])]),_:3})]),_:3}))}}),Pr={class:`shrink-0 px-4 pt-4 pb-3 sm:px-6 sm:pt-6 sm:pb-4 border-b`},Fr={class:`overflow-y-auto px-4 py-3 sm:px-6 sm:py-4`},Ir={key:0,class:`shrink-0 px-4 pb-4 pt-3 sm:px-6 sm:pb-6 sm:pt-4 border-t`},Lr=k({inheritAttrs:!1,__name:`ScrollableDialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},containerClass:{},showCloseButton:{type:Boolean,default:!0}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,r=t,i=I(F(n,`containerClass`),r);return(t,n)=>(l(),y(j(z),null,{default:g(()=>[S(kr),S(j(gt),P({"data-slot":`scrollable-dialog-content`},{...t.$attrs,...j(i)},{class:j(U)(`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 w-[calc(100vw-3rem)] translate-x-[-50%] translate-y-[-50%] rounded-lg border shadow-lg duration-200 sm:w-auto sm:min-w-[764px] flex flex-col p-0`,e.containerClass)}),{default:g(()=>[M(`div`,Pr,[w(t.$slots,`header`)]),M(`div`,Fr,[w(t.$slots,`default`)]),t.$slots.footer?(l(),N(`div`,Ir,[w(t.$slots,`footer`)])):T(``,!0),e.showCloseButton?(l(),y(j(ht),{key:1,"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 z-10`},{default:g(()=>[S(j(an)),n[0]||=M(`span`,{class:`sr-only`},`Close`,-1)]),_:1})):T(``,!0)]),_:3},16,[`class`])]),_:3}))}}),Rr=k({__name:`DialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=yt(F(t,`class`));return(e,r)=>(l(),y(j(R),P({"data-slot":`dialog-title`},j(n),{class:j(U)(`text-lg leading-none font-semibold`,t.class)}),{default:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}});const zr=Ve(`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 Br={"data-slot":`table-container`,class:`relative w-full overflow-auto`},Vr=k({__name:`Table`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,Br,[M(`table`,{"data-slot":`table`,class:v(j(U)(`w-full caption-bottom text-sm`,t.class))},[w(e.$slots,`default`)],2)]))}}),Hr=k({__name:`TableBody`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`tbody`,{"data-slot":`table-body`,class:v(j(U)(`[&_tr:last-child]:border-0`,t.class))},[w(e.$slots,`default`)],2))}}),G=k({__name:`TableCell`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`td`,{"data-slot":`table-cell`,class:v(j(U)(`p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]`,t.class))},[w(e.$slots,`default`)],2))}}),Ur=k({__name:`TableRow`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`tr`,{"data-slot":`table-row`,class:v(j(U)(`hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors`,t.class))},[w(e.$slots,`default`)],2))}}),K=k({__name:`TableHead`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`th`,{"data-slot":`table-head`,class:v(j(U)(`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))},[w(e.$slots,`default`)],2))}}),Wr=k({__name:`TableHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`thead`,{"data-slot":`table-header`,class:v(j(U)(`[&_tr]:border-b`,t.class))},[w(e.$slots,`default`)],2))}}),q=k({__name:`Card`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`card`,class:v(j(U)(`bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm`,t.class))},[w(e.$slots,`default`)],2))}}),J=k({__name:`CardContent`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`card-content`,class:v(j(U)(`px-6`,t.class))},[w(e.$slots,`default`)],2))}}),Y=k({__name:`CardHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`div`,{"data-slot":`card-header`,class:v(j(U)(`@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))},[w(e.$slots,`default`)],2))}}),X=k({__name:`CardTitle`,props:{class:{}},setup(e){let t=e;return(e,n)=>(l(),N(`h3`,{"data-slot":`card-title`,class:v(j(U)(`leading-none font-semibold`,t.class))},[w(e.$slots,`default`)],2))}}),Gr=k({__name:`Label`,props:{for:{},asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=F(t,`class`);return(e,r)=>(l(),y(j(nt),P({"data-slot":`label`},j(n),{class:j(U)(`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:g(()=>[w(e.$slots,`default`)]),_:3},16,[`class`]))}});const Z=(e,t=2)=>e>=0x38d7ea4c68000?(e/0x38d7ea4c68000).toFixed(t)+`Q`:e>=0xe8d4a51000?(e/0xe8d4a51000).toFixed(t)+`T`: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(),Kr=(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`:``},qr=e=>{let t=365*86400,n=Math.floor(e/t);e%=t;let r=Math.floor(e/86400);e%=86400;let i=Math.floor(e/3600);e%=3600;let a=Math.floor(e/60),o=Math.floor(e%60),s=i.toString().padStart(2,`0`),c=a.toString().padStart(2,`0`),l=o.toString().padStart(2,`0`);return n>0?`${n}:${r}:${s}:${c}:${l}`:r>0?`${r}:${s}:${c}:${l}`:`${s}:${c}:${l}`},Jr=e=>new Date(e).toLocaleString(`zh-CN`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`}),Yr=(e,t)=>et.value.toLocaleString());return(t,r)=>(l(),y(j(kn),null,{default:g(()=>[S(j(jn),{"as-child":``},{default:g(()=>[M(`span`,Xr,b(j(Z)(e.value,1)),1)]),_:1}),S(j(An),{class:`w-auto p-2`,side:`top`,align:`center`},{default:g(()=>[M(`p`,Zr,b(n.value),1)]),_:1})]),_:1}))}}),Qr={class:`space-y-4`},$r={key:0,class:`border rounded-lg overflow-hidden`},ei={key:1},ti={key:0,class:`text-green-600 dark:text-green-400`},ni={key:1},ri={key:0,class:`text-red-600 dark:text-red-400`},ii={key:1},ai={key:0,class:`text-blue-600 dark:text-blue-400`},oi={key:1},si={key:0,class:`text-blue-600 dark:text-blue-400`},ci={key:1},li={key:0,class:`text-green-600 dark:text-green-400`},ui={key:1},di={key:0,class:`text-cyan-600 dark:text-cyan-400`},fi={key:1,class:`text-cyan-600 dark:text-cyan-400`},pi={class:`text-indigo-600 dark:text-indigo-400`},mi={class:`text-red-600 dark:text-red-400`},hi={class:`text-blue-600 dark:text-blue-400`},gi={class:`text-gray-600 dark:text-gray-400`},_i={class:`text-purple-600 dark:text-purple-400`},vi={class:`text-blue-600 dark:text-blue-400`},yi={class:`text-green-600 dark:text-green-400`},bi={class:`text-yellow-600 dark:text-yellow-400`},xi={class:`text-indigo-600 dark:text-indigo-400`},Si={class:`text-primary font-medium`},Ci={key:1,class:`grid grid-cols-2 gap-4`},wi={class:`flex items-center justify-between text-sm`},Ti={class:`text-muted-foreground`},Ei={class:`font-medium`},Di={class:`flex items-center justify-between text-sm`},Oi={class:`text-muted-foreground`},ki={class:`font-medium`},Ai={class:`flex items-center justify-between text-sm`},ji={class:`text-muted-foreground`},Mi={class:`font-medium`},Ni={class:`text-3xl font-bold text-primary`},Pi={class:`text-xs text-muted-foreground mt-1`},Fi={key:2,class:`grid grid-cols-2 md:grid-cols-3 gap-4`},Ii={class:`text-2xl font-bold`},Li={class:`text-2xl font-bold`},Ri={class:`text-2xl font-bold`},zi={class:`text-2xl font-bold`},Bi={class:`text-2xl font-bold`},Vi={class:`text-2xl font-bold`},Hi={key:3,class:`grid grid-cols-1 md:grid-cols-2 gap-4`},Ui={class:`text-muted-foreground`},Wi={class:`font-medium`},Gi={class:`flex items-center justify-between text-sm pt-2 border-t`},Ki={class:`text-muted-foreground`},qi={class:`font-bold text-primary`},Ji={class:`text-3xl font-bold`},Yi={class:`text-xs text-muted-foreground mt-2`},Xi={class:`flex items-center gap-4`},Zi={class:`grid grid-cols-2 gap-4 pt-4 border-t`},Qi={class:`space-y-2`},$i={class:`text-sm text-muted-foreground`},ea={class:`space-y-1 text-sm`},ta={class:`flex justify-between`},na={class:`font-medium`},ra={class:`flex justify-between`},ia={class:`font-medium`},aa={class:`flex justify-between`},oa={class:`font-medium`},sa={class:`space-y-2`},ca={class:`text-sm text-muted-foreground`},la={class:`text-xl font-bold`},ua={class:`text-xs text-muted-foreground`},da=k({__name:`ItemDetailView`,props:{type:{},itemType:{},currentLevel:{}},setup(e){let{t:n}=wn(),i=bn(),a=e,o=_(1),s=[{key:`metal`},{key:`crystal`},{key:`deuterium`}],c=D(()=>i.currentPlanet),u=D(()=>ue(i.player.officers,i.gameTime)),ee=D(()=>c.value&&c.value.buildings.roboticsFactory||0),te=D(()=>c.value&&c.value.buildings.naniteFactory||0),ne=D(()=>c.value&&c.value.buildings.researchLab||0),f=D(()=>({building:`buildings`,technology:`research`,ship:`shipyard`,defense:`defense`})[a.type]),ie=D(()=>a.type===`building`?a.itemType===`darkMatterCollector`:a.type===`technology`?a.itemType===`gravitonTechnology`:!1),ae=D(()=>{if(a.type!==`building`)return!1;let e=a.itemType;return[`metalMine`,`crystalMine`,`deuteriumSynthesizer`,`solarPlant`,`fusionReactor`,`darkMatterCollector`].includes(e)}),oe=D(()=>{if(a.type!==`building`)return!1;let e=a.itemType;return[`metalMine`,`crystalMine`,`deuteriumSynthesizer`].includes(e)}),ce=D(()=>{if(a.type!==`building`)return!1;let e=a.itemType;return[`metalStorage`,`crystalStorage`,`deuteriumTank`,`darkMatterCollector`,`darkMatterTank`].includes(e)}),le=D(()=>a.type===`building`?a.itemType===`shipyard`:a.type===`technology`?a.itemType===`computerTechnology`:!1),de=D(()=>a.type===`building`?a.itemType===`naniteFactory`:!1),h=D(()=>{if(a.type===`building`){let e=a.itemType;return[`terraformer`,`lunarBase`].includes(e)}else if(a.type===`technology`)return a.itemType===`terraformingTechnology`;return!1}),fe=D(()=>a.type===`building`?a.itemType===`missileSilo`:!1),pe=D(()=>{if(a.type!==`building`)return!1;let e=a.itemType;return[`roboticsFactory`,`naniteFactory`].includes(e)}),me=D(()=>a.type===`building`?a.itemType===`researchLab`:a.type===`technology`?a.itemType===`energyTechnology`:!1),he=D(()=>a.type===`technology`?a.itemType===`weaponsTechnology`:!1),ge=D(()=>a.type===`technology`?a.itemType===`shieldingTechnology`:!1),ve=D(()=>a.type===`technology`?a.itemType===`armourTechnology`:!1),be=D(()=>a.type===`technology`?a.itemType===`espionageTechnology`:!1),xe=D(()=>a.type===`technology`?a.itemType===`computerTechnology`:!1),Se=D(()=>a.type===`technology`?a.itemType===`astrophysics`:!1),Ce=D(()=>{if(a.type!==`technology`)return!1;let e=a.itemType;return[`combustionDrive`,`impulseDrive`,`hyperspaceDrive`].includes(e)}),we=D(()=>a.currentLevel??0),Te=D(()=>a.type===`ship`?hn[a.itemType]:a.type===`defense`?gn[a.itemType]:null),Ee=D(()=>a.type===`ship`?hn[a.itemType]:null),C=D(()=>a.type===`ship`?hn[a.itemType].cost:a.type===`defense`?gn[a.itemType].cost:{metal:0,crystal:0,deuterium:0}),De=D(()=>a.type===`ship`?se(a.itemType,1,u.value.buildingSpeedBonus,ee.value,te.value):a.type===`defense`?Oe(a.itemType,1,u.value.buildingSpeedBonus,ee.value,te.value):0),w=D(()=>{if(a.type!==`building`&&a.type!==`technology`)return[];let e=a.currentLevel||0,t=[];for(let n=e;n<=e+10;n++)t.push(n);return t}),E=e=>{if(e===0)return{cost:{metal:0,crystal:0,deuterium:0,darkMatter:0},time:0,production:0,consumption:0,points:0,capacity:0,fleetStorage:0,spaceBonus:0,buildSpeedBonus:0,researchSpeedBonus:0};if(a.type===`building`){let t=a.itemType,n=ze(t,e),i=r(t,e,u.value.buildingSpeedBonus,ee.value,te.value),o=0,s=0,c=0,l=0,d=0,ne=0,re=0,f=1+(u.value.resourceProductionBonus||0)/100,p=1+(u.value.energyProductionBonus||0)/100,ie=1+(u.value.storageCapacityBonus||0)/100;t===`metalMine`?(o=Math.floor(1500*e*1.5**e*f),s=Math.floor(10*e*1.1**e)):t===`crystalMine`?(o=Math.floor(1e3*e*1.5**e*f),s=Math.floor(10*e*1.1**e)):t===`deuteriumSynthesizer`?(o=Math.floor(500*e*1.5**e*f),s=Math.floor(10*e*1.1**e)):t===`solarPlant`?o=Math.floor(50*e*1.1**e*p):t===`metalStorage`||t===`crystalStorage`||t===`deuteriumTank`?c=Math.floor(1e4*2**e*ie):t===`darkMatterCollector`?(c=1e3+e*100,o=Math.floor(25*e*1.5**e)):t===`darkMatterTank`?c=Math.floor(1e3*2**e*ie):t===`fusionReactor`?o=Math.floor(150*e*1.15**e):t===`shipyard`?l=1e3*e:t===`terraformer`||t===`lunarBase`?d=30:t===`roboticsFactory`?ne=e:t===`naniteFactory`?ne=e*2:t===`researchLab`&&(re=e);let ae=_e(t,e-1,e);return{cost:n,time:i,production:o,consumption:s,points:ae,capacity:c,fleetStorage:l,spaceBonus:d,buildSpeedBonus:ne,researchSpeedBonus:re}}else{let t=a.itemType,n=je(t,e),r=re(t,e-1,u.value.researchSpeedBonus,ne.value),i=0;return t===`energyTechnology`&&(i=e),{cost:n,time:r,production:0,consumption:0,points:p(t,e-1,e),capacity:0,fleetStorage:0,spaceBonus:0,buildSpeedBonus:0,researchSpeedBonus:i}}},ke=D(()=>{if(a.type!==`building`&&a.type!==`technology`)return{metal:0,crystal:0,deuterium:0,points:0};let e=0,t=0,n=0,r=0;for(let i of w.value){if(i===0)continue;let a=E(i);e+=a.cost.metal,t+=a.cost.crystal,n+=a.cost.deuterium,r+=a.points}return{metal:e,crystal:t,deuterium:n,points:r}}),O=D(()=>a.type===`ship`?d(a.itemType,1):a.type===`defense`?ye(a.itemType,1):0),k=D(()=>({metal:C.value.metal*o.value,crystal:C.value.crystal*o.value,deuterium:C.value.deuterium*o.value})),Ae=D(()=>a.type===`ship`?d(a.itemType,o.value):a.type===`defense`?ye(a.itemType,o.value):0);return(r,i)=>(l(),N(`div`,Qr,[e.type===`building`||e.type===`technology`?(l(),N(`div`,$r,[S(j(Vr),null,{default:g(()=>[S(j(Wr),null,{default:g(()=>[S(j(Ur),null,{default:g(()=>[S(j(K),{class:`w-20 text-center`},{default:g(()=>[x(b(j(n)(`${f.value}.levelRange`)),1)]),_:1}),S(j(K),{class:`text-center`},{default:g(()=>[x(b(j(n)(`resources.metal`)),1)]),_:1}),S(j(K),{class:`text-center`},{default:g(()=>[x(b(j(n)(`resources.crystal`)),1)]),_:1}),S(j(K),{class:`text-center`},{default:g(()=>[x(b(j(n)(`resources.deuterium`)),1)]),_:1}),ie.value?(l(),y(j(K),{key:0,class:`text-center`},{default:g(()=>[x(b(j(n)(`resources.darkMatter`)),1)]),_:1})):T(``,!0),S(j(K),{class:`text-center`},{default:g(()=>[x(b(e.type===`building`?j(n)(`buildings.buildTime`):j(n)(`research.researchTime`)),1)]),_:1}),e.type===`building`&&ae.value?(l(),y(j(K),{key:1,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.production`)),1)]),_:1})):T(``,!0),e.type===`building`&&oe.value?(l(),y(j(K),{key:2,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.consumption`)),1)]),_:1})):T(``,!0),e.type===`building`&&ce.value?(l(),y(j(K),{key:3,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.storageCapacity`)),1)]),_:1})):T(``,!0),e.type===`building`&&le.value?(l(),y(j(K),{key:4,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.fleetStorage`)),1)]),_:1})):T(``,!0),e.type===`building`&&de.value?(l(),y(j(K),{key:5,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.buildQueueBonus`)),1)]),_:1})):T(``,!0),e.type===`building`&&h.value?(l(),y(j(K),{key:6,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.spaceBonus`)),1)]),_:1})):T(``,!0),e.type===`building`&&fe.value?(l(),y(j(K),{key:7,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.missileCapacity`)),1)]),_:1})):T(``,!0),e.type===`building`&&pe.value?(l(),y(j(K),{key:8,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.buildSpeedBonus`)),1)]),_:1})):T(``,!0),e.type===`building`&&me.value?(l(),y(j(K),{key:9,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.researchSpeedBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&he.value?(l(),y(j(K),{key:10,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.attackBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&ge.value?(l(),y(j(K),{key:11,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.shieldBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&ve.value?(l(),y(j(K),{key:12,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.armorBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&be.value?(l(),y(j(K),{key:13,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.spyLevel`)),1)]),_:1})):T(``,!0),e.type===`technology`&&le.value?(l(),y(j(K),{key:14,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.fleetStorage`)),1)]),_:1})):T(``,!0),e.type===`technology`&&xe.value?(l(),y(j(K),{key:15,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.researchQueueBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&Se.value?(l(),y(j(K),{key:16,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.colonySlots`)),1)]),_:1})):T(``,!0),e.type===`technology`&&h.value?(l(),y(j(K),{key:17,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.spaceBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&Ce.value?(l(),y(j(K),{key:18,class:`text-center`},{default:g(()=>[x(b(j(n)(`research.speedBonus`)),1)]),_:1})):T(``,!0),e.type===`technology`&&me.value?(l(),y(j(K),{key:19,class:`text-center`},{default:g(()=>[x(b(j(n)(`buildings.researchSpeedBonus`)),1)]),_:1})):T(``,!0),S(j(K),{class:`text-center`},{default:g(()=>[x(b(j(n)(`player.points`)),1)]),_:1})]),_:1})]),_:1}),S(j(Hr),null,{default:g(()=>[(l(!0),N(A,null,m(w.value,t=>(l(),y(j(Ur),{key:t,class:v({"bg-muted/50":t===we.value})},{default:g(()=>[S(j(G),{class:`text-center font-medium`},{default:g(()=>[t===we.value?(l(),y(j(En),{key:0,variant:`default`},{default:g(()=>[x(b(t),1)]),_:2},1024)):(l(),N(`span`,ei,b(t),1))]),_:2},1024),S(j(G),{class:`text-center text-sm`},{default:g(()=>[S(Q,{value:E(t).cost.metal},null,8,[`value`])]),_:2},1024),S(j(G),{class:`text-center text-sm`},{default:g(()=>[S(Q,{value:E(t).cost.crystal},null,8,[`value`])]),_:2},1024),S(j(G),{class:`text-center text-sm`},{default:g(()=>[S(Q,{value:E(t).cost.deuterium},null,8,[`value`])]),_:2},1024),ie.value?(l(),y(j(G),{key:0,class:`text-center text-sm`},{default:g(()=>[S(Q,{value:E(t).cost.darkMatter},null,8,[`value`])]),_:2},1024)):T(``,!0),S(j(G),{class:`text-center text-sm`},{default:g(()=>[x(b(j(qr)(E(t).time)),1)]),_:2},1024),e.type===`building`&&ae.value?(l(),y(j(G),{key:1,class:`text-center text-sm`},{default:g(()=>[E(t).production>0?(l(),N(`span`,ti,[i[1]||=x(` + `,-1),S(Q,{value:E(t).production},null,8,[`value`]),x(` /`+b(j(n)(`resources.perHour`)),1)])):(l(),N(`span`,ni,`-`))]),_:2},1024)):T(``,!0),e.type===`building`&&oe.value?(l(),y(j(G),{key:2,class:`text-center text-sm`},{default:g(()=>[E(t).consumption>0?(l(),N(`span`,ri,[i[2]||=x(` - `,-1),S(Q,{value:E(t).consumption},null,8,[`value`])])):(l(),N(`span`,ii,`-`))]),_:2},1024)):T(``,!0),e.type===`building`&&ce.value?(l(),y(j(G),{key:3,class:`text-center text-sm`},{default:g(()=>[E(t).capacity>0?(l(),N(`span`,ai,[S(Q,{value:E(t).capacity},null,8,[`value`])])):(l(),N(`span`,oi,`-`))]),_:2},1024)):T(``,!0),e.type===`building`&&le.value?(l(),y(j(G),{key:4,class:`text-center text-sm`},{default:g(()=>[E(t).fleetStorage>0?(l(),N(`span`,si,[i[3]||=x(` + `,-1),S(Q,{value:E(t).fleetStorage},null,8,[`value`])])):(l(),N(`span`,ci,`-`))]),_:2},1024)):T(``,!0),e.type===`building`&&de.value?(l(),y(j(G),{key:5,class:`text-center text-sm`},{default:g(()=>[...i[4]||=[M(`span`,{class:`text-purple-600 dark:text-purple-400`},`+1`,-1)]]),_:1})):T(``,!0),e.type===`building`&&h.value?(l(),y(j(G),{key:6,class:`text-center text-sm`},{default:g(()=>[E(t).spaceBonus>0?(l(),N(`span`,li,[i[5]||=x(` + `,-1),S(Q,{value:E(t).spaceBonus},null,8,[`value`])])):(l(),N(`span`,ui,`-`))]),_:2},1024)):T(``,!0),e.type===`building`&&fe.value?(l(),y(j(G),{key:7,class:`text-center text-sm`},{default:g(()=>[...i[6]||=[M(`span`,{class:`text-orange-600 dark:text-orange-400`},`+10`,-1)]]),_:1})):T(``,!0),e.type===`building`&&pe.value?(l(),y(j(G),{key:8,class:`text-center text-sm`},{default:g(()=>[e.itemType===`roboticsFactory`?(l(),N(`span`,di,` +`+b(E(t).buildSpeedBonus*100)+`% `,1)):e.itemType===`naniteFactory`?(l(),N(`span`,fi,` +`+b(E(t).buildSpeedBonus*100)+`% `,1)):T(``,!0)]),_:2},1024)):T(``,!0),e.type===`building`&&me.value?(l(),y(j(G),{key:9,class:`text-center text-sm`},{default:g(()=>[M(`span`,pi,`+`+b((E(t).researchSpeedBonus-1)*100)+`%`,1)]),_:2},1024)):T(``,!0),e.type===`technology`&&he.value?(l(),y(j(G),{key:10,class:`text-center text-sm`},{default:g(()=>[M(`span`,mi,`+`+b(t*10)+`%`,1)]),_:2},1024)):T(``,!0),e.type===`technology`&&ge.value?(l(),y(j(G),{key:11,class:`text-center text-sm`},{default:g(()=>[M(`span`,hi,`+`+b(t*10)+`%`,1)]),_:2},1024)):T(``,!0),e.type===`technology`&&ve.value?(l(),y(j(G),{key:12,class:`text-center text-sm`},{default:g(()=>[M(`span`,gi,`+`+b(t*10)+`%`,1)]),_:2},1024)):T(``,!0),e.type===`technology`&&be.value?(l(),y(j(G),{key:13,class:`text-center text-sm`},{default:g(()=>[M(`span`,_i,`+`+b(t),1)]),_:2},1024)):T(``,!0),e.type===`technology`&&le.value?(l(),y(j(G),{key:14,class:`text-center text-sm`},{default:g(()=>[M(`span`,vi,[i[7]||=x(` + `,-1),S(Q,{value:t*500},null,8,[`value`])])]),_:2},1024)):T(``,!0),e.type===`technology`&&xe.value?(l(),y(j(G),{key:15,class:`text-center text-sm`},{default:g(()=>[...i[8]||=[M(`span`,{class:`text-purple-600 dark:text-purple-400`},`+1`,-1)]]),_:1})):T(``,!0),e.type===`technology`&&Se.value?(l(),y(j(G),{key:16,class:`text-center text-sm`},{default:g(()=>[...i[9]||=[M(`span`,{class:`text-green-600 dark:text-green-400`},`+1`,-1)]]),_:1})):T(``,!0),e.type===`technology`&&h.value?(l(),y(j(G),{key:17,class:`text-center text-sm`},{default:g(()=>[M(`span`,yi,`+30 `+b(j(n)(`research.forAllPlanets`)),1)]),_:1})):T(``,!0),e.type===`technology`&&Ce.value?(l(),y(j(G),{key:18,class:`text-center text-sm`},{default:g(()=>[M(`span`,bi,`+`+b(t*10)+`%`,1)]),_:2},1024)):T(``,!0),e.type===`technology`&&me.value?(l(),y(j(G),{key:19,class:`text-center text-sm`},{default:g(()=>[M(`span`,xi,`+`+b(E(t).researchSpeedBonus*100)+`%`,1)]),_:2},1024)):T(``,!0),S(j(G),{class:`text-center text-sm`},{default:g(()=>[M(`span`,Si,[i[10]||=x(` + `,-1),S(Q,{value:E(t).points},null,8,[`value`])])]),_:2},1024)]),_:2},1032,[`class`]))),128))]),_:1})]),_:1})])):T(``,!0),e.type===`building`||e.type===`technology`?(l(),N(`div`,Ci,[S(j(q),null,{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm`},{default:g(()=>[x(b(j(n)(`${f.value}.totalCost`)),1)]),_:1})]),_:1}),S(j(J),{class:`space-y-2`},{default:g(()=>[M(`div`,wi,[M(`span`,Ti,b(j(n)(`resources.metal`))+`:`,1),M(`span`,Ei,[S(Q,{value:ke.value.metal},null,8,[`value`])])]),M(`div`,Di,[M(`span`,Oi,b(j(n)(`resources.crystal`))+`:`,1),M(`span`,ki,[S(Q,{value:ke.value.crystal},null,8,[`value`])])]),M(`div`,Ai,[M(`span`,ji,b(j(n)(`resources.deuterium`))+`:`,1),M(`span`,Mi,[S(Q,{value:ke.value.deuterium},null,8,[`value`])])])]),_:1})]),_:1}),S(j(q),null,{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm`},{default:g(()=>[x(b(j(n)(`${f.value}.totalPoints`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Ni,[S(Q,{value:ke.value.points},null,8,[`value`])]),M(`p`,Pi,b(j(n)(`${f.value}.levelRange`))+`: `+b(Math.max(0,we.value-10))+` - `+b(we.value+10),1)]),_:1})]),_:1})])):T(``,!0),e.type===`ship`||e.type===`defense`?(l(),N(`div`,Fi,[S(j(q),null,{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j(nn),{class:`h-4 w-4`}),x(` `+b(j(n)(`${f.value}.attack`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Ii,[S(Q,{value:Te.value?.attack||0},null,8,[`value`])])]),_:1})]),_:1}),S(j(q),null,{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j(rn),{class:`h-4 w-4`}),x(` `+b(j(n)(`${f.value}.shield`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Li,[S(Q,{value:Te.value?.shield||0},null,8,[`value`])])]),_:1})]),_:1}),S(j(q),null,{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j($t),{class:`h-4 w-4`}),x(` `+b(j(n)(`${f.value}.armor`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Ri,[S(Q,{value:Te.value?.armor||0},null,8,[`value`])])]),_:1})]),_:1}),e.type===`ship`?(l(),y(j(q),{key:0},{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j(un),{class:`h-4 w-4`}),x(` `+b(j(n)(`shipyard.speed`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,zi,[S(Q,{value:Ee.value?.speed||0},null,8,[`value`])])]),_:1})]),_:1})):T(``,!0),e.type===`ship`?(l(),y(j(q),{key:1},{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j(pn),{class:`h-4 w-4`}),x(` `+b(j(n)(`shipyard.cargoCapacity`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Bi,[S(Q,{value:Ee.value?.cargoCapacity||0},null,8,[`value`])])]),_:1})]),_:1})):T(``,!0),e.type===`ship`?(l(),y(j(q),{key:2},{default:g(()=>[S(j(Y),{class:`pb-3`},{default:g(()=>[S(j(X),{class:`text-sm flex items-center gap-2`},{default:g(()=>[S(j(qt),{class:`h-4 w-4`}),x(` `+b(j(n)(`shipyard.fuelConsumption`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Vi,[S(Q,{value:Ee.value?.fuelConsumption||0},null,8,[`value`])])]),_:1})]),_:1})):T(``,!0)])):T(``,!0),e.type===`ship`||e.type===`defense`?(l(),N(`div`,Hi,[S(j(q),null,{default:g(()=>[S(j(Y),null,{default:g(()=>[S(j(X),{class:`text-sm`},{default:g(()=>[x(b(j(n)(`${f.value}.buildCost`)),1)]),_:1})]),_:1}),S(j(J),{class:`space-y-2`},{default:g(()=>[(l(),N(A,null,m(s,e=>Re(M(`div`,{key:e.key,class:`flex items-center justify-between text-sm`},[M(`span`,Ui,b(j(n)(`resources.${e.key}`))+`:`,1),M(`span`,Wi,[S(Q,{value:C.value[e.key]},null,8,[`value`])])]),[[t,C.value[e.key]>0]])),64)),M(`div`,Gi,[M(`span`,Ki,b(j(n)(`player.points`))+`:`,1),M(`span`,qi,[S(Q,{value:O.value},null,8,[`value`])])])]),_:1})]),_:1}),S(j(q),null,{default:g(()=>[S(j(Y),null,{default:g(()=>[S(j(X),{class:`text-sm`},{default:g(()=>[x(b(j(n)(`${f.value}.buildTime`)),1)]),_:1})]),_:1}),S(j(J),null,{default:g(()=>[M(`div`,Ji,b(j(qr)(De.value)),1),M(`p`,Yi,b(j(n)(`${f.value}.perUnit`)),1)]),_:1})]),_:1})])):T(``,!0),e.type===`ship`||e.type===`defense`?(l(),y(j(q),{key:4},{default:g(()=>[S(j(Y),null,{default:g(()=>[S(j(X),{class:`text-sm`},{default:g(()=>[x(b(j(n)(`${f.value}.batchCalculator`)),1)]),_:1})]),_:1}),S(j(J),{class:`space-y-4`},{default:g(()=>[M(`div`,Xi,[S(j(Gr),{class:`w-20`},{default:g(()=>[x(b(j(n)(`${f.value}.quantity`))+`:`,1)]),_:1}),S(j(or),{modelValue:o.value,"onUpdate:modelValue":i[0]||=e=>o.value=e,modelModifiers:{number:!0},type:`number`,min:`1`,class:`flex-1`},null,8,[`modelValue`])]),M(`div`,Zi,[M(`div`,Qi,[M(`p`,$i,b(j(n)(`${f.value}.totalCost`))+`:`,1),M(`div`,ea,[M(`div`,ta,[M(`span`,null,b(j(n)(`resources.metal`))+`:`,1),M(`span`,na,[S(Q,{value:k.value.metal},null,8,[`value`])])]),M(`div`,ra,[M(`span`,null,b(j(n)(`resources.crystal`))+`:`,1),M(`span`,ia,[S(Q,{value:k.value.crystal},null,8,[`value`])])]),M(`div`,aa,[M(`span`,null,b(j(n)(`resources.deuterium`))+`:`,1),M(`span`,oa,[S(Q,{value:k.value.deuterium},null,8,[`value`])])])])]),M(`div`,sa,[M(`p`,ca,b(j(n)(`${f.value}.totalTime`))+`:`,1),M(`div`,la,b(j(qr)(De.value*o.value)),1),M(`p`,ua,[x(b(j(n)(`player.points`))+`: + `,1),S(Q,{value:Ae.value},null,8,[`value`])])])])]),_:1})]),_:1})):T(``,!0)]))}}),fa=k({__name:`DetailDialog`,setup(e){let{t}=wn(),n=zr(),r=D(()=>!n.type||!n.itemType?``:t(`${{building:`buildings`,technology:`technologies`,ship:`ships`,defense:`defenses`}[n.type]}.${n.itemType}`)),i=D(()=>!n.type||!n.itemType?``:t(`${{building:`buildingDescriptions`,technology:`technologyDescriptions`,ship:`shipDescriptions`,defense:`defenseDescriptions`}[n.type]}.${n.itemType}`)),a=e=>{e||n.close()};return(e,o)=>(l(),y(j(Or),{open:j(n).isOpen,"onUpdate:open":a},{default:g(()=>[j(n).type&&j(n).itemType?(l(),y(j(Lr),{key:0,"container-class":`sm:max-w-[90vw] md:max-w-3xl lg:max-w-4xl max-h-[90vh]`},{header:g(()=>[S(j(Mr),null,{default:g(()=>[S(j(Rr),{class:`flex items-center gap-2`},{default:g(()=>[x(b(r.value)+` `,1),j(n).currentLevel===void 0?T(``,!0):(l(),y(j(En),{key:0,variant:`outline`},{default:g(()=>[x(b(j(t)(`common.currentLevel`))+` `+b(j(n).currentLevel),1)]),_:1}))]),_:1}),S(j(Ar),null,{default:g(()=>[x(b(i.value),1)]),_:1})]),_:1})]),default:g(()=>[S(da,{type:j(n).type,itemType:j(n).itemType,currentLevel:j(n).currentLevel},null,8,[`type`,`itemType`,`currentLevel`])]),_:1})):T(``,!0)]),_:1},8,[`open`]))}}),pa={class:`flex-1 overflow-y-auto min-h-0 mt-4 pr-2`},ma=[`innerHTML`],ha=k({__name:`UpdateDialog`,props:{open:{type:Boolean},versionInfo:{}},emits:[`update:open`],setup(e){let t=e,{t:n}=wn(),r=D(()=>t.versionInfo?.releaseNotes?$e(t.versionInfo.releaseNotes):``),i=()=>{t.versionInfo?.downloadUrl&&window.open(t.versionInfo.downloadUrl,`_blank`)};return(t,a)=>(l(),y(j(Or),{open:e.open,"onUpdate:open":a[1]||=e=>t.$emit(`update:open`,e)},{default:g(()=>[S(j(Nr),{class:`max-w-2xl max-h-[80vh] flex flex-col`},{default:g(()=>[S(j(Mr),{class:`flex-shrink-0`},{default:g(()=>[S(j(Rr),null,{default:g(()=>[x(b(j(n)(`settings.newVersionAvailable`,{version:e.versionInfo?.version||``})),1)]),_:1}),S(j(Ar),null,{default:g(()=>[x(b(j(n)(`settings.updateAvailable`)),1)]),_:1})]),_:1}),M(`div`,pa,[M(`div`,{class:`prose prose-sm dark:prose-invert max-w-none`,innerHTML:r.value},null,8,ma)]),S(j(jr),{class:`flex gap-2 flex-shrink-0 mt-4`},{default:g(()=>[S(j(W),{variant:`outline`,onClick:a[0]||=e=>t.$emit(`update:open`,!1)},{default:g(()=>[x(b(j(n)(`common.cancel`)),1)]),_:1}),S(j(W),{onClick:i},{default:g(()=>[S(j(zt),{class:`mr-2 h-4 w-4`}),x(` `+b(j(n)(`settings.download`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]))}}),ga=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},_a=ga(ha,[[`__scopeId`,`data-v-1e57bb70`]]),va=k({__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)=>(l(),y(j(et),P({class:j(U)(`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":g(()=>[S(j(Yt),{class:`size-4`})]),"info-icon":g(()=>[S(j(Ht),{class:`size-4`})]),"warning-icon":g(()=>[S(j(ln),{class:`size-4`})]),"error-icon":g(()=>[S(j(Jt),{class:`size-4`})]),"loading-icon":g(()=>[M(`div`,null,[S(j(Ft),{class:`size-4 animate-spin`})])]),"close-icon":g(()=>[S(j(an),{class:`size-4`})]),_:1},16,[`class`]))}});const ya=()=>{try{let e=V.name,t=`${V.name}-universe`,n=localStorage.getItem(e);if(!n)return;let r;try{r=yn(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,vn(i)),localStorage.setItem(e,vn(r))}catch(e){console.error(e)}},ba=async(e,t)=>{let n=Date.now();if(n-e<300*1e3)return null;try{let e=await fetch(`https://api.github.com/repos/${V.author.name}/${V.name}/releases/latest`);if(!e.ok)throw console.error(`Failed to fetch latest version:`,e.status),t(n),Error(`Failed to fetch version: ${e.status}`);let r=await e.json(),i=r.tag_name?.replace(/^v/,``);return t(n),i&&i!==V.version?{version:i,releaseNotes:r.body||``,downloadUrl:`https://github.com/${V.author.name}/${V.name}/releases/latest`}:null}catch(e){throw console.error(`Error checking version:`,e),t(n),e}},xa=e=>Date.now()-e>=300*1e3;var Sa=`modulepreload`,Ca=function(e,t){return new URL(e,t).href},wa={};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=Ca(t,n),t in wa)return;wa[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`:Sa,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 Ta={class:`flex items-center justify-center p-4 group-data-[collapsible=icon]:p-2`},Ea={class:`text-xl font-bold ml-2 group-data-[collapsible=icon]:hidden`},Da={class:`px-4 py-3 space-y-2 text-sm`},Oa={class:`flex items-start gap-2.5 flex-1 min-w-0`},ka={class:`flex-1 min-w-0 text-left`},Aa={class:`text-[10px] text-muted-foreground uppercase tracking-wider mb-0.5`},ja={class:`flex items-center gap-1.5 mb-0.5`},Ma={class:`truncate font-semibold text-sm`},Na={class:`text-[11px] text-muted-foreground`},Pa={class:`p-2`},Fa={class:`px-2 py-1.5 mb-1 text-xs font-semibold text-muted-foreground`},Ia={class:`space-y-0.5 max-h-80 overflow-y-auto`},La={class:`flex items-start gap-2 w-full min-w-0`},Ra={class:`flex-1 min-w-0 text-left`},za={class:`flex items-center gap-1.5 mb-0.5`},Ba={class:`truncate font-medium text-sm`},Va={class:`text-[11px] text-muted-foreground`},Ha={class:`bg-muted/50 rounded-lg p-2`},Ua={class:`flex items-center justify-between`},Wa={class:`text-xs text-muted-foreground`},Ga={class:`text-sm font-bold text-primary`},Ka={key:0,class:`flex gap-1`},qa={class:`space-y-1`},Ja={class:`flex flex-col h-full overflow-hidden pt-[60px]`},Ya={class:`flex flex-col gap-3`},Xa={class:`grid items-center gap-3 sm:gap-6`,style:{"grid-template-columns":`auto 1fr auto`}},Za={class:`min-w-0`},Qa={class:`text-[10px] sm:text-xs text-muted-foreground truncate`},$a={class:`text-[10px] sm:text-xs text-muted-foreground truncate`},eo={class:`flex items-center gap-2 sm:gap-3 flex-shrink-0 justify-end`},to={key:0,class:`flex items-center gap-1.5 text-xs sm:text-sm`},no={class:`text-muted-foreground hidden sm:inline`},ro={key:1,class:`flex items-center gap-1.5 text-xs sm:text-sm`},io={class:`text-muted-foreground hidden sm:inline`},ao={class:`grid grid-cols-2 gap-3`},oo={class:`flex items-center justify-center gap-2 mb-1.5`},so={class:`text-xs font-medium text-muted-foreground`},co={class:`space-y-0.5 text-center`},lo={class:`text-[10px] text-muted-foreground`},uo={class:`text-[10px] text-muted-foreground`},fo={class:`text-[10px] text-muted-foreground`},po={key:2,class:`bg-card border-b px-4 sm:px-6 py-4.5`},mo={class:`space-y-3`},ho={class:`flex items-center justify-between text-xs sm:text-sm gap-2`},go={class:`flex items-center gap-1.5 sm:gap-2 min-w-0 flex-1`},_o={class:`font-medium truncate`},vo={class:`text-muted-foreground hidden sm:inline flex-shrink-0 text-[10px] sm:text-xs`},yo={class:`flex items-center gap-2 sm:gap-3 flex-shrink-0`},bo={class:`text-muted-foreground text-[10px] sm:text-xs whitespace-nowrap`},xo={class:`flex items-center justify-between text-xs sm:text-sm gap-2`},So={class:`flex items-center gap-1.5 sm:gap-2 min-w-0 flex-1`},Co={class:`font-medium truncate`},wo={class:`text-muted-foreground hidden sm:inline flex-shrink-0 text-[10px] sm:text-xs`},To={class:`flex items-center gap-2 sm:gap-3 flex-shrink-0`},Eo={class:`text-muted-foreground text-[10px] sm:text-xs whitespace-nowrap`},Do={class:`flex-1 overflow-y-auto`},Oo={class:`animate-fade-in`},ko=10,Ao=5,jo=ga(k({__name:`App`,setup(e){ya();let t=bn(),r=xn(),d=Sn(),{isDark:re}=Cn(),{t:p}=wn(),se=_(!1),h=_(``),_e=_(``),ve=D(()=>window.innerWidth),ye=_(null),Se=_(!1),C=_(null),w=()=>{ye.value&&ye.value(),se.value=!1},Oe=[`zh-CN`,`zh-TW`,`en`,`de`,`ru`,`ko`,`ja`],O=_(window.innerWidth>=1024),k=_(!1),je=async()=>{if(!ke(t.player.planets)){let e=Date.now(),n=ue(t.player.officers,e);t.player.planets.forEach(t=>{a(t,e,n)}),Object.keys(r.planets).length===0&&Me();return}t.player=Ee(t.player.id,p(`common.playerName`));let e=he(t.player.id,p(`planet.homePlanet`));t.player.planets=[e],t.currentPlanetId=e.id,Me()},Me=()=>{for(let e=0;e<200;e++){let t=Ne(),n=E(t.galaxy,t.system,t.position);if(r.planets[n])continue;let i=u(e,t,p(`planet.planetPrefix`));r.planets[n]=i}},P=async()=>{if(t.isPaused)return;let e=Date.now();t.gameTime=e,Te(t.player.officers,e);let n=Ae(t.player,e);t.player.researchQueue=n.updatedResearchQueue,t.player.fleetMissions.forEach(t=>{t.status===`outbound`&&e>=t.arrivalTime?Re(t):t.status===`returning`&&t.returnTime&&e>=t.returnTime&&ze(t)});for(let n=t.player.missileAttacks.length-1;n>=0;n--){let r=t.player.missileAttacks[n];r&&r.status===`flying`&&e>=r.arrivalTime&&(await He(r),t.player.missileAttacks.splice(n,1))}d.npcs.forEach(t=>{t.fleetMissions&&t.fleetMissions.forEach(n=>{n.status===`outbound`&&e>=n.arrivalTime?Be(t,n):n.status===`returning`&&n.returnTime&&e>=n.returnTime&&Ve(t,n)})}),Ye(1),F(1)},Re=async e=>{let n=E(e.targetPosition.galaxy,e.targetPosition.system,e.targetPosition.position),i=t.player.planets.find(t=>t.position.galaxy===e.targetPosition.galaxy&&t.position.system===e.targetPosition.system&&t.position.position===e.targetPosition.position)||r.planets[n],a=t.player.planets.find(t=>t.id===e.originPlanetId)?.name||p(`fleetView.unknownPlanet`);if(e.missionType===B.Transport){let n=Le(e,i,t.player,d.npcs);t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`mission-report-${e.id}`,timestamp:Date.now(),missionType:B.Transport,originPlanetId:e.originPlanetId,originPlanetName:a,targetPosition:e.targetPosition,targetPlanetId:i?.id,targetPlanetName:i?.name||`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`,success:n.success,message:n.success?p(`missionReports.transportSuccess`):p(`missionReports.transportFailed`),details:{transportedResources:e.cargo},read:!1})}else if(e.missionType===B.Attack){let n=await ae(e,i,t.player,null,t.player.planets);if(n){if(t.player.battleReports.push(n.battleResult),i){let e=d.npcs.find(e=>e.planets.some(e=>e.id===i.id));e&&ge(t.player,e,n.battleResult,d.npcs,t.locale)}n.moon&&t.player.planets.push(n.moon),n.debrisField&&(r.debrisFields[n.debrisField.id]=n.debrisField)}}else if(e.missionType===B.Colonize){let n=oe(e,i,t.player,p(`planet.colonyPrefix`));t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`mission-report-${e.id}`,timestamp:Date.now(),missionType:B.Colonize,originPlanetId:e.originPlanetId,originPlanetName:a,targetPosition:e.targetPosition,targetPlanetId:n?.id,targetPlanetName:n?.name,success:!!n,message:p(n?`missionReports.colonizeSuccess`:`missionReports.colonizeFailed`),details:n?{newPlanetId:n.id,newPlanetName:n.name}:void 0,read:!1}),n&&t.player.planets.push(n)}else if(e.missionType===B.Spy){let n=fe(e,i,t.player,null,d.npcs);n&&t.player.spyReports.push(n)}else if(e.missionType===B.Deploy){let n=le(e,i,t.player.id);if(t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`mission-report-${e.id}`,timestamp:Date.now(),missionType:B.Deploy,originPlanetId:e.originPlanetId,originPlanetName:a,targetPosition:e.targetPosition,targetPlanetId:i?.id,targetPlanetName:i?.name||`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`,success:n,message:p(n?`missionReports.deploySuccess`:`missionReports.deployFailed`),details:{deployedFleet:e.fleet},read:!1}),n){let n=t.player.fleetMissions.indexOf(e);n>-1&&t.player.fleetMissions.splice(n,1);return}}else if(e.missionType===B.Recycle){let n=`debris_${e.targetPosition.galaxy}_${e.targetPosition.system}_${e.targetPosition.position}`,i=r.debrisFields[n],o=ie(e,i);t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`mission-report-${e.id}`,timestamp:Date.now(),missionType:B.Recycle,originPlanetId:e.originPlanetId,originPlanetName:a,targetPosition:e.targetPosition,success:!!o,message:p(o?`missionReports.recycleSuccess`:`missionReports.recycleFailed`),details:o?{recycledResources:o.collectedResources,remainingDebris:o.remainingDebris||void 0}:void 0,read:!1}),o&&i&&(o.remainingDebris&&(o.remainingDebris.metal>0||o.remainingDebris.crystal>0)?r.debrisFields[n]={id:i.id,position:i.position,resources:o.remainingDebris,createdAt:i.createdAt,expiresAt:i.expiresAt}:delete r.debrisFields[n])}else if(e.missionType===B.Destroy){let o=ee(e,i,t.player);if(t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`mission-report-${e.id}`,timestamp:Date.now(),missionType:B.Destroy,originPlanetId:e.originPlanetId,originPlanetName:a,targetPosition:e.targetPosition,targetPlanetId:i?.id,targetPlanetName:i?.name,success:o?.success||!1,message:o?.success?p(`missionReports.destroySuccess`):p(`missionReports.destroyFailed`),details:o?.success?{destroyedPlanetName:i?.name||`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`}:void 0,read:!1}),o&&o.success&&o.planetId){let e=t.player.planets.findIndex(e=>e.id===o.planetId);e>-1?t.player.planets.splice(e,1):delete r.planets[n]}}},ze=e=>{let n=t.player.planets.find(t=>t.id===e.originPlanetId);if(!n)return;s(n.fleet,e.fleet),De(n.resources,e.cargo);let r=t.player.fleetMissions.indexOf(e);r>-1&&t.player.fleetMissions.splice(r,1)},Be=(e,n)=>{if(n.missionType===B.Recycle){let e=n.debrisFieldId;if(!e){console.warn(`[NPC Mission] Recycle mission missing debrisFieldId`),n.status=`returning`,n.returnTime=Date.now()+(n.arrivalTime-n.departureTime);return}let t=r.debrisFields[e],i=ie(n,t);i&&t&&(i.remainingDebris&&(i.remainingDebris.metal>0||i.remainingDebris.crystal>0)?r.debrisFields[e]={id:t.id,position:t.position,resources:i.remainingDebris,createdAt:t.createdAt}:delete r.debrisFields[e]),Ge(n.id),n.returnTime=Date.now()+(n.arrivalTime-n.departureTime);return}let a=E(n.targetPosition.galaxy,n.targetPosition.system,n.targetPosition.position),o=t.player.planets.find(e=>e.position.galaxy===n.targetPosition.galaxy&&e.position.system===n.targetPosition.system&&e.position.position===n.targetPosition.position)||r.planets[a];if(!o){console.warn(`[NPC Mission] Target planet not found`);return}if(n.missionType===B.Spy){let{spiedNotification:r,spyReport:a}=i(e,n,o,t.player);e.playerSpyReports||={},e.playerSpyReports[o.id]=a,t.player.spiedNotifications||(t.player.spiedNotifications=[]),t.player.spiedNotifications.push(r),Ge(n.id)}else n.missionType===B.Attack&&ne(e,n,o,t.player,t.player.planets).then(e=>{e&&(t.player.battleReports.push(e.battleResult),e.moon&&t.player.planets.push(e.moon),e.debrisField&&(r.debrisFields[e.debrisField.id]=e.debrisField)),Ge(n.id)})},Ve=(e,t)=>{let n=e.planets.find(e=>e.id===t.originPlanetId);if(n&&(s(n.fleet,t.fleet),t.cargo&&(n.resources.metal+=t.cargo.metal,n.resources.crystal+=t.cargo.crystal,n.resources.deuterium+=t.cargo.deuterium),e.fleetMissions)){let n=e.fleetMissions.indexOf(t);n>-1&&e.fleetMissions.splice(n,1)}},He=async e=>{let n=await $(()=>import(`./missileLogic-_46Nr-Ju.js`),__vite__mapDeps([0,1,2,3,4]),import.meta.url),i=E(e.targetPosition.galaxy,e.targetPosition.system,e.targetPosition.position),a=t.player.planets.find(t=>t.position.galaxy===e.targetPosition.galaxy&&t.position.system===e.targetPosition.system&&t.position.position===e.targetPosition.position)||r.planets[i];if(!a){e.status=`arrived`,t.player.missionReports||(t.player.missionReports=[]),t.player.missionReports.push({id:`missile-report-${e.id}`,timestamp:Date.now(),missionType:B.MissileAttack,originPlanetId:e.originPlanetId,originPlanetName:t.player.planets.find(t=>t.id===e.originPlanetId)?.name||p(`fleetView.unknownPlanet`),targetPosition:e.targetPosition,targetPlanetId:void 0,targetPlanetName:`[${e.targetPosition.galaxy}:${e.targetPosition.system}:${e.targetPosition.position}]`,success:!1,message:p(`missionReports.missileAttackFailed`),details:{missileCount:e.missileCount,missileHits:0,missileIntercepted:0,defenseLosses:{}},read:!1});return}let o=n.calculateMissileImpact(e.missileCount,a);n.applyMissileAttackResult(a,o.defenseLosses),e.status=`arrived`,t.player.missionReports||(t.player.missionReports=[]);let s=o.missileHits>0?`${p(`missionReports.missileAttackSuccess`)}: ${o.missileHits} ${p(`missionReports.hits`)}`:p(`missionReports.missileAttackIntercepted`);t.player.missionReports.push({id:`missile-report-${e.id}`,timestamp:Date.now(),missionType:B.MissileAttack,originPlanetId:e.originPlanetId,originPlanetName:t.player.planets.find(t=>t.id===e.originPlanetId)?.name||p(`fleetView.unknownPlanet`),targetPosition:e.targetPosition,targetPlanetId:a.id,targetPlanetName:a.name,success:!0,message:s,details:{missileCount:e.missileCount,missileHits:o.missileHits,missileIntercepted:o.missileIntercepted,defenseLosses:o.defenseLosses},read:!1})},Ue=e=>{if(!t.player.incomingFleetAlerts)return;let n=t.player.incomingFleetAlerts.indexOf(e);n>-1&&t.player.incomingFleetAlerts.splice(n,1)},Ge=e=>{if(!t.player.incomingFleetAlerts)return;let n=t.player.incomingFleetAlerts.findIndex(t=>t.id===e);n>-1&&t.player.incomingFleetAlerts.splice(n,1)},qe=0,Ye=e=>{if(qe+=e,qe{n.ownerId===t.player.id||!n.ownerId||(e.has(n.ownerId)||e.set(n.ownerId,{id:n.ownerId,name:`NPC-${n.ownerId.substring(0,8)}`,planets:[],technologies:{},difficulty:`medium`,relations:{},allies:[],enemies:[]}),e.get(n.ownerId).planets.push(n))}),d.npcs=Array.from(e.values()),d.npcs.length>0){let e=pe({planets:n,player:t.player,npcs:d.npcs});d.npcs.forEach(t=>{o(t,e)}),c(d.npcs)}}if(d.npcs.length===0){qe=0;return}let i={planets:n,player:t.player,npcs:d.npcs};d.npcs.forEach(e=>{ce(e,i,qe)}),qe=0},Ze=0,F=e=>{if(Ze+=e,Ze{Pe(e,t.player,i,r.debrisFields,n)}),Ze=0},$e=null,et=null,tt=null,I=()=>{$e&&clearInterval($e);let e=1e3/(t.gameSpeed||1);$e=setInterval(()=>{P()},e)};te(()=>t.gameSpeed,()=>{$e&&I()}),Fe(async()=>{t.player.planets.length===0&&(t.locale=Xe()),await je(),I(),et=nt();let e=await ba(t.player.lastVersionCheckTime||0,e=>{t.player.lastVersionCheckTime=e});e&&(C.value=e,Qe.info(p(`settings.newVersionAvailable`,{version:e.version}),{duration:1/0,dismissible:!0,action:{label:p(`settings.viewUpdate`),onClick:()=>{Se.value=!0}}})),tt=setInterval(async()=>{let e=await ba(t.player.lastVersionCheckTime||0,e=>{t.player.lastVersionCheckTime=e});e&&(C.value=e,Qe.info(p(`settings.newVersionAvailable`,{version:e.version}),{duration:1/0,dismissible:!0,action:{label:p(`settings.viewUpdate`),onClick:()=>{Se.value=!0}}}))},300*1e3)}),me(()=>{$e&&clearInterval($e),et&&et(),tt&&clearInterval(tt)});let nt=()=>{let e=[`ArrowUp`,`ArrowUp`,`ArrowDown`,`ArrowDown`,`ArrowLeft`,`ArrowLeft`,`ArrowRight`,`ArrowRight`,`b`,`a`],n=0,r=r=>{t.player.isGMEnabled||(r.key.toLowerCase()===e[n]||r.key===e[n]?(n++,n===e.length&&(t.player.isGMEnabled=!0,Qe.success(p(`common.gmModeActivated`)),n=0)):n=0)};return window.addEventListener(`keydown`,r),()=>{window.removeEventListener(`keydown`,r)}},L=D(()=>t.currentPlanet),rt=D(()=>[{name:D(()=>p(`nav.overview`)),path:`/`,icon:Ut},{name:D(()=>p(`nav.buildings`)),path:`/buildings`,icon:Kt},{name:D(()=>p(`nav.research`)),path:`/research`,icon:mn},{name:D(()=>p(`nav.shipyard`)),path:`/shipyard`,icon:on},{name:D(()=>p(`nav.defense`)),path:`/defense`,icon:rn},{name:D(()=>p(`nav.fleet`)),path:`/fleet`,icon:fn},{name:D(()=>p(`nav.officers`)),path:`/officers`,icon:en},{name:D(()=>p(`nav.simulator`)),path:`/battle-simulator`,icon:dn},{name:D(()=>p(`nav.galaxy`)),path:`/galaxy`,icon:Bt},{name:D(()=>p(`nav.diplomacy`)),path:`/diplomacy`,icon:Gt},{name:D(()=>p(`nav.messages`)),path:`/messages`,icon:Wt},{name:D(()=>p(`nav.settings`)),path:`/settings`,icon:Qt},...t.player.isGMEnabled?[{name:D(()=>p(`nav.gm`)),path:`/gm`,icon:cn}]:[]]),R=D(()=>{if(!L.value)return null;let e=Date.now(),n=ue(t.player.officers,e);return we(L.value,{resourceProductionBonus:n.resourceProductionBonus,darkMatterProductionBonus:n.darkMatterProductionBonus,energyProductionBonus:n.energyProductionBonus})}),it=D(()=>{if(!L.value)return null;let e=Date.now(),n=ue(t.player.officers,e);return Ie(L.value,n.storageCapacityBonus)}),at=D(()=>L.value?Ce(L.value):0),z=D(()=>!L.value||!R.value?0:R.value.energy-at.value),ot=D(()=>{let e=t.player.battleReports.filter(e=>!e.read).length,n=t.player.spyReports.filter(e=>!e.read).length,r=t.player.spiedNotifications?.filter(e=>!e.read).length||0,i=t.player.missionReports?.filter(e=>!e.read).length||0,a=t.player.npcActivityNotifications?.filter(e=>!e.read).length||0,o=t.player.giftNotifications?.filter(e=>!e.read).length||0,s=t.player.giftRejectedNotifications?.filter(e=>!e.read).length||0;return e+n+r+i+a+o+s}),st=D(()=>t.player.fleetMissions.filter(e=>e.status===`outbound`||e.status===`returning`).length+(t.player.missileAttacks?.filter(e=>e.status===`flying`).length||0)),ct=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`energy`},{key:`darkMatter`}],lt=D(()=>!L.value||L.value.isMoon?null:t.getMoonForPlanet(L.value.id)),ut=D(()=>!!lt.value),dt=()=>{lt.value&&(t.currentPlanetId=lt.value.id)},ft=()=>{L.value?.parentPlanetId&&(t.currentPlanetId=L.value.parentPlanetId)},pt=e=>{t.currentPlanetId=e},mt=()=>{O.value=!O.value},ht=e=>{if(e.type===`building`||e.type===`demolish`){let t=p(`buildings.${e.itemType}`);return e.type===`demolish`?`${p(`buildingsView.demolish`)} - ${t}`:t}else if(e.type===`technology`)return p(`technologies.${e.itemType}`);else if(e.type===`ship`)return p(`ships.${e.itemType}`);else if(e.type===`defense`)return p(`defenses.${e.itemType}`);return e.itemType},gt=e=>{let t=Date.now();return Math.max(0,Math.floor((e.endTime-t)/1e3))},_t=e=>{let t=Date.now(),n=e.endTime-e.startTime,r=t-e.startTime;return Math.min(100,Math.max(0,r/n*100))},vt=e=>{h.value=p(`queue.cancelBuild`),_e.value=p(`queue.confirmCancel`),ye.value=()=>{if(!t.currentPlanet)return!1;let{item:n,index:r}=de(t.currentPlanet.buildQueue,e);if(!n)return!1;if(n.type===`building`){let e=xe(t.currentPlanet,n);De(t.currentPlanet.resources,e)}return t.currentPlanet.buildQueue.splice(r,1),!0},se.value=!0},yt=e=>{h.value=p(`queue.cancelResearch`),_e.value=p(`queue.confirmCancel`),ye.value=()=>{if(!t.currentPlanet)return!1;let{item:n,index:r}=de(t.player.researchQueue,e);if(!n)return!1;if(n.type===`technology`){let e=f(n);De(t.currentPlanet.resources,e)}return t.player.researchQueue.splice(r,1),!0},se.value=!0};return(e,r)=>(l(),y(j(gr),{open:O.value,"onUpdate:open":r[4]||=e=>O.value=e},{default:g(()=>[S(j(tr),{collapsible:`icon`},{default:g(()=>[S(j(ar),{class:`border-b`},{default:g(()=>[M(`div`,Ta,[r[5]||=M(`img`,{src:``+new URL(`logo-Cz0cNqhe.svg`,import.meta.url).href,class:`w-10 group-data-[collapsible=icon]:w-8`},null,-1),M(`h1`,Ea,b(j(V).title),1)])]),_:1}),S(j(nr),null,{default:g(()=>[L.value?(l(),y(j(ir),{key:0,class:`border-b group-data-[collapsible=icon]:hidden`},{default:g(()=>[M(`div`,Da,[S(j(kn),null,{default:g(()=>[S(j(jn),{"as-child":``},{default:g(()=>[S(j(W),{variant:`outline`,class:`w-full justify-between h-auto px-3 py-2.5 border-2 hover:bg-accent hover:border-primary transition-colors`},{default:g(()=>[M(`div`,Oa,[S(j(Bt),{class:`h-5 w-5 flex-shrink-0 mt-0.5 text-primary`}),M(`div`,ka,[M(`div`,Aa,b(j(p)(`planet.currentPlanet`)),1),M(`div`,ja,[M(`span`,Ma,b(L.value.name),1),L.value.isMoon?(l(),y(j(En),{key:0,variant:`secondary`,class:`text-[10px] px-1 py-0 h-4`},{default:g(()=>[x(b(j(p)(`planet.moon`)),1)]),_:1})):T(``,!0)]),M(`div`,Na,` [`+b(L.value.position.galaxy)+`:`+b(L.value.position.system)+`:`+b(L.value.position.position)+`] `,1)])]),S(j(Rt),{class:`h-4 w-4 flex-shrink-0 text-muted-foreground ml-2`})]),_:1})]),_:1}),S(j(An),{class:`w-72 p-0`,side:`bottom`,align:`start`},{default:g(()=>[M(`div`,Pa,[M(`div`,Fa,b(j(p)(`planet.switchPlanet`)),1),M(`div`,Ia,[(l(!0),N(A,null,m(j(t).player.planets,e=>(l(),y(j(W),{key:e.id,onClick:t=>pt(e.id),variant:e.id===L.value.id?`secondary`:`ghost`,class:`w-full justify-start h-auto py-2 px-2`,size:`sm`},{default:g(()=>[M(`div`,La,[S(j(Bt),{class:v([`h-4 w-4 flex-shrink-0 mt-0.5`,e.id===L.value.id?`text-primary`:``])},null,8,[`class`]),M(`div`,Ra,[M(`div`,za,[M(`span`,Ba,b(e.name),1),e.isMoon?(l(),y(j(En),{key:0,variant:`outline`,class:`text-[10px] px-1 py-0 h-4`},{default:g(()=>[x(b(j(p)(`planet.moon`)),1)]),_:1})):T(``,!0)]),M(`div`,Va,` [`+b(e.position.galaxy)+`:`+b(e.position.system)+`:`+b(e.position.position)+`] `,1)])])]),_:2},1032,[`onClick`,`variant`]))),128))])])]),_:1})]),_:1}),M(`div`,Ha,[M(`div`,Ua,[M(`span`,Wa,b(j(p)(`player.points`)),1),M(`span`,Ga,b(j(Z)(j(t).player.points)),1)])]),ut.value||L.value.isMoon?(l(),N(`div`,Ka,[L.value.isMoon?(l(),y(j(W),{key:0,onClick:ft,variant:`outline`,size:`sm`,class:`w-full text-xs h-7`},{default:g(()=>[x(b(j(p)(`planet.backToPlanet`)),1)]),_:1})):lt.value?(l(),y(j(W),{key:1,onClick:dt,variant:`outline`,size:`sm`,class:`w-full text-xs h-7`},{default:g(()=>[x(b(j(p)(`planet.switchToMoon`)),1)]),_:1})):T(``,!0)])):T(``,!0)])]),_:1})):T(``,!0),S(j(ir),null,{default:g(()=>[S(j(cr),null,{default:g(()=>[(l(!0),N(A,null,m(rt.value,t=>(l(),y(j(hr),{key:t.path},{default:g(()=>[S(j(mr),{"as-child":``,"is-active":e.$route.path===t.path,tooltip:t.name.value},{default:g(()=>[S(j(Ke),{to:t.path},{default:g(()=>[(l(),y(n(t.icon))),M(`span`,null,b(t.name.value),1),t.path===`/messages`&&ot.value>0?(l(),y(j(lr),{key:0,class:`bg-destructive text-destructive-foreground`},{default:g(()=>[x(b(ot.value),1)]),_:1})):T(``,!0),t.path===`/fleet`&&st.value>0?(l(),y(j(lr),{key:1,class:`bg-primary text-primary-foreground`},{default:g(()=>[x(b(st.value),1)]),_:1})):T(``,!0)]),_:2},1032,[`to`])]),_:2},1032,[`is-active`,`tooltip`])]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),S(j(rr),{class:`border-t`},{default:g(()=>[S(j(cr),null,{default:g(()=>[S(j(hr),null,{default:g(()=>[S(j(kn),null,{default:g(()=>[S(j(jn),{"as-child":``},{default:g(()=>[S(j(mr),{tooltip:j(Je)[j(t).locale]},{default:g(()=>[S(j(tn)),M(`span`,null,b(j(Je)[j(t).locale]),1)]),_:1},8,[`tooltip`])]),_:1}),S(j(An),{class:`w-48 p-2`,side:O.value||ve.value<768?`top`:`right`,align:O.value||ve.value<768?`center`:`end`},{default:g(()=>[M(`div`,qa,[(l(),N(A,null,m(Oe,e=>S(j(W),{key:e,onClick:n=>j(t).locale=e,variant:j(t).locale===e?`secondary`:`ghost`,class:`w-full justify-start`,size:`sm`},{default:g(()=>[x(b(j(Je)[e]),1)]),_:2},1032,[`onClick`,`variant`])),64))])]),_:1},8,[`side`,`align`])]),_:1})]),_:1}),S(j(hr),null,{default:g(()=>[S(j(mr),{onClick:r[0]||=e=>re.value=!j(re),tooltip:j(re)?j(p)(`sidebar.lightMode`):j(p)(`sidebar.darkMode`)},{default:g(()=>[j(re)?(l(),y(j(Zt),{key:0})):(l(),y(j(Lt),{key:1})),M(`span`,null,b(j(re)?j(p)(`sidebar.lightMode`):j(p)(`sidebar.darkMode`)),1)]),_:1},8,[`tooltip`])]),_:1}),S(j(hr),{class:`hidden sm:inline`},{default:g(()=>[S(j(mr),{onClick:mt,tooltip:O.value?j(p)(`sidebar.collapse`):j(p)(`sidebar.expand`)},{default:g(()=>[S(j(Vt),{class:`group-data-[state=collapsed]:rotate-180 transition-transform`}),M(`span`,null,b(j(p)(`sidebar.collapse`)),1)]),_:1},8,[`tooltip`])]),_:1})]),_:1})]),_:1})]),_:1}),S(j(sr),null,{default:g(()=>[M(`div`,Ja,[L.value?(l(),N(`header`,{key:0,class:v([`fixed top-0 right-0 left-0 z-40 bg-card border-b px-4 sm:px-6 py-3 shadow-md`,O.value?`lg:left-[var(--sidebar-width)]`:`lg:left-[var(--sidebar-width-icon)]`])},[M(`div`,Ya,[M(`div`,Xa,[M(`div`,null,[S(j(_r),{class:`lg:hidden`})]),M(`div`,{class:v([`flex items-center gap-3 sm:gap-6 justify-center`,k.value?`hidden`:`overflow-x-auto`])},[(l(),N(A,null,m(ct,e=>M(`div`,{key:e.key,class:`flex items-center gap-1.5 sm:gap-2 flex-shrink-0`},[S(yr,{type:e.key,size:`md`},null,8,[`type`]),M(`div`,Za,[e.key===`energy`?(l(),N(A,{key:0},[M(`p`,{class:v([`text-xs sm:text-sm font-medium truncate`,z.value>=0?`text-green-600 dark:text-green-400`:`text-red-600 dark:text-red-400`])},b(z.value>=0?`+`:``)+b(j(Z)(z.value)),3),M(`p`,Qa,b(j(Z)(R.value?.energy||0))+` / `+b(j(Z)(at.value)),1)],64)):(l(),N(A,{key:1},[M(`p`,{class:v([`text-xs sm:text-sm font-medium truncate`,j(Kr)(L.value.resources[e.key],it.value?.[e.key]||1/0)])},b(j(Z)(L.value.resources[e.key]))+` / `+b(j(Z)(it.value?.[e.key]||0)),3),M(`p`,$a,` +`+b(j(Z)(Math.round((R.value?.[e.key]||0)/60)))+`/`+b(j(p)(`resources.perMinute`)),1)],64))])])),64))],2),M(`div`,eo,[S(j(W),{onClick:r[1]||=e=>k.value=!k.value,variant:`ghost`,size:`sm`,class:`lg:hidden h-8 w-8 p-0`},{default:g(()=>[k.value?(l(),y(j(sn),{key:1,class:`h-4 w-4`})):(l(),y(j(Xt),{key:0,class:`h-4 w-4`}))]),_:1}),L.value.buildQueue.length>0?(l(),N(`div`,to,[r[6]||=M(`div`,{class:`h-2 w-2 rounded-full bg-green-500 animate-pulse`},null,-1),M(`span`,no,b(j(p)(`queue.building`)),1)])):T(``,!0),j(t).player.researchQueue.length>0?(l(),N(`div`,ro,[r[7]||=M(`div`,{class:`h-2 w-2 rounded-full bg-blue-500 animate-pulse`},null,-1),M(`span`,io,b(j(p)(`queue.researching`)),1)])):T(``,!0)])])])],2)):T(``,!0),S(be,{"enter-active-class":`transition-all duration-300 ease-out`,"enter-from-class":`opacity-0 -translate-y-2`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-200 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-2`},{default:g(()=>[L.value&&k.value?(l(),N(`div`,{key:0,class:v([`fixed top-[60px] right-0 left-0 z-30 bg-card border-b px-4 py-3 shadow-md lg:hidden`,O.value?`lg:left-[var(--sidebar-width)]`:`lg:left-[var(--sidebar-width-icon)]`])},[M(`div`,ao,[(l(),N(A,null,m(ct,e=>M(`div`,{key:e.key,class:`bg-muted/50 rounded-lg p-2.5`},[M(`div`,oo,[S(yr,{type:e.key,size:`md`},null,8,[`type`]),M(`span`,so,b(j(p)(`resources.${e.key}`)),1)]),M(`div`,co,[e.key===`energy`?(l(),N(A,{key:0},[M(`p`,{class:v([`text-sm font-semibold`,z.value>=0?`text-green-600 dark:text-green-400`:`text-red-600 dark:text-red-400`])},b(z.value>=0?`+`:``)+b(j(Z)(z.value)),3),M(`p`,lo,b(j(p)(`resources.production`))+`: `+b(j(Z)(R.value?.energy||0))+` / `+b(j(Z)(at.value)),1)],64)):(l(),N(A,{key:1},[M(`p`,{class:v([`text-sm font-semibold`,j(Kr)(L.value.resources[e.key],it.value?.[e.key]||1/0)])},b(j(Z)(L.value.resources[e.key])),3),M(`p`,uo,b(j(p)(`resources.capacity`))+`: `+b(j(Z)(it.value?.[e.key]||0)),1),M(`p`,fo,b(j(p)(`resources.production`))+`: +`+b(j(Z)(Math.round((R.value?.[e.key]||0)/60)))+`/`+b(j(p)(`resources.perMinute`)),1)],64))])])),64))])],2)):T(``,!0)]),_:1}),j(t).player.incomingFleetAlerts&&j(t).player.incomingFleetAlerts.length>0?(l(),y(Hn,{key:1,alerts:j(t).player.incomingFleetAlerts,onMarkAsRead:Ue},null,8,[`alerts`])):T(``,!0),L.value&&(L.value.buildQueue.length>0||j(t).player.researchQueue.length>0)?(l(),N(`div`,po,[M(`div`,mo,[(l(!0),N(A,null,m(L.value.buildQueue,e=>(l(),N(`div`,{key:e.id,class:`space-y-1.5`},[M(`div`,ho,[M(`div`,go,[r[8]||=M(`div`,{class:`h-2 w-2 rounded-full bg-green-500 animate-pulse flex-shrink-0`},null,-1),M(`span`,_o,b(ht(e)),1),M(`span`,vo,[e.type===`ship`||e.type===`defense`?(l(),N(A,{key:0},[x(` → `+b(j(p)(`queue.quantity`))+` `+b(e.quantity),1)],64)):(l(),N(A,{key:1},[x(`→ `+b(j(p)(`queue.level`))+` `+b(e.targetLevel),1)],64))])]),M(`div`,yo,[M(`span`,bo,b(j(qr)(gt(e))),1),S(j(W),{onClick:t=>vt(e.id),variant:`ghost`,size:`sm`,class:`h-5 sm:h-6 px-1.5 sm:px-2 text-[10px] sm:text-xs`},{default:g(()=>[x(b(j(p)(`queue.cancel`)),1)]),_:1},8,[`onClick`])])]),S(j(On),{"model-value":_t(e),class:`h-1.5`},null,8,[`model-value`])]))),128)),(l(!0),N(A,null,m(j(t).player.researchQueue,e=>(l(),N(`div`,{key:e.id,class:`space-y-1.5`},[M(`div`,xo,[M(`div`,So,[r[9]||=M(`div`,{class:`h-2 w-2 rounded-full bg-blue-500 animate-pulse flex-shrink-0`},null,-1),M(`span`,Co,b(ht(e)),1),M(`span`,wo,` → `+b(j(p)(`queue.level`))+` `+b(e.targetLevel),1)]),M(`div`,To,[M(`span`,Eo,b(j(qr)(gt(e))),1),S(j(W),{onClick:t=>yt(e.id),variant:`ghost`,size:`sm`,class:`h-5 sm:h-6 px-1.5 sm:px-2 text-[10px] sm:text-xs`},{default:g(()=>[x(b(j(p)(`queue.cancel`)),1)]),_:1},8,[`onClick`])])]),S(j(On),{"model-value":_t(e),class:`h-1.5`},null,8,[`model-value`])]))),128))])])):T(``,!0),M(`main`,Do,[M(`div`,Oo,[S(j(We))])])])]),_:1}),S(j(br),{open:se.value,"onUpdate:open":r[2]||=e=>se.value=e},{default:g(()=>[S(j(Cr),null,{default:g(()=>[S(j(Er),null,{default:g(()=>[S(j(Dr),null,{default:g(()=>[x(b(h.value),1)]),_:1}),S(j(wr),{class:`whitespace-pre-line`},{default:g(()=>[x(b(_e.value),1)]),_:1})]),_:1}),S(j(Tr),null,{default:g(()=>[S(j(Sr),null,{default:g(()=>[x(b(j(p)(`common.cancel`)),1)]),_:1}),S(j(xr),{onClick:w},{default:g(()=>[x(b(j(p)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),S(fa),S(_a,{open:Se.value,"onUpdate:open":r[3]||=e=>Se.value=e,"version-info":C.value},null,8,[`open`,`version-info`]),S(va,{position:`top-center`})]),_:1},8,[`open`]))}}),[[`__scopeId`,`data-v-647bf304`]]),Mo=Ge({history:Ue(),routes:[{path:`/`,name:`overview`,component:()=>$(()=>import(`./OverviewView-D7lWE9IR.js`),__vite__mapDeps([5,6,1,2,3,4,7,8,9,10,11,12,13,14,15]),import.meta.url)},{path:`/buildings`,name:`buildings`,component:()=>$(()=>import(`./BuildingsView-BwpaZTPf.js`),__vite__mapDeps([16,6,1,2,3,4,7,8,9,10,11,17,12,18,15,13]),import.meta.url)},{path:`/research`,name:`research`,component:()=>$(()=>import(`./ResearchView-BoGXU7Gy.js`),__vite__mapDeps([19,6,1,2,3,4,7,8,9,10,11,17,12,20,18,15,21,13]),import.meta.url)},{path:`/shipyard`,name:`shipyard`,component:()=>$(()=>import(`./ShipyardView-DRH89hEQ.js`),__vite__mapDeps([22,6,1,2,3,4,7,8,9,10,11,17,12,20,18,15,21,13]),import.meta.url)},{path:`/defense`,name:`defense`,component:()=>$(()=>import(`./DefenseView-aCDrCjw8.js`),__vite__mapDeps([23,6,1,2,3,4,7,8,9,10,11,17,12,20,18,15,21,13]),import.meta.url)},{path:`/fleet`,name:`fleet`,component:()=>$(()=>import(`./FleetView-BzElc0kX.js`),__vite__mapDeps([24,6,1,2,3,4,7,8,9,10,11,17,12,20,21,13,15,14]),import.meta.url)},{path:`/officers`,name:`officers`,component:()=>$(()=>import(`./OfficersView-CXh701uW.js`),__vite__mapDeps([25,6,1,2,3,4,7,8,9,10,11,12,13,15]),import.meta.url)},{path:`/battle-simulator`,name:`battle-simulator`,component:()=>$(()=>import(`./BattleSimulatorView-BMgbGRUI.js`),__vite__mapDeps([26,6,1,2,3,4,7,8,9,10,11,17,12,27,28,15,13,14]),import.meta.url)},{path:`/messages`,name:`messages`,component:()=>$(()=>import(`./MessagesView-w53RKU-r.js`),__vite__mapDeps([29,6,1,2,3,4,7,8,9,10,11,17,12,27,28,15,13,14]),import.meta.url)},{path:`/galaxy`,name:`galaxy`,component:()=>$(()=>import(`./GalaxyView-LGfalWWd.js`),__vite__mapDeps([30,6,1,2,3,4,7,8,9,10,11,17,12,20,13,31,28]),import.meta.url)},{path:`/diplomacy`,name:`diplomacy`,component:()=>$(()=>import(`./DiplomacyView-BZEvKDfM.js`),__vite__mapDeps([32,6,1,2,3,4,7,8,9,10,11,17,12,20,13,14]),import.meta.url)},{path:`/settings`,name:`settings`,component:()=>$(()=>import(`./SettingsView-CqA4xeYn.js`),__vite__mapDeps([33,6,1,2,3,4,7,8,9,10,11,17,12,13]),import.meta.url)},{path:`/gm`,name:`gm`,component:()=>$(()=>import(`./GMView-BMhV90vD.js`),__vite__mapDeps([34,6,1,2,3,4,7,8,9,10,11,17,12,20,13,35,31,14,15]),import.meta.url)},{path:`/:pathMatch(.*)*`,name:`not-found`,component:()=>$(()=>import(`./NotFoundView-BqreQe6E.js`),__vite__mapDeps([36,6,1,2,3,4,7,8,10,11,17,12,20,35]),import.meta.url)}]}),No=Se(jo),Po=Be();Po.use(He),No.use(Po),No.use(Mo),No.mount(`#app`);export{bn as $,Er as A,ur as B,Lr as C,kr as D,Ar as E,xr as F,On as G,jn as H,br as I,W as J,En as K,yr as L,wr as M,Cr as N,Or as O,Sr as P,xn as Q,fr as R,Rr as S,jr as T,An as U,or as V,kn as W,wn as X,U as Y,Sn as Z,Ur as _,Jr as a,Vr as b,Kr as c,X as d,V as et,Y as f,K as g,Wr as h,_a as i,Tr as j,Dr as k,Yr as l,q as m,xa as n,Z as o,J as p,Tn as q,ba as r,qr as s,$ as t,Gr as u,G as v,Mr as w,zr as x,Hr as y,dr as z}; \ No newline at end of file diff --git a/docs/assets/index-C1ya9Q3J.css b/docs/assets/index-C1ya9Q3J.css deleted file mode 100644 index 234a057..0000000 --- a/docs/assets/index-C1ya9Q3J.css +++ /dev/null @@ -1,2 +0,0 @@ -/*! 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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-scroll-snap-strictness:proximity;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--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-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial;--tw-text-shadow-color:initial;--tw-text-shadow-alpha:100%;--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-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:#fef2f2;--color-red-100:#ffe2e2;--color-red-200:#ffcaca;--color-red-300:#ffa3a3;--color-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-red-800:#9f0712;--color-red-900:#82181a;--color-red-950:#460809;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#ffd7a8;--color-orange-300:#ffb96d;--color-orange-400:#ff8b1a;--color-orange-500:#fe6e00;--color-orange-600:#f05100;--color-orange-700:#c53c00;--color-orange-800:#9f2d00;--color-orange-900:#7e2a0c;--color-orange-950:#441306;--color-amber-50:#fffbeb;--color-amber-100:#fef3c6;--color-amber-200:#fee685;--color-amber-300:#ffd236;--color-amber-400:#fcbb00;--color-amber-500:#f99c00;--color-amber-600:#dd7400;--color-amber-700:#b75000;--color-amber-800:#953d00;--color-amber-900:#7b3306;--color-amber-950:#461901;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c2;--color-yellow-200:#fff085;--color-yellow-300:#ffe02a;--color-yellow-400:#fac800;--color-yellow-500:#edb200;--color-yellow-600:#cd8900;--color-yellow-700:#a36100;--color-yellow-800:#874b00;--color-yellow-900:#733e0a;--color-yellow-950:#432004;--color-lime-50:#f7fee7;--color-lime-100:#ecfcca;--color-lime-200:#d8f999;--color-lime-300:#bbf451;--color-lime-400:#9de500;--color-lime-500:#80cd00;--color-lime-600:#62a400;--color-lime-700:#4b7d00;--color-lime-800:#3d6300;--color-lime-900:#35530e;--color-lime-950:#192e03;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#b9f8cf;--color-green-300:#7bf1a8;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-green-800:#016630;--color-green-900:#0d542b;--color-green-950:#032e15;--color-emerald-50:#ecfdf5;--color-emerald-100:#d0fae5;--color-emerald-200:#a4f4cf;--color-emerald-300:#5ee9b5;--color-emerald-400:#00d294;--color-emerald-500:#00bb7f;--color-emerald-600:#009767;--color-emerald-700:#007956;--color-emerald-800:#005f46;--color-emerald-900:#004e3b;--color-emerald-950:#002c22;--color-teal-50:#f0fdfa;--color-teal-100:#cbfbf1;--color-teal-200:#96f7e4;--color-teal-300:#46ecd5;--color-teal-400:#00d3bd;--color-teal-500:#00baa7;--color-teal-600:#009588;--color-teal-700:#00776e;--color-teal-800:#005f5a;--color-teal-900:#0b4f4a;--color-teal-950:#022f2e;--color-cyan-50:#ecfeff;--color-cyan-100:#cefafe;--color-cyan-200:#a2f4fd;--color-cyan-300:#53eafd;--color-cyan-400:#00d2ef;--color-cyan-500:#00b7d7;--color-cyan-600:#0092b5;--color-cyan-700:#007492;--color-cyan-800:#005f78;--color-cyan-900:#104e64;--color-cyan-950:#053345;--color-sky-50:#f0f9ff;--color-sky-100:#dff2fe;--color-sky-200:#b8e6fe;--color-sky-300:#77d4ff;--color-sky-400:#00bcfe;--color-sky-500:#00a5ef;--color-sky-600:#0084cc;--color-sky-700:#0069a4;--color-sky-800:#005986;--color-sky-900:#024a70;--color-sky-950:#052f4a;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-300:#90c5ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-800:#193cb8;--color-blue-900:#1c398e;--color-blue-950:#162456;--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-200:#c7d2ff;--color-indigo-300:#a4b3ff;--color-indigo-400:#7d87ff;--color-indigo-500:#625fff;--color-indigo-600:#4f39f6;--color-indigo-700:#432dd7;--color-indigo-800:#372aac;--color-indigo-900:#312c85;--color-indigo-950:#1e1a4d;--color-violet-50:#f5f3ff;--color-violet-100:#ede9fe;--color-violet-200:#ddd6ff;--color-violet-300:#c4b4ff;--color-violet-400:#a685ff;--color-violet-500:#8d54ff;--color-violet-600:#7f22fe;--color-violet-700:#7008e7;--color-violet-800:#5d0ec0;--color-violet-900:#4d179a;--color-violet-950:#2f0d68;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d9b3ff;--color-purple-400:#c07eff;--color-purple-500:#ac4bff;--color-purple-600:#9810fa;--color-purple-700:#8200da;--color-purple-800:#6e11b0;--color-purple-900:#59168b;--color-purple-950:#3c0366;--color-fuchsia-50:#fdf4ff;--color-fuchsia-100:#fae8ff;--color-fuchsia-200:#f6cfff;--color-fuchsia-300:#f2a9ff;--color-fuchsia-400:#ec6cff;--color-fuchsia-500:#e12afb;--color-fuchsia-600:#c600db;--color-fuchsia-700:#a600b5;--color-fuchsia-800:#8a0194;--color-fuchsia-900:#721378;--color-fuchsia-950:#4b004f;--color-pink-50:#fdf2f8;--color-pink-100:#fce7f3;--color-pink-200:#fccee8;--color-pink-300:#fda5d5;--color-pink-400:#fb64b6;--color-pink-500:#f6339a;--color-pink-600:#e30076;--color-pink-700:#c4005c;--color-pink-800:#a2004c;--color-pink-900:#861043;--color-pink-950:#510424;--color-rose-50:#fff1f2;--color-rose-100:#ffe4e6;--color-rose-200:#ffccd3;--color-rose-300:#ffa2ae;--color-rose-400:#ff667f;--color-rose-500:#ff2357;--color-rose-600:#e70044;--color-rose-700:#c20039;--color-rose-800:#a30037;--color-rose-900:#8b0836;--color-rose-950:#4d0218;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cad5e2;--color-slate-400:#90a1b9;--color-slate-500:#62748e;--color-slate-600:#45556c;--color-slate-700:#314158;--color-slate-800:#1d293d;--color-slate-900:#0f172b;--color-slate-950:#020618;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-gray-900:#101828;--color-gray-950:#030712;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#9f9fa9;--color-zinc-500:#71717b;--color-zinc-600:#52525c;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-zinc-900:#18181b;--color-zinc-950:#09090b;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a6a09b;--color-stone-500:#79716b;--color-stone-600:#57534d;--color-stone-700:#44403b;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--container-3xs:16rem;--container-2xs:18rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--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);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--radius-xs:.125rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem;--shadow-2xs:0 1px #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--inset-shadow-2xs:inset 0 1px #0000000d;--inset-shadow-xs:inset 0 1px 1px #0000000d;--inset-shadow-sm:inset 0 2px 4px #0000000d;--drop-shadow-xs:0 1px 1px #0000000d;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-md:0 3px 3px #0000001f;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--drop-shadow-2xl:0 25px 25px #00000026;--text-shadow-2xs:0px 1px 0px #00000026;--text-shadow-xs:0px 1px 1px #0003;--text-shadow-sm:0px 1px 0px #00000013,0px 1px 1px #00000013,0px 2px 2px #00000013;--text-shadow-md:0px 1px 1px #0000001a,0px 1px 2px #0000001a,0px 2px 4px #0000001a;--text-shadow-lg:0px 1px 2px #0000001a,0px 3px 2px #0000001a,0px 4px 8px #0000001a;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--aspect-video:16/9;--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);--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-50:lab(96.5005% 4.18511 1.52329);--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-300:lab(76.5514% 36.4219 15.5335);--color-red-400:lab(63.7053% 60.7449 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-red-900:lab(28.5139% 44.5539 29.0463);--color-red-950:lab(13.003% 29.04 16.7519);--color-orange-50:lab(97.7008% 1.53738 5.90646);--color-orange-100:lab(94.7127% 3.58391 14.3151);--color-orange-200:lab(88.4871% 9.94918 28.8378);--color-orange-300:lab(80.8059% 21.7313 50.4455);--color-orange-400:lab(70.0429% 42.5156 75.8207);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-orange-600:lab(57.1026% 64.2584 89.8886);--color-orange-700:lab(46.4615% 57.7275 70.8507);--color-orange-800:lab(37.1566% 46.6433 50.5562);--color-orange-900:lab(30.2951% 36.0434 37.671);--color-orange-950:lab(14.1747% 23.4515 19.4461);--color-amber-50:lab(98.6252% -.635982 8.42309);--color-amber-100:lab(95.916% -1.2165 23.111);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-300:lab(86.4156% 6.13147 78.3961);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-600:lab(60.3514% 40.5624 87.1228);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-800:lab(37.8823% 37.1699 52.2718);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-50:lab(98.6846% -1.79058 9.77662);--color-yellow-100:lab(97.3564% -4.51407 27.344);--color-yellow-200:lab(94.3433% -5.00426 52.9663);--color-yellow-300:lab(89.7033% -.480324 84.4917);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-500:lab(76.3898% 14.5258 98.4589);--color-yellow-600:lab(62.7799% 22.4198 86.1544);--color-yellow-700:lab(47.8202% 25.2426 66.5015);--color-yellow-800:lab(38.7484% 23.5833 51.4916);--color-yellow-900:lab(32.3865% 21.1274 38.5958);--color-yellow-950:lab(16.8146% 15.7422 23.1133);--color-lime-50:lab(98.7039% -5.32568 10.2149);--color-lime-100:lab(96.8662% -11.7133 22.0854);--color-lime-200:lab(94.0718% -22.5338 42.5238);--color-lime-300:lab(89.9218% -35.6546 68.5254);--color-lime-400:lab(83.7876% -45.0447 88.4738);--color-lime-500:lab(75.3197% -46.6547 86.1778);--color-lime-600:lab(61.1055% -41.0235 73.1483);--color-lime-700:lab(47.246% -32.2589 55.8249);--color-lime-800:lab(37.7655% -25.1694 43.0683);--color-lime-900:lab(31.9931% -20.7655 33.7379);--color-lime-950:lab(16.5113% -15.1841 22.0145);--color-green-50:lab(98.1563% -5.60117 2.75913);--color-green-100:lab(96.186% -13.8464 6.52362);--color-green-200:lab(92.4222% -26.4702 12.9427);--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-800:lab(37.4616% -36.7971 22.9692);--color-green-900:lab(30.797% -29.6927 17.382);--color-green-950:lab(15.6845% -20.4225 11.7249);--color-emerald-50:lab(97.8462% -6.94963 1.85487);--color-emerald-100:lab(94.9004% -17.0769 5.63836);--color-emerald-200:lab(90.2247% -31.039 9.47084);--color-emerald-300:lab(83.9203% -48.7124 13.8849);--color-emerald-400:lab(75.0771% -60.7313 19.4146);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-emerald-700:lab(44.4871% -41.0396 11.0361);--color-emerald-800:lab(35.3675% -33.1188 8.04002);--color-emerald-900:lab(28.8637% -26.9249 5.45986);--color-emerald-950:lab(15.0582% -17.9507 2.38369);--color-teal-50:lab(98.3189% -4.74921 -.111723);--color-teal-100:lab(95.1845% -17.4212 -.425434);--color-teal-200:lab(90.7612% -33.1343 -.542295);--color-teal-300:lab(84.8977% -48.1517 -1.3321);--color-teal-400:lab(76.0109% -53.3483 -2.27907);--color-teal-500:lab(67.3859% -49.0983 -2.63511);--color-teal-600:lab(55.0223% -41.0774 -3.90277);--color-teal-700:lab(44.4134% -33.1436 -4.22149);--color-teal-800:lab(35.5975% -26.6648 -4.34487);--color-teal-900:lab(29.506% -21.4706 -3.59886);--color-teal-950:lab(16.6371% -15.3183 -3.81732);--color-cyan-50:lab(98.3303% -5.97429 -2.62109);--color-cyan-100:lab(95.3146% -13.8285 -6.84733);--color-cyan-200:lab(91.0821% -24.0435 -12.8306);--color-cyan-300:lab(85.3886% -36.7635 -21.5717);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-cyan-500:lab(67.805% -35.3952 -30.2018);--color-cyan-600:lab(55.1767% -26.7496 -30.5138);--color-cyan-700:lab(44.7267% -21.5987 -26.118);--color-cyan-800:lab(36.5114% -17.1989 -21.6292);--color-cyan-900:lab(30.372% -13.1853 -18.7887);--color-cyan-950:lab(19.1528% -9.68759 -15.5267);--color-sky-50:lab(97.3623% -2.33799 -4.13098);--color-sky-100:lab(94.3709% -4.56053 -8.23453);--color-sky-200:lab(88.6983% -11.3978 -16.8488);--color-sky-300:lab(80.3307% -20.2945 -31.385);--color-sky-400:lab(70.687% -23.6078 -45.9483);--color-sky-500:lab(63.3038% -18.433 -51.0407);--color-sky-600:lab(51.7754% -11.4713 -49.8349);--color-sky-700:lab(41.6013% -9.10804 -42.5648);--color-sky-800:lab(35.164% -9.57689 -34.4068);--color-sky-900:lab(29.1959% -8.34689 -28.2453);--color-sky-950:lab(17.8299% -5.31271 -21.1584);--color-blue-50:lab(96.492% -1.14647 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--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-800:lab(30.2514% 27.7854 -70.2699);--color-blue-900:lab(26.1542% 15.7545 -51.5504);--color-blue-950:lab(15.6723% 8.86233 -32.2945);--color-indigo-50:lab(95.4818% .411302 -6.78529);--color-indigo-100:lab(91.6577% 1.04591 -12.7199);--color-indigo-200:lab(84.4329% 3.18974 -23.9688);--color-indigo-300:lab(74.0235% 8.54138 -41.6075);--color-indigo-400:lab(59.866% 22.4833 -64.4485);--color-indigo-500:lab(48.295% 38.3129 -81.9673);--color-indigo-600:lab(38.4009% 52.6132 -92.3857);--color-indigo-700:lab(32.4486% 49.2217 -84.6695);--color-indigo-800:lab(26.6645% 37.9804 -68.6402);--color-indigo-900:lab(23.3911% 24.6978 -50.4719);--color-indigo-950:lab(12.4853% 14.9672 -31.3418);--color-violet-50:lab(96.2416% 2.28846 -5.51655);--color-violet-100:lab(93.0838% 4.35197 -9.88284);--color-violet-200:lab(87.0888% 8.53691 -19.4189);--color-violet-300:lab(76.7419% 18.391 -37.0706);--color-violet-400:lab(62.8239% 34.9159 -60.0512);--color-violet-500:lab(49.9355% 55.1777 -81.8963);--color-violet-600:lab(41.088% 68.9966 -91.995);--color-violet-700:lab(35.2783% 67.9912 -88.793);--color-violet-800:lab(29.3188% 57.7986 -76.1493);--color-violet-900:lab(24.3783% 45.7525 -61.4902);--color-violet-950:lab(14.0707% 33.3353 -46.7553);--color-purple-50:lab(97.1626% 2.99937 -4.13398);--color-purple-100:lab(93.3333% 6.9744 -9.83434);--color-purple-200:lab(87.8405% 13.4282 -18.7159);--color-purple-300:lab(78.3298% 26.2195 -34.9499);--color-purple-400:lab(63.6946% 47.6127 -59.2066);--color-purple-500:lab(52.0183% 66.11 -78.2316);--color-purple-600:lab(43.0295% 75.21 -86.5669);--color-purple-700:lab(36.1758% 69.8525 -80.0381);--color-purple-800:lab(30.6017% 56.7637 -64.4751);--color-purple-900:lab(24.9401% 45.2703 -51.2728);--color-purple-950:lab(14.8253% 38.9005 -44.5861);--color-fuchsia-50:lab(97.1083% 4.46236 -4.09335);--color-fuchsia-100:lab(93.9419% 9.5765 -9.08735);--color-fuchsia-200:lab(87.7108% 19.9958 -18.2054);--color-fuchsia-300:lab(78.5378% 39.3533 -32.9615);--color-fuchsia-400:lab(66.1178% 66.0652 -52.4733);--color-fuchsia-500:lab(56.4256% 83.132 -64.639);--color-fuchsia-600:lab(47.5131% 83.4271 -63.0363);--color-fuchsia-700:lab(39.787% 72.2653 -53.1244);--color-fuchsia-800:lab(32.904% 60.2883 -43.6569);--color-fuchsia-900:lab(27.755% 48.6174 -34.3553);--color-fuchsia-950:lab(15.7348% 39.0235 -27.4073);--color-pink-50:lab(96.4459% 4.53997 -1.49434);--color-pink-100:lab(93.5864% 9.01193 -3.15077);--color-pink-200:lab(87.4504% 19.6 -6.46662);--color-pink-300:lab(77.8308% 38.525 -10.5394);--color-pink-400:lab(64.5597% 64.3615 -12.7988);--color-pink-500:lab(56.9303% 76.8162 -8.07021);--color-pink-600:lab(49.5493% 79.8381 2.31769);--color-pink-700:lab(42.1737% 71.8009 7.42233);--color-pink-800:lab(34.9559% 60.2885 5.99639);--color-pink-900:lab(29.4367% 49.3962 3.35757);--color-pink-950:lab(15.6116% 35.2166 3.53979);--color-rose-50:lab(96.2369% 4.94152 1.28012);--color-rose-100:lab(92.8221% 9.86832 2.60077);--color-rose-200:lab(86.806% 19.1909 4.07754);--color-rose-300:lab(76.6339% 38.3549 9.68834);--color-rose-400:lab(64.4124% 63.0291 19.2068);--color-rose-500:lab(56.101% 79.4329 31.4532);--color-rose-600:lab(49.1882% 81.577 36.0311);--color-rose-700:lab(41.1651% 71.6251 30.3087);--color-rose-800:lab(34.6481% 60.802 20.1957);--color-rose-900:lab(29.7104% 51.514 12.6253);--color-rose-950:lab(14.2323% 34.0086 9.80922);--color-slate-50:lab(98.1434% -.369549 -1.05968);--color-slate-100:lab(96.286% -.852466 -2.46847);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-300:lab(84.7652% -1.94535 -7.93337);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-slate-700:lab(26.9569% -1.47018 -15.6993);--color-slate-800:lab(16.132% -.318021 -14.6672);--color-slate-900:lab(7.78673% 1.82346 -15.0537);--color-slate-950:lab(1.76974% 1.32743 -9.28855);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.082314 -1.13575);--color-gray-200:lab(91.6229% -.159085 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17474);--color-gray-500:lab(47.7841% -.393212 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533);--color-gray-900:lab(8.11897% .811279 -12.254);--color-gray-950:lab(1.90334% .278696 -5.48866);--color-zinc-50:lab(98.26% 0 0);--color-zinc-100:lab(96.1634% .0993013 -.364029);--color-zinc-200:lab(90.6853% .399202 -1.45452);--color-zinc-300:lab(84.9837% .601262 -2.17985);--color-zinc-400:lab(65.6464% 1.53494 -5.42429);--color-zinc-500:lab(47.8878% 1.65477 -5.77283);--color-zinc-600:lab(35.1166% 1.7821 -6.1173);--color-zinc-700:lab(26.8019% 1.35386 -4.68303);--color-zinc-800:lab(15.7305% .613749 -2.16959);--color-zinc-900:lab(8.30603% .618212 -2.16573);--color-zinc-950:lab(2.51107% .242703 -.886115);--color-neutral-50:lab(98.26% 0 0);--color-neutral-100:lab(96.52% -.0000596046 0);--color-neutral-200:lab(90.952% -.0000596046 0);--color-neutral-300:lab(84.92% 0 0);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-600:lab(34.924% 0 0);--color-neutral-700:lab(27.036% 0 0);--color-neutral-800:lab(15.204% 0 0);--color-neutral-900:lab(7.78201% -.0000149012 0);--color-neutral-950:lab(2.75381% 0 0);--color-stone-50:lab(98.2686% -.0991821 .364304);--color-stone-100:lab(96.5286% -.0991821 .36428);--color-stone-200:lab(91.055% .663072 .865591);--color-stone-300:lab(84.7909% .928015 1.59738);--color-stone-400:lab(66.2166% 1.88047 3.20325);--color-stone-500:lab(48.1164% 2.35698 4.26853);--color-stone-600:lab(35.5168% 1.08606 4.07829);--color-stone-700:lab(27.3812% 1.32917 3.57789);--color-stone-800:lab(15.0353% 1.96067 1.53427);--color-stone-900:lab(9.03835% 1.15297 1.92955);--color-stone-950:lab(2.86037% .455312 .568903)}}}@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}.\@container,.\@container-\[inline-size\]{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.-inset-1{inset:calc(var(--spacing)*-1)}.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{top:calc(var(--spacing)*1)}.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%}.isolate{isolation:isolate}.isolation-auto{isolation:auto}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.order-0,.order-none{order:0}.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}.float-end{float:inline-end}.float-left{float:left}.float-none{float:none}.float-right{float:right}.float-start{float:inline-start}.clear-both{clear:both}.clear-end{clear:inline-end}.clear-left{clear:left}.clear-none{clear:none}.clear-right{clear:right}.clear-start{clear:inline-start}.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}}.container\!{width:100%!important}@media (min-width:40rem){.container\!{max-width:40rem!important}}@media (min-width:48rem){.container\!{max-width:48rem!important}}@media (min-width:64rem){.container\!{max-width:64rem!important}}@media (min-width:80rem){.container\!{max-width:80rem!important}}@media (min-width:96rem){.container\!{max-width:96rem!important}}.m-2{margin:calc(var(--spacing)*2)}.-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{margin-inline:calc(var(--spacing)*3)}.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-\[16px\]{margin-top:16px}.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}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.field-sizing-content{field-sizing:content}.field-sizing-fixed{field-sizing:fixed}.aspect-square{aspect-ratio:1}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.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)}.size-auto{width:auto;height:auto}.h-1{height:calc(var(--spacing)*1)}.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-lh{height:1lh}.h-px{height:1px}.h-screen{height:100vh}.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}.max-h-lh{max-height:1lh}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-auto{min-height:auto}.min-h-lh{min-height:1lh}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing)*0)}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1\/2{width:50%}.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%}.w-screen{width:100vw}.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)}.max-w-none{max-width:none}.max-w-screen{max-width:100vw}.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)}.min-w-auto{min-width:auto}.min-w-screen{min-width:100vw}.flex-1{flex:1}.flex-auto{flex:auto}.flex-initial{flex:0 auto}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.basis-auto{flex-basis:auto}.basis-full{flex-basis:100%}.table-auto{table-layout:auto}.table-fixed{table-layout:fixed}.caption-bottom{caption-side:bottom}.caption-top{caption-side:top}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.origin-\(--reka-popover-content-transform-origin\){transform-origin:var(--reka-popover-content-transform-origin)}.-translate-full{--tw-translate-x:-100%;--tw-translate-y:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-full{--tw-translate-x:100%;--tw-translate-y:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-1{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-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)}.translate-3d{translate:var(--tw-translate-x)var(--tw-translate-y)var(--tw-translate-z)}.translate-none{translate:none}.scale-3d{scale:var(--tw-scale-x)var(--tw-scale-y)var(--tw-scale-z)}.scale-none{scale:none}.rotate-45{rotate:45deg}.rotate-none{rotate:none}.transform,.transform-cpu{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0)var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-none{transform:none}.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-pinch-zoom{--tw-pinch-zoom:pinch-zoom;touch-action:var(--tw-pan-x,)var(--tw-pan-y,)var(--tw-pinch-zoom,)}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.resize-none{resize:none}.resize-x{resize:horizontal}.resize-y{resize:vertical}.snap-none{scroll-snap-type:none}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-proximity{--tw-scroll-snap-strictness:proximity}.snap-align-none{scroll-snap-align:none}.snap-center{scroll-snap-align:center}.snap-end{scroll-snap-align:end}.snap-start{scroll-snap-align:start}.snap-always{scroll-snap-stop:always}.snap-normal{scroll-snap-stop:normal}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.appearance-auto{appearance:auto}.appearance-none{appearance:none}.columns-2{columns:2}.columns-3{columns:3}.columns-4{columns:4}.grid-flow-col{grid-auto-flow:column}.grid-flow-col-dense{grid-auto-flow:column dense}.grid-flow-dense{grid-auto-flow:dense}.grid-flow-row{grid-auto-flow:row}.grid-flow-row-dense{grid-auto-flow:dense}.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-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.place-content-around{place-content:space-around}.place-content-baseline{place-content:baseline start}.place-content-between{place-content:space-between}.place-content-center{place-content:center}.place-content-center-safe{place-content:safe center}.place-content-end{place-content:end}.place-content-end-safe{place-content:safe end}.place-content-evenly{place-content:space-evenly}.place-content-start{place-content:start}.place-content-stretch{place-content:stretch}.place-items-baseline{place-items:baseline}.place-items-center{place-items:center}.place-items-center-safe{place-items:safe center}.place-items-end{place-items:end}.place-items-end-safe{place-items:safe end}.place-items-start{place-items:start}.place-items-stretch{place-items:stretch stretch}.content-around{align-content:space-around}.content-baseline{align-content:baseline}.content-between{align-content:space-between}.content-center{align-content:center}.content-center-safe{align-content:safe center}.content-end{align-content:flex-end}.content-end-safe{align-content:safe flex-end}.content-evenly{align-content:space-evenly}.content-normal{align-content:normal}.content-start{align-content:flex-start}.content-stretch{align-content:stretch}.items-baseline{align-items:baseline}.items-baseline-last{align-items:last baseline}.items-center{align-items:center}.items-center-safe{align-items:safe center}.items-end{align-items:flex-end}.items-end-safe{align-items:safe flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-around{justify-content:space-around}.justify-baseline{justify-content:baseline}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-center-safe{justify-content:safe center}.justify-end{justify-content:flex-end}.justify-end-safe{justify-content:safe flex-end}.justify-evenly{justify-content:space-evenly}.justify-normal{justify-content:normal}.justify-start{justify-content:flex-start}.justify-stretch{justify-content:stretch}.justify-items-center{justify-items:center}.justify-items-center-safe{justify-items:safe center}.justify-items-end{justify-items:end}.justify-items-end-safe{justify-items:safe end}.justify-items-normal{justify-items:normal}.justify-items-start{justify-items:start}.justify-items-stretch{justify-items:stretch}.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>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*0)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*0)*calc(1 - var(--tw-space-y-reverse)))}: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)))}:where(.space-y-reverse>:not(:last-child)){--tw-space-y-reverse:1}:where(.space-x-reverse>:not(:last-child)){--tw-space-x-reverse:1}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px*var(--tw-divide-x-reverse));border-inline-end-width:calc(1px*calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-y-reverse>:not(:last-child)){--tw-divide-y-reverse:1}.place-self-auto{place-self:auto}.place-self-center{place-self:center}.place-self-center-safe{place-self:safe center}.place-self-end{place-self:end}.place-self-end-safe{place-self:safe end}.place-self-start{place-self:start}.place-self-stretch{place-self:stretch stretch}.self-auto{align-self:auto}.self-baseline{align-self:baseline}.self-baseline-last{align-self:last baseline}.self-center{align-self:center}.self-center-safe{align-self:safe center}.self-end{align-self:flex-end}.self-end-safe{align-self:safe flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-auto{justify-self:auto}.justify-self-center{justify-self:center}.justify-self-center-safe{justify-self:safe center}.justify-self-end{justify-self:flex-end}.justify-self-end-safe{justify-self:safe flex-end}.justify-self-start{justify-self:flex-start}.justify-self-stretch{justify-self:stretch}.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}.scroll-auto{scroll-behavior:auto}.scroll-smooth{scroll-behavior:smooth}.\!rounded{border-radius:.25rem!important}.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-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.rounded-ss{border-start-start-radius:.25rem}.rounded-e{border-start-end-radius:.25rem;border-end-end-radius:.25rem}.rounded-se{border-start-end-radius:.25rem}.rounded-ee{border-end-end-radius:.25rem}.rounded-es{border-end-start-radius:.25rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-double{--tw-border-style:double;border-style:double}.border-hidden{--tw-border-style:hidden;border-style:hidden}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.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-\(--my_variable\){background-color:var(--my_variable)}.bg-\(color\:--my-color\){background-color:var(--my-color)}.bg-\[\#0088cc\]{background-color:#08c}.bg-\[color\:var\(--my-color\)\]{background-color:var(--my-color)}.bg-\[var\(--my_variable\)\]{background-color:var(--my_variable)}.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{background-color:var(--color-black)}.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-gray-100{background-color:var(--color-gray-100)}.bg-gray-100\/50{background-color:#f3f4f680}@supports (color:color-mix(in lab, red, red)){.bg-gray-100\/50{background-color:color-mix(in oklab,var(--color-gray-100)50%,transparent)}}.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-red-500{background-color:var(--color-red-500)}.bg-red-500\/50{background-color:#fb2c3680}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/50{background-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.bg-red-500\/\[50\%\]{background-color:#fb2c3680}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/\[50\%\]{background-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.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-conic,.bg-conic{--tw-gradient-position:in oklab;background-image:conic-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-radial{--tw-gradient-position:in oklab;background-image:radial-gradient(var(--tw-gradient-stops))}.bg-none{background-image:none}.via-none{--tw-gradient-via-stops:initial}.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))}.mask-none{-webkit-mask-image:none;mask-image:none}.mask-circle{--tw-mask-radial-shape:circle}.mask-ellipse{--tw-mask-radial-shape:ellipse}.mask-radial-closest-corner{--tw-mask-radial-size:closest-corner}.mask-radial-closest-side{--tw-mask-radial-size:closest-side}.mask-radial-farthest-corner{--tw-mask-radial-size:farthest-corner}.mask-radial-farthest-side{--tw-mask-radial-size:farthest-side}.mask-radial-at-bottom{--tw-mask-radial-position:bottom}.mask-radial-at-bottom-left{--tw-mask-radial-position:bottom left}.mask-radial-at-bottom-right{--tw-mask-radial-position:bottom right}.mask-radial-at-center{--tw-mask-radial-position:center}.mask-radial-at-left{--tw-mask-radial-position:left}.mask-radial-at-right{--tw-mask-radial-position:right}.mask-radial-at-top{--tw-mask-radial-position:top}.mask-radial-at-top-left{--tw-mask-radial-position:top left}.mask-radial-at-top-right{--tw-mask-radial-position:top right}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.box-decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.decoration-slice{-webkit-box-decoration-break:slice;box-decoration-break:slice}.bg-auto{background-size:auto}.bg-contain{background-size:contain}.bg-cover{background-size:cover}.bg-fixed{background-attachment:fixed}.bg-local{background-attachment:local}.bg-scroll{background-attachment:scroll}.bg-clip-border{background-clip:border-box}.bg-clip-content{background-clip:content-box}.bg-clip-padding{background-clip:padding-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-bottom{background-position:bottom}.bg-bottom-left{background-position:0 100%}.bg-bottom-right{background-position:100% 100%}.bg-center{background-position:50%}.bg-left{background-position:0}.bg-left-bottom{background-position:0 100%}.bg-left-top{background-position:0 0}.bg-right{background-position:100%}.bg-right-bottom{background-position:100% 100%}.bg-right-top{background-position:100% 0}.bg-top{background-position:top}.bg-top-left{background-position:0 0}.bg-top-right{background-position:100% 0}.bg-no-repeat{background-repeat:no-repeat}.bg-repeat{background-repeat:repeat}.bg-repeat-round{background-repeat:round}.bg-repeat-space{background-repeat:space}.bg-repeat-x{background-repeat:repeat-x}.bg-repeat-y{background-repeat:repeat-y}.bg-origin-border{background-origin:border-box}.bg-origin-content{background-origin:content-box}.bg-origin-padding{background-origin:padding-box}.mask-add{-webkit-mask-composite:source-over;-webkit-mask-composite:source-over;-webkit-mask-composite:source-over;mask-composite:add}.mask-exclude{-webkit-mask-composite:xor;-webkit-mask-composite:xor;-webkit-mask-composite:xor;mask-composite:exclude}.mask-intersect{-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;mask-composite:intersect}.mask-subtract{-webkit-mask-composite:source-out;-webkit-mask-composite:source-out;-webkit-mask-composite:source-out;mask-composite:subtract}.mask-alpha{-webkit-mask-source-type:alpha;-webkit-mask-source-type:alpha;-webkit-mask-source-type:alpha;mask-mode:alpha}.mask-luminance{-webkit-mask-source-type:luminance;-webkit-mask-source-type:luminance;-webkit-mask-source-type:luminance;mask-mode:luminance}.mask-match{-webkit-mask-source-type:auto;-webkit-mask-source-type:auto;-webkit-mask-source-type:auto;mask-mode:match-source}.mask-type-alpha{mask-type:alpha}.mask-type-luminance{mask-type:luminance}.mask-auto{-webkit-mask-size:auto;mask-size:auto}.mask-contain{-webkit-mask-size:contain;mask-size:contain}.mask-cover{-webkit-mask-size:cover;mask-size:cover}.mask-clip-border{-webkit-mask-clip:border-box;mask-clip:border-box}.mask-clip-content{-webkit-mask-clip:content-box;mask-clip:content-box}.mask-clip-fill{-webkit-mask-clip:fill-box;mask-clip:fill-box}.mask-clip-padding{-webkit-mask-clip:padding-box;mask-clip:padding-box}.mask-clip-stroke{-webkit-mask-clip:stroke-box;mask-clip:stroke-box}.mask-clip-view{-webkit-mask-clip:view-box;mask-clip:view-box}.mask-no-clip{-webkit-mask-clip:no-clip;mask-clip:no-clip}.mask-bottom{-webkit-mask-position:bottom;mask-position:bottom}.mask-bottom-left{-webkit-mask-position:0 100%;mask-position:0 100%}.mask-bottom-right{-webkit-mask-position:100% 100%;mask-position:100% 100%}.mask-center{-webkit-mask-position:50%;mask-position:50%}.mask-left{-webkit-mask-position:0;mask-position:0}.mask-right{-webkit-mask-position:100%;mask-position:100%}.mask-top{-webkit-mask-position:top;mask-position:top}.mask-top-left{-webkit-mask-position:0 0;mask-position:0 0}.mask-top-right{-webkit-mask-position:100% 0;mask-position:100% 0}.mask-no-repeat{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.mask-repeat-round{-webkit-mask-repeat:round;mask-repeat:round}.mask-repeat-space{-webkit-mask-repeat:space;mask-repeat:space}.mask-repeat-x{-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.mask-repeat-y{-webkit-mask-repeat:repeat-y;mask-repeat:repeat-y}.mask-origin-border{-webkit-mask-origin:border-box;mask-origin:border-box}.mask-origin-content{-webkit-mask-origin:content-box;mask-origin:content-box}.mask-origin-fill{-webkit-mask-origin:fill-box;mask-origin:fill-box}.mask-origin-padding{-webkit-mask-origin:padding-box;mask-origin:padding-box}.mask-origin-stroke{-webkit-mask-origin:stroke-box;mask-origin:stroke-box}.mask-origin-view{-webkit-mask-origin:view-box;mask-origin:view-box}.fill-foreground{fill:var(--foreground)}.fill-none{fill:none}.stroke-none{stroke:none}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-fill{object-fit:fill}.object-none{object-fit:none}.object-scale-down{object-fit:scale-down}.object-left-bottom{object-position:left bottom}.object-left-top{object-position:left top}.object-right-bottom{object-position:right bottom}.object-right-top{object-position:right top}.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{padding-block:calc(var(--spacing)*0)}.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-end{text-align:end}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-baseline{vertical-align:baseline}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.align-sub{vertical-align:sub}.align-super{vertical-align:super}.align-text-bottom{vertical-align:text-bottom}.align-text-top{vertical-align:text-top}.align-top{vertical-align:top}.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}.text-nowrap{text-wrap:nowrap}.text-pretty{text-wrap:pretty}.text-wrap{text-wrap:wrap}.break-normal{overflow-wrap:normal;word-break:normal}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.wrap-break-word{overflow-wrap:break-word}.wrap-normal{overflow-wrap:normal}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.overflow-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.text-ellipsis{text-overflow:ellipsis}.hyphens-auto{-webkit-hyphens:auto;hyphens:auto}.hyphens-manual{-webkit-hyphens:manual;hyphens:manual}.hyphens-none{-webkit-hyphens:none;hyphens:none}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.\[color\:red\]{color:red}.\[color\:red\]\/50{color:#ff000080;color:lab(54.2905% 80.8048 69.8907/.5)}.\[color\:red\]\/50\!{color:#ff000080!important;color:lab(54.2905% 80.8048 69.8907/.5)!important}.text-amber-700{color:var(--color-amber-700)}.text-background{color:var(--background)}.text-blue-500{color:var(--color-blue-500)}.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)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.font-stretch-condensed{font-stretch:75%}.font-stretch-expanded{font-stretch:125%}.font-stretch-extra-condensed{font-stretch:62.5%}.font-stretch-extra-expanded{font-stretch:150%}.font-stretch-normal{font-stretch:100%}.font-stretch-semi-condensed{font-stretch:87.5%}.font-stretch-semi-expanded{font-stretch:112.5%}.font-stretch-ultra-condensed{font-stretch:50%}.font-stretch-ultra-expanded{font-stretch:200%}.diagonal-fractions{--tw-numeric-fraction:diagonal-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.stacked-fractions{--tw-numeric-fraction:stacked-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.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,)}.normal-nums{font-variant-numeric:normal}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.decoration-dashed{text-decoration-style:dashed}.decoration-dotted{text-decoration-style:dotted}.decoration-double{text-decoration-style:double}.decoration-solid{text-decoration-style:solid}.decoration-wavy{text-decoration-style:wavy}.decoration-auto{text-decoration-thickness:auto}.decoration-from-font{text-decoration-thickness:from-font}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.accent-auto{accent-color:auto}.scheme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.scheme-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.scheme-light-dark{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){.scheme-light-dark{--lightningcss-light: ;--lightningcss-dark:initial}}.scheme-normal{color-scheme:normal}.scheme-only-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only}.scheme-only-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.mix-blend-plus-darker{mix-blend-mode:plus-darker}.mix-blend-plus-lighter{mix-blend-mode:plus-lighter}.shadow{--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-\[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{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + 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)}.inset-ring{--tw-inset-ring-shadow:inset 0 0 0 1px var(--tw-inset-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)}.shadow-initial{--tw-shadow-color:initial}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.inset-shadow-initial{--tw-inset-shadow-color:initial}.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}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);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,)}.drop-shadow-none{--tw-drop-shadow: ;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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.invert{--tw-invert:invert(100%);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,)}.sepia{--tw-sepia:sepia(100%);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,)}.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,)}.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,)!important}.backdrop-blur{--tw-backdrop-blur:blur(8px);-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-\[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,)}.backdrop-grayscale{--tw-backdrop-grayscale:grayscale(100%);-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-invert{--tw-backdrop-invert:invert(100%);-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-sepia{--tw-backdrop-sepia:sepia(100%);-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-filter{-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))}.transition-discrete{transition-behavior:allow-discrete}.transition-normal{transition-behavior:normal}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.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}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.will-change-auto{will-change:auto}.will-change-contents{will-change:contents}.will-change-scroll{will-change:scroll-position}.will-change-transform{will-change:transform}.contain-inline-size{--tw-contain-size:inline-size;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-paint{--tw-contain-paint:paint;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-size{--tw-contain-size:size;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-style{--tw-contain-style:style;contain:var(--tw-contain-size,)var(--tw-contain-layout,)var(--tw-contain-paint,)var(--tw-contain-style,)}.contain-content{contain:content}.contain-none{contain:none}.contain-strict{contain:strict}.content-none{--tw-content:none;content:none}.forced-color-adjust-auto{forced-color-adjust:auto}.forced-color-adjust-none{forced-color-adjust:none}.fade-in-0{--tw-enter-opacity:0}.outline-dashed{--tw-outline-style:dashed;outline-style:dashed}.outline-dotted{--tw-outline-style:dotted;outline-style:dotted}.outline-double{--tw-outline-style:double;outline-style:double}.outline-none{--tw-outline-style:none;outline-style:none}.outline-solid{--tw-outline-style:solid;outline-style:solid}.repeat-1{--tw-animation-iteration-count:1;animation-iteration-count:1}.repeat-2{--tw-animation-iteration-count:2;animation-iteration-count:2}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.backface-hidden{backface-visibility:hidden}.backface-visible{backface-visibility:visible}:where(.divide-x-reverse>:not(:last-child)){--tw-divide-x-reverse:1}.duration-initial{--tw-duration:initial}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.ring-inset{--tw-ring-inset:inset}.running{animation-play-state:running}.text-shadow-initial{--tw-text-shadow-color:initial}.transform-3d{transform-style:preserve-3d}.transform-border{transform-box:border-box}.transform-content{transform-box:content-box}.transform-fill{transform-box:fill-box}.transform-flat{transform-style:flat}.transform-stroke{transform-box:stroke-box}.transform-view{transform-box:view-box}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}.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)}}.hover\:dark\:\!bg-gray-100:hover:is(.dark *){background-color:var(--color-gray-100)!important}.hover\:dark\:bg-gray-100:hover:is(.dark *){background-color:var(--color-gray-100)}}.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-]){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)}.\[\&_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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@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-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}@property --tw-text-shadow-color{syntax:"*";inherits:false}@property --tw-text-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@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-06b59069]{scroll-behavior:smooth} diff --git a/docs/assets/index-CZ4UHUCa.css b/docs/assets/index-CZ4UHUCa.css deleted file mode 100644 index 9991403..0000000 --- a/docs/assets/index-CZ4UHUCa.css +++ /dev/null @@ -1,2 +0,0 @@ -/*! 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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--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-tracking: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-100:#ffe2e2;--color-red-300:#ffa3a3;--color-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-700:#bf000f;--color-red-950:#460809;--color-orange-400:#ff8b1a;--color-orange-500:#fe6e00;--color-orange-600:#f05100;--color-amber-50:#fffbeb;--color-amber-300:#ffd236;--color-amber-400:#fcbb00;--color-amber-700:#b75000;--color-amber-950:#461901;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c2;--color-yellow-400:#fac800;--color-yellow-500:#edb200;--color-yellow-600:#cd8900;--color-yellow-950:#432004;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--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-cyan-600:#0092b5;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--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-400:#7d87ff;--color-indigo-600:#4f39f6;--color-indigo-900:#312c85;--color-purple-400:#c07eff;--color-purple-600:#9810fa;--color-slate-400:#90a1b9;--color-slate-600:#45556c;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--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);--text-8xl:6rem;--text-8xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--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-100:lab(92.243% 10.2865 3.83865);--color-red-300:lab(76.5514% 36.4219 15.5335);--color-red-400:lab(63.7053% 60.7449 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--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-400:lab(70.0429% 42.5156 75.8207);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-orange-600:lab(57.1026% 64.2584 89.8886);--color-amber-50:lab(98.6252% -.635982 8.42309);--color-amber-300:lab(86.4156% 6.13147 78.3961);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-50:lab(98.6846% -1.79058 9.77662);--color-yellow-100:lab(97.3564% -4.51407 27.344);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-500:lab(76.3898% 14.5258 98.4589);--color-yellow-600:lab(62.7799% 22.4198 86.1544);--color-yellow-950:lab(16.8146% 15.7422 23.1133);--color-green-50:lab(98.1563% -5.60117 2.75913);--color-green-100:lab(96.186% -13.8464 6.52362);--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-cyan-600:lab(55.1767% -26.7496 -30.5138);--color-blue-50:lab(96.492% -1.14647 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--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-400:lab(59.866% 22.4833 -64.4485);--color-indigo-600:lab(38.4009% 52.6132 -92.3857);--color-indigo-900:lab(23.3911% 24.6978 -50.4719);--color-purple-400:lab(63.6946% 47.6127 -59.2066);--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-100:lab(96.1596% -.082314 -1.13575);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17474);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533);--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}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.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%}.top-\[60px\]{top:60px}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-1\/2{right:50%}.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-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.isolation-auto{isolation:auto}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.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-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-8{margin-block:calc(var(--spacing)*8)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.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-6{margin-top:calc(var(--spacing)*6)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.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)}.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}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.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)}.size-full{width:100%;height:100%}.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-6{height:calc(var(--spacing)*6)}.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-\[65px\]{height:65px}.h-\[85px\]{height:85px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.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-80{max-height:calc(var(--spacing)*80)}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[60vh\]{min-height:60vh}.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-2\.5{width:calc(var(--spacing)*2.5)}.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-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-20{width:calc(var(--spacing)*20)}.w-48{width:calc(var(--spacing)*48)}.w-72{width:calc(var(--spacing)*72)}.w-\[calc\(100vw-3rem\)\]{width:calc(100vw - 3rem)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.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)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.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-\[60px\]{min-width:60px}.min-w-\[var\(--reka-select-trigger-width\)\]{min-width:var(--reka-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.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-2{--tw-translate-y:calc(var(--spacing)*-2);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing)*0);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)}.translate-none{translate:none}.scale-3d{scale:var(--tw-scale-x)var(--tw-scale-y)var(--tw-scale-z)}.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-pinch-zoom{--tw-pinch-zoom:pinch-zoom;touch-action:var(--tw-pan-x,)var(--tw-pan-y,)var(--tw-pinch-zoom,)}.touch-manipulation{touch-action:manipulation}.touch-none{touch-action:none}.resize{resize:both}.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-cols-4{grid-template-columns:repeat(4,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-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.items-center{align-items:center}.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-2\.5{gap:calc(var(--spacing)*2.5)}.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)))}:where(.space-y-reverse>:not(:last-child)){--tw-space-y-reverse:1}:where(.space-x-reverse>:not(:last-child)){--tw-space-x-reverse:1}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px*var(--tw-divide-x-reverse));border-inline-end-width:calc(1px*calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-y-reverse>:not(:last-child)){--tw-divide-y-reverse:1}.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-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.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-s{border-start-start-radius:.25rem;border-end-start-radius:.25rem}.rounded-ss{border-start-start-radius:.25rem}.rounded-e{border-start-end-radius:.25rem;border-end-end-radius:.25rem}.rounded-se{border-start-end-radius:.25rem}.rounded-ee{border-end-end-radius:.25rem}.rounded-es{border-end-start-radius:.25rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-br{border-bottom-right-radius:.25rem}.rounded-bl{border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-300{border-color:var(--color-amber-300)}.border-background{border-color:var(--background)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-400{border-color:var(--color-blue-400)}.border-border{border-color:var(--border)}.border-destructive,.border-destructive\/20{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/20{border-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.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-gray-300{border-color:var(--color-gray-300)}.border-green-300{border-color:var(--color-green-300)}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-red-300{border-color:var(--color-red-300)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-yellow-400{border-color:var(--color-yellow-400)}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.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\/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-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive,.bg-destructive\/5{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/5{background-color:color-mix(in oklab,var(--destructive)5%,transparent)}}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.bg-foreground{background-color:var(--foreground)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.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-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.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-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-100{background-color:var(--color-yellow-100)}.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))}.bg-repeat{background-repeat:repeat}.mask-no-clip{-webkit-mask-clip:no-clip;mask-clip:no-clip}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.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)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.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{padding-block:calc(var(--spacing)*0)}.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-2\.5{padding-block:calc(var(--spacing)*2.5)}.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-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-\[60px\]{padding-top:60px}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.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-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--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-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.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}.text-\[11px\]{font-size:11px}.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)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.text-wrap{text-wrap:wrap}.text-clip{text-overflow:clip}.text-ellipsis{text-overflow:ellipsis}.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-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-cyan-600{color:var(--color-cyan-600)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground{color:var(--foreground)}.text-gray-600{color:var(--color-gray-600)}.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-indigo-600{color:var(--color-indigo-600)}.text-muted-foreground,.text-muted-foreground\/20{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/20{color:color-mix(in oklab,var(--muted-foreground)20%,transparent)}}.text-orange-600{color:var(--color-orange-600)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-600{color:var(--color-purple-600)}.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)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.diagonal-fractions{--tw-numeric-fraction:diagonal-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.stacked-fractions{--tw-numeric-fraction:stacked-fractions;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.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,)}.normal-nums{font-variant-numeric:normal}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--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-\[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-2{--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)}.inset-ring{--tw-inset-ring-shadow:inset 0 0 0 1px var(--tw-inset-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)}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-yellow-400{--tw-ring-color:var(--color-yellow-400)}.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}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a))drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a)drop-shadow(0 1px 1px #0000000f);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,)}.invert{--tw-invert:invert(100%);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,)}.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,)}.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,)!important}.backdrop-blur{--tw-backdrop-blur:blur(8px);-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-\[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,)}.backdrop-grayscale{--tw-backdrop-grayscale:grayscale(100%);-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-invert{--tw-backdrop-invert:invert(100%);-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-sepia{--tw-backdrop-sepia:sepia(100%);-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-filter{-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))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.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}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.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}:where(.divide-x-reverse>:not(:last-child)){--tw-divide-x-reverse:1}.paused{animation-play-state:paused}.ring-inset{--tw-ring-inset:inset}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}.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\]\:absolute:is(:where(.group)[data-collapsible=icon] *){position:absolute}.group-data-\[collapsible\=icon\]\:-top-1:is(:where(.group)[data-collapsible=icon] *){top:calc(var(--spacing)*-1)}.group-data-\[collapsible\=icon\]\:right-0:is(:where(.group)[data-collapsible=icon] *){right:calc(var(--spacing)*0)}.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\]\:h-4:is(:where(.group)[data-collapsible=icon] *){height:calc(var(--spacing)*4)}.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\]\:min-w-4:is(:where(.group)[data-collapsible=icon] *){min-width:calc(var(--spacing)*4)}.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\:border-primary:hover{border-color:var(--primary)}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.hover\:bg-amber-50:hover{background-color:var(--color-amber-50)}.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-foreground:hover{color:var(--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)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.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\=active\]\:border-border[data-state=active]{border-color:var(--border)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.data-\[state\=active\]\:shadow-md[data-state=active]{--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)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.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\:order-1{order:1}.sm\:order-2{order:2}.sm\:col-span-1{grid-column:span 1/span 1}.sm\:col-span-2{grid-column:span 2/span 2}.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\:block{display:block}.sm\:flex{display:flex}.sm\:hidden{display:none}.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\:h-9{height:calc(var(--spacing)*9)}.sm\:w-4{width:calc(var(--spacing)*4)}.sm\:w-auto{width:auto}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-4xl{max-width:var(--container-4xl)}.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\:min-w-\[764px\]{min-width:764px}.sm\:flex-1{flex:1}.sm\:flex-initial{flex:0 auto}.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.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\:py-4{padding-block:calc(var(--spacing)*4)}.sm\:pt-4{padding-top:calc(var(--spacing)*4)}.sm\:pt-6{padding-top:calc(var(--spacing)*6)}.sm\:pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.sm\:pb-4{padding-bottom:calc(var(--spacing)*4)}.sm\:pb-6{padding-bottom: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-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--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\:p-12{padding:calc(var(--spacing)*12)}.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\:left-\[var\(--sidebar-width\)\]{left:var(--sidebar-width)}.lg\:left-\[var\(--sidebar-width-icon\)\]{left:var(--sidebar-width-icon)}.lg\:hidden{display:none}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}.dark\:border-amber-700:is(.dark *){border-color:var(--color-amber-700)}.dark\:border-blue-600:is(.dark *){border-color:var(--color-blue-600)}.dark\:border-blue-700:is(.dark *){border-color:var(--color-blue-700)}.dark\:border-gray-600:is(.dark *){border-color:var(--color-gray-600)}.dark\:border-gray-700:is(.dark *){border-color:var(--color-gray-700)}.dark\:border-green-700:is(.dark *){border-color:var(--color-green-700)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:border-red-700:is(.dark *){border-color:var(--color-red-700)}.dark\:border-yellow-600:is(.dark *){border-color:var(--color-yellow-600)}.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-blue-950\/50:is(.dark *){background-color:#16245680}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/50:is(.dark *){background-color:color-mix(in oklab,var(--color-blue-950)50%,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-800:is(.dark *){background-color:var(--color-gray-800)}.dark\:bg-gray-950:is(.dark *){background-color:var(--color-gray-950)}.dark\:bg-gray-950\/30:is(.dark *){background-color:#0307124d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-gray-950)30%,transparent)}}.dark\:bg-green-600:is(.dark *){background-color:var(--color-green-600)}.dark\:bg-green-950:is(.dark *){background-color:var(--color-green-950)}.dark\:bg-green-950\/30:is(.dark *){background-color:#032e154d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-green-950)30%,transparent)}}.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-600:is(.dark *){background-color:var(--color-red-600)}.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\:bg-red-950\/30:is(.dark *){background-color:#4608094d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-red-950)30%,transparent)}}.dark\:bg-yellow-950\/30:is(.dark *){background-color:#4320044d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-yellow-950\/30:is(.dark *){background-color:color-mix(in oklab,var(--color-yellow-950)30%,transparent)}}.dark\:bg-yellow-950\/50:is(.dark *){background-color:#43200480}@supports (color:color-mix(in lab, red, red)){.dark\:bg-yellow-950\/50:is(.dark *){background-color:color-mix(in oklab,var(--color-yellow-950)50%,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-cyan-400:is(.dark *){color:var(--color-cyan-400)}.dark\:text-gray-300:is(.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:is(.dark *){color:var(--color-gray-400)}.dark\:text-green-300:is(.dark *){color:var(--color-green-300)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-indigo-400:is(.dark *){color:var(--color-indigo-400)}.dark\:text-orange-400:is(.dark *){color:var(--color-orange-400)}.dark\:text-purple-400:is(.dark *){color:var(--color-purple-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)}.dark\:ring-yellow-500:is(.dark *){--tw-ring-color:var(--color-yellow-500)}@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-amber-950\/30:is(.dark *):hover{background-color:#4619014d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-950\/30:is(.dark *):hover{background-color:color-mix(in oklab,var(--color-amber-950)30%,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)}}.dark\:data-\[state\=active\]\:border-border:is(.dark *)[data-state=active]{border-color:var(--border)}.dark\:data-\[state\=active\]\:bg-background:is(.dark *)[data-state=active]{background-color:var(--background)}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=active\]\:shadow-lg:is(.dark *)[data-state=active]{--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)}.\[\&_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-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_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)}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>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:#f1eee9;--foreground:#322d22;--card:#f7f5f1;--card-foreground:#322d22;--popover:#f7f5f1;--popover-foreground:#322d22;--primary:#2c3d49;--primary-foreground:#faf8f5;--secondary:#e8e4dd;--secondary-foreground:#322d22;--muted:#e8e4dd;--muted-foreground:#686357;--accent:#e8e4dd;--accent-foreground:#322d22;--destructive:#a83634;--destructive-foreground:#faf8f5;--border:#d4d0c8;--input:#d4d0c8;--ring:#90a1b9;--chart-1:#f05100;--chart-2:#009588;--chart-3:#104e64;--chart-4:#fcbb00;--chart-5:#f99c00;--sidebar:#f4f1ed;--sidebar-foreground:#322d22;--sidebar-primary:#2c3d49;--sidebar-primary-foreground:#faf8f5;--sidebar-accent:#e8e4dd;--sidebar-accent-foreground:#322d22;--sidebar-border:#d4d0c8;--sidebar-ring:#90a1b9}@supports (color:lab(0% 0 0)){:root{--background:lab(94.2323% .225008 3.04775);--foreground:lab(18.8618% .892401 7.89354);--card:lab(96.5445% .164777 2.28328);--card-foreground:lab(18.8618% .892401 7.89354);--popover:lab(96.5445% .164777 2.28328);--popover-foreground:lab(18.8618% .892401 7.89354);--primary:lab(24.6171% -4.29076 -9.62854);--primary-foreground:lab(97.7005% .135839 1.90167);--secondary:lab(90.76% .288427 3.81444);--secondary-foreground:lab(18.8618% .892401 7.89354);--muted:lab(90.76% .288427 3.81444);--muted-foreground:lab(42.0703% .744164 7.75418);--accent:lab(90.76% .288427 3.81444);--accent-foreground:lab(18.8618% .892401 7.89354);--destructive:lab(40.499% 47.3146 28.368);--destructive-foreground:lab(97.7005% .135839 1.90167);--border:lab(83.8074% .356913 4.58459);--input:lab(83.8074% .356913 4.58459);--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(95.3845% .164986 2.28332);--sidebar-foreground:lab(18.8618% .892401 7.89354);--sidebar-primary:lab(24.6171% -4.29076 -9.62854);--sidebar-primary-foreground:lab(97.7005% .135839 1.90167);--sidebar-accent:lab(90.76% .288427 3.81444);--sidebar-accent-foreground:lab(18.8618% .892401 7.89354);--sidebar-border:lab(83.8074% .356913 4.58459);--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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@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-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@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-tracking{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))}}[data-v-1e57bb70] .prose{color:hsl(var(--foreground))}[data-v-1e57bb70] .prose h1{margin-top:1em;margin-bottom:.5em;font-size:1.5em;font-weight:700}[data-v-1e57bb70] .prose h2{margin-top:.8em;margin-bottom:.4em;font-size:1.25em;font-weight:600}[data-v-1e57bb70] .prose h3{margin-top:.6em;margin-bottom:.3em;font-size:1.1em;font-weight:600}[data-v-1e57bb70] .prose p{margin-top:.5em;margin-bottom:.5em}[data-v-1e57bb70] .prose ul{margin-top:.5em;margin-bottom:.5em;padding-left:1.5em}[data-v-1e57bb70] .prose li{margin-top:.25em;margin-bottom:.25em}[data-v-1e57bb70] .prose code{background:hsl(var(--muted));border-radius:.25rem;padding:.2em .4em;font-size:.875em}[data-v-1e57bb70] .prose pre{background:hsl(var(--muted));border-radius:.5rem;margin-top:.5em;margin-bottom:.5em;padding:1em;overflow-x:auto}[data-v-1e57bb70] .prose a{color:hsl(var(--primary));text-decoration:underline}main[data-v-647bf304]{scroll-behavior:smooth} diff --git a/docs/assets/index-DRmrr36X.js b/docs/assets/index-DRmrr36X.js deleted file mode 100644 index acd847f..0000000 --- a/docs/assets/index-DRmrr36X.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./OverviewView-BmFIi4eW.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-DGvz1MHk.js","./vendor-utils-Dg-HLkEU.js","./vendor-pinia-DP9x75p8.js","./CardDescription-BjAei3DC.js","./useGameConfig-CVlwnWOp.js","./game-i18n-DEf7ySVe.js","./BuildingsView-fbXzR4lw.js","./vendor-icons-W6Ny__75.js","./AlertDialog-Bf_xgpJz.js","./CardUnlockOverlay-CVKjkS94.js","./ResearchView-CxV9s7Q0.js","./vendor-vue-router-CWDMmE-U.js","./UnlockRequirement-p2W4t6RX.js","./ShipyardView-7hLJW6aW.js","./DefenseView-BHOUOKOH.js","./FleetView-C_yELhx2.js","./OfficersView-vhUgk-zn.js","./BattleSimulatorView-DyCE8DDk.js","./BattleReportDialog-BxeTjW1s.js","./TooltipProvider-BAp4BAXy.js","./MessagesView-D8V3gkqX.js","./GalaxyView-BxX60NKB.js","./SelectValue-B8Xyt9cq.js","./SettingsView-ByY8npXW.js","./GMView-TnIOhUsC.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-DGvz1MHk.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:`setube`,private:!0,version:`1.1.0`,buildDate:`2025/12/14 13:08:09`,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":`npm run build && go build`,"build:electron":`npm 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}}},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-06b59069`]]),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-BmFIi4eW.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-fbXzR4lw.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-CxV9s7Q0.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-7hLJW6aW.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-BHOUOKOH.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-C_yELhx2.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-vhUgk-zn.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-DyCE8DDk.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-D8V3gkqX.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-BxX60NKB.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-ByY8npXW.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-TnIOhUsC.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/logo-Cz0cNqhe.svg b/docs/assets/logo-Cz0cNqhe.svg deleted file mode 100644 index 4e5393d..0000000 --- a/docs/assets/logo-Cz0cNqhe.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/missileLogic-_46Nr-Ju.js b/docs/assets/missileLogic-_46Nr-Ju.js deleted file mode 100644 index 05c656f..0000000 --- a/docs/assets/missileLogic-_46Nr-Ju.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,d as t,f as n,g as r,h as i,l as a,m as o,p as s,u as c}from"./game-logic-BBFCPVtv.js";import"./game-config-DRP-gbpS.js";export{a as applyMissileAttackResult,c as calculateMissileFlightTime,t as calculateMissileImpact,n as calculateMissileRange,s as calculateSystemDistance,o as createMissileAttack,i as executeMissileLaunch,r as isTargetInRange,e as validateMissileLaunch}; \ No newline at end of file diff --git a/docs/assets/rolldown-runtime-CIDIeb-o.js b/docs/assets/rolldown-runtime-CIDIeb-o.js deleted file mode 100644 index b2c99eb..0000000 --- a/docs/assets/rolldown-runtime-CIDIeb-o.js +++ /dev/null @@ -1 +0,0 @@ -var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=e=>{let n={};for(var r in e)t(n,r,{get:e[r],enumerable:!0});return n},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),u=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function.")});export{l as i,s as n,u as r,o as t}; \ No newline at end of file diff --git a/docs/assets/useGameConfig-CVlwnWOp.js b/docs/assets/useGameConfig-CVlwnWOp.js deleted file mode 100644 index eea9f9f..0000000 --- a/docs/assets/useGameConfig-CVlwnWOp.js +++ /dev/null @@ -1 +0,0 @@ -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-DRmrr36X.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/useGameConfig-DLqfPHtW.js b/docs/assets/useGameConfig-DLqfPHtW.js deleted file mode 100644 index 9fac734..0000000 --- a/docs/assets/useGameConfig-DLqfPHtW.js +++ /dev/null @@ -1 +0,0 @@ -import{on as e}from"./game-logic-BBFCPVtv.js";import{_ as t,d as n,f as r,h as i,l as a,n as o,r as s,s as c,u as l,v as u}from"./game-config-DRP-gbpS.js";import{X as d}from"./index-B4KMqZ_y.js";const f=()=>{let{t:f}=d(),p={[n.MetalMine]:`metalMine`,[n.CrystalMine]:`crystalMine`,[n.DeuteriumSynthesizer]:`deuteriumSynthesizer`,[n.SolarPlant]:`solarPlant`,[n.FusionReactor]:`fusionReactor`,[n.RoboticsFactory]:`roboticsFactory`,[n.NaniteFactory]:`naniteFactory`,[n.Shipyard]:`shipyard`,[n.ResearchLab]:`researchLab`,[n.MetalStorage]:`metalStorage`,[n.CrystalStorage]:`crystalStorage`,[n.DeuteriumTank]:`deuteriumTank`,[n.DarkMatterCollector]:`darkMatterCollector`,[n.DarkMatterTank]:`darkMatterTank`,[n.MissileSilo]:`missileSilo`,[n.Terraformer]:`terraformer`,[n.LunarBase]:`lunarBase`,[n.SensorPhalanx]:`sensorPhalanx`,[n.JumpGate]:`jumpGate`,[n.PlanetDestroyerFactory]:`planetDestroyerFactory`},m={[t.LightFighter]:`lightFighter`,[t.HeavyFighter]:`heavyFighter`,[t.Cruiser]:`cruiser`,[t.Battleship]:`battleship`,[t.Battlecruiser]:`battlecruiser`,[t.Bomber]:`bomber`,[t.Destroyer]:`destroyer`,[t.SmallCargo]:`smallCargo`,[t.LargeCargo]:`largeCargo`,[t.ColonyShip]:`colonyShip`,[t.Recycler]:`recycler`,[t.EspionageProbe]:`espionageProbe`,[t.SolarSatellite]:`solarSatellite`,[t.DarkMatterHarvester]:`darkMatterHarvester`,[t.Deathstar]:`deathstar`},h={[r.RocketLauncher]:`rocketLauncher`,[r.LightLaser]:`lightLaser`,[r.HeavyLaser]:`heavyLaser`,[r.GaussCannon]:`gaussCannon`,[r.IonCannon]:`ionCannon`,[r.PlasmaTurret]:`plasmaTurret`,[r.SmallShieldDome]:`smallShieldDome`,[r.LargeShieldDome]:`largeShieldDome`,[r.AntiBallisticMissile]:`antiBallisticMissile`,[r.InterplanetaryMissile]:`interplanetaryMissile`,[r.PlanetaryShield]:`planetaryShield`},g={[u.EnergyTechnology]:`energyTechnology`,[u.LaserTechnology]:`laserTechnology`,[u.IonTechnology]:`ionTechnology`,[u.HyperspaceTechnology]:`hyperspaceTechnology`,[u.PlasmaTechnology]:`plasmaTechnology`,[u.ComputerTechnology]:`computerTechnology`,[u.EspionageTechnology]:`espionageTechnology`,[u.WeaponsTechnology]:`weaponsTechnology`,[u.ShieldingTechnology]:`shieldingTechnology`,[u.ArmourTechnology]:`armourTechnology`,[u.Astrophysics]:`astrophysics`,[u.GravitonTechnology]:`gravitonTechnology`,[u.CombustionDrive]:`combustionDrive`,[u.ImpulseDrive]:`impulseDrive`,[u.HyperspaceDrive]:`hyperspaceDrive`,[u.DarkMatterTechnology]:`darkMatterTechnology`,[u.TerraformingTechnology]:`terraformingTechnology`,[u.PlanetDestructionTech]:`planetDestructionTech`},_={[i.Commander]:`commander`,[i.Admiral]:`admiral`,[i.Engineer]:`engineer`,[i.Geologist]:`geologist`,[i.Technocrat]:`technocrat`,[i.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[t,n]of Object.entries(a)){let r=t,i=m[r];e[r]={...n,name:f(`ships.${i}`),description:f(`shipDescriptions.${i}`)}}return e}),DEFENSES:e(()=>{let e={};for(let[t,n]of Object.entries(s)){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(l)){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(c)){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-CQM8pryk.js b/docs/assets/vendor-crypto-CQM8pryk.js deleted file mode 100644 index f4dff2e..0000000 --- a/docs/assets/vendor-crypto-CQM8pryk.js +++ /dev/null @@ -1 +0,0 @@ -import{r as e,t}from"./rolldown-runtime-CIDIeb-o.js";var n=t(((e,t)=>{t.exports={}})),r=t(((t,r)=>{(function(e,n){typeof t==`object`?r.exports=t=n():typeof define==`function`&&define.amd?define([],n):e.CryptoJS=n()})(t,function(){var t=t||function(t,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 e==`function`)try{i=n()}catch{}var a=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.`)},o=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),s={},c=s.lib={},l=c.Base=function(){return{extend:function(e){var t=o(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)}}}(),u=c.WordArray=l.extend({init:function(e,t){e=this.words=e||[],t==r?this.sigBytes=e.length*4:this.sigBytes=t},toString:function(e){return(e||f).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,n=this.sigBytes;e[n>>>2]&=4294967295<<32-n%4*8,e.length=t.ceil(n/4)},clone:function(){var e=l.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 u.init(n,t/2)}},p=d.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 u.init(n,t)}},m=d.Utf8={stringify:function(e){try{return decodeURIComponent(escape(p.stringify(e)))}catch{throw Error(`Malformed UTF-8 data`)}},parse:function(e){return p.parse(unescape(encodeURIComponent(e)))}},h=c.BufferedBlockAlgorithm=l.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){typeof e==`string`&&(e=m.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var n,r=this._data,i=r.words,a=r.sigBytes,o=this.blockSize,s=a/(o*4);s=e?t.ceil(s):t.max((s|0)-this._minBufferSize,0);var c=s*o,l=t.min(c*4,a);if(c){for(var d=0;d{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),o=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),s=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),c=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),l=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),u=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),d=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),f=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),d()):typeof define==`function`&&define.amd?define([`./core`,`./sha256`],i):i(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})})),p=t(((e,t)=>{(function(n,a,o){typeof e==`object`?t.exports=e=a(r(),i()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`],a):a(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,F=y,I=b,L=x,R=S,z=C,B=w,V=T,H=E,ee=D,U=O,W=0;W<80;W++){var G,K,q=l[W];if(W<16)K=q.high=e[t+W*2]|0,G=q.low=e[t+W*2+1]|0;else{var te=l[W-15],J=te.high,Y=te.low,ne=(J>>>1|Y<<31)^(J>>>8|Y<<24)^J>>>7,re=(Y>>>1|J<<31)^(Y>>>8|J<<24)^(Y>>>7|J<<25),ie=l[W-2],X=ie.high,Z=ie.low,ae=(X>>>19|Z<<13)^(X<<3|Z>>>29)^X>>>6,oe=(Z>>>19|X<<13)^(Z<<3|X>>>29)^(Z>>>6|X<<26),se=l[W-7],ce=se.high,le=se.low,ue=l[W-16],de=ue.high,fe=ue.low;G=re+le,K=ne+ce+(G>>>0>>0?1:0),G+=oe,K=K+ae+(G>>>0>>0?1:0),G+=fe,K=K+de+(G>>>0>>0?1:0),q.high=K,q.low=G}var pe=L&z^~L&V,me=R&B^~R&H,he=k&j^k&N^j&N,ge=A&M^A&P^M&P,_e=(k>>>28|A<<4)^(k<<30|A>>>2)^(k<<25|A>>>7),ve=(A>>>28|k<<4)^(A<<30|k>>>2)^(A<<25|k>>>7),ye=(L>>>14|R<<18)^(L>>>18|R<<14)^(L<<23|R>>>9),be=(R>>>14|L<<18)^(R>>>18|L<<14)^(R<<23|L>>>9),xe=c[W],Se=xe.high,Ce=xe.low,Q=U+be,$=ee+ye+(Q>>>0>>0?1:0),Q=Q+me,$=$+pe+(Q>>>0>>0?1:0),Q=Q+Ce,$=$+Se+(Q>>>0>>0?1:0),Q=Q+G,$=$+K+(Q>>>0>>0?1:0),we=ve+ge,Te=_e+he+(we>>>0>>0?1:0);ee=V,U=H,V=z,H=B,z=L,B=R,R=I+Q|0,L=F+$+(R>>>0>>0?1:0)|0,F=N,I=P,N=j,P=M,j=k,M=A,A=Q+we|0,k=$+Te+(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+I,o.high=y+F+(b>>>0>>0?1:0),S=s.low=S+R,s.high=x+L+(S>>>0>>0?1:0),w=u.low=w+B,u.high=C+z+(w>>>0>>0?1:0),E=d.low=E+H,d.high=T+V+(E>>>0>>0?1:0),O=f.low=O+U,f.high=D+ee+(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})})),m=t(((e,t)=>{(function(n,a,o){typeof e==`object`?t.exports=e=a(r(),i(),p()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`,`./sha512`],a):a(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})})),h=t(((e,t)=>{(function(n,a,o){typeof e==`object`?t.exports=e=a(r(),i()):typeof define==`function`&&define.amd?define([`./core`,`./x64-core`],a):a(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})})),g=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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})})),_=t(((e,t)=>{(function(n,i){typeof e==`object`?t.exports=e=i(r()):typeof define==`function`&&define.amd?define([`./core`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),d(),_()):typeof define==`function`&&define.amd?define([`./core`,`./sha256`,`./hmac`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),u(),_()):typeof define==`function`&&define.amd?define([`./core`,`./sha1`,`./hmac`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),y()):typeof define==`function`&&define.amd?define([`./core`,`./evpkdf`],i):i(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)}})}()})})),x=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),E=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),D=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),O=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),k=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),A=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(n.CryptoJS)})(e,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})})),j=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),b()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],i):i(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})})),M=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),N=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),P=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),F=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),I=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),L=t(((e,t)=>{(function(n,i,a){typeof e==`object`?t.exports=e=i(r(),s(),l(),y(),b()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],i):i(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})})),R=t(((e,t)=>{(function(n,R,z){typeof e==`object`?t.exports=e=R(r(),i(),a(),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(),F(),I(),L()):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{R as t}; \ No newline at end of file diff --git a/docs/assets/vendor-crypto-DGvz1MHk.js b/docs/assets/vendor-crypto-DGvz1MHk.js deleted file mode 100644 index 3b22da0..0000000 --- a/docs/assets/vendor-crypto-DGvz1MHk.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,i as t,n,r,t as i}from"./rolldown-runtime-tX5UdD3f.js";var a=r({Certificate:()=>fe,Cipheriv:()=>pe,Decipheriv:()=>me,DiffieHellman:()=>he,DiffieHellmanGroup:()=>ge,ECDH:()=>_e,Hash:()=>ve,Hmac:()=>ye,KeyObject:()=>be,Sign:()=>xe,Verify:()=>Se,X509Certificate:()=>Ce,argon2:()=>s,argon2Sync:()=>c,checkPrime:()=>l,checkPrimeSync:()=>u,constants:()=>Ee,createCipheriv:()=>d,createDecipheriv:()=>f,createDiffieHellman:()=>p,createDiffieHellmanGroup:()=>m,createECDH:()=>h,createHash:()=>g,createHmac:()=>_,createPrivateKey:()=>v,createPublicKey:()=>y,createSecretKey:()=>b,createSign:()=>x,createVerify:()=>S,decapsulate:()=>de,default:()=>je,diffieHellman:()=>C,encapsulate:()=>ue,fips:()=>Te,generateKey:()=>F,generateKeyPair:()=>ee,generateKeyPairSync:()=>te,generateKeySync:()=>I,generatePrime:()=>w,generatePrimeSync:()=>T,getCipherInfo:()=>D,getCiphers:()=>E,getCurves:()=>O,getDiffieHellman:()=>k,getFips:()=>ce,getHashes:()=>A,getRandomValues:()=>q,hash:()=>K,hkdf:()=>j,hkdfSync:()=>M,pbkdf2:()=>N,pbkdf2Sync:()=>P,privateDecrypt:()=>ne,privateEncrypt:()=>L,prng:()=>J,pseudoRandomBytes:()=>ke,publicDecrypt:()=>re,publicEncrypt:()=>R,randomBytes:()=>ie,randomFill:()=>z,randomFillSync:()=>B,randomInt:()=>V,randomUUID:()=>H,rng:()=>Ae,scrypt:()=>ae,scryptSync:()=>oe,secureHeapUsed:()=>we,setEngine:()=>W,setFips:()=>le,sign:()=>U,subtle:()=>Oe,timingSafeEqual:()=>se,verify:()=>G,webcrypto:()=>De}),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,je,Me=n((()=>{o=(Me(),e(a)),s=o.argon2,c=o.argon2Sync,l=o.checkPrime,u=o.checkPrimeSync,d=o.createCipheriv,f=o.createDecipheriv,p=o.createDiffieHellman,m=o.createDiffieHellmanGroup,h=o.createECDH,g=o.createHash,_=o.createHmac,v=o.createPrivateKey,y=o.createPublicKey,b=o.createSecretKey,x=o.createSign,S=o.createVerify,C=o.diffieHellman,w=o.generatePrime,T=o.generatePrimeSync,E=o.getCiphers,D=o.getCipherInfo,O=o.getCurves,k=o.getDiffieHellman,A=o.getHashes,j=o.hkdf,M=o.hkdfSync,N=o.pbkdf2,P=o.pbkdf2Sync,ee=o.generateKeyPair,te=o.generateKeyPairSync,F=o.generateKey,I=o.generateKeySync,ne=o.privateDecrypt,L=o.privateEncrypt,re=o.publicDecrypt,R=o.publicEncrypt,ie=o.randomBytes,z=o.randomFill,B=o.randomFillSync,V=o.randomInt,H=o.randomUUID,ae=o.scrypt,oe=o.scryptSync,U=o.sign,W=o.setEngine,se=o.timingSafeEqual,ce=o.getFips,le=o.setFips,G=o.verify,K=o.hash,ue=o.encapsulate,de=o.decapsulate,fe=o.Certificate,pe=o.Cipheriv,me=o.Decipheriv,he=o.DiffieHellman,ge=o.DiffieHellmanGroup,_e=o.ECDH,ve=o.Hash,ye=o.Hmac,be=o.KeyObject,xe=o.Sign,Se=o.Verify,Ce=o.X509Certificate,we=o.secureHeapUsed,Te=o.fips,Ee=o.constants,De=o.webcrypto,Oe=o.subtle,q=o.getRandomValues,J=o.prng,ke=o.pseudoRandomBytes,Ae=o.rng,je=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=(Me(),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})})),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.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})})),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(){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})})),Le=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})})),Re=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})})),ze=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Re()):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})})),Be=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne()):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})})),Ve=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne(),Be()):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})})),He=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne()):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})})),Ue=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})})),We=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(),Re(),We()):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(),Le(),We()):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)}})}()})})),Ke=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})})),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.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})})),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.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})})),$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.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})})),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 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})})),tt=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})})),nt=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})})),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.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})})),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,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})})),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=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})})),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.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})})),st=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})})),ct=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})})),lt=i(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(Y(),Ne(),Pe(),Fe(),X(),Ie(),Z(),Le(),Re(),ze(),Be(),Ve(),He(),Ue(),We(),Ge(),Q(),$(),Ke(),qe(),Je(),Ye(),Xe(),Ze(),Qe(),$e(),et(),tt(),nt(),rt(),it(),at(),ot(),st(),ct()):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{lt as t}; \ No newline at end of file diff --git a/docs/assets/vendor-icons-Ccm2_GPI.js b/docs/assets/vendor-icons-Ccm2_GPI.js deleted file mode 100644 index ca25d0e..0000000 --- a/docs/assets/vendor-icons-Ccm2_GPI.js +++ /dev/null @@ -1 +0,0 @@ -import{gn as e}from"./game-logic-BBFCPVtv.js";var t=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),n=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),r=e=>{let t=n(e);return t.charAt(0).toUpperCase()+t.slice(1)},i=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),a=e=>e===``,o={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`},s=({name:n,iconNode:s,absoluteStrokeWidth:c,"absolute-stroke-width":l,strokeWidth:u,"stroke-width":d,size:f=o.width,color:p=o.stroke,...m},{slots:h})=>e(`svg`,{...o,...m,width:f,height:f,stroke:p,"stroke-width":a(c)||a(l)||c===!0||l===!0?Number(u||d||o[`stroke-width`])*24/Number(f):u||d||o[`stroke-width`],class:i(`lucide`,m.class,...n?[`lucide-${t(r(n))}-icon`,`lucide-${t(n)}`]:[`lucide-icon`])},[...s.map(t=>e(...t)),...h.default?[h.default()]:[]]),c=(t,n)=>(r,{slots:i,attrs:a})=>e(s,{...a,...r,iconNode:n,name:t},i),l=c(`ban`,[[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),u=c(`bomb`,[[`circle`,{cx:`11`,cy:`13`,r:`9`,key:`hd149`}],[`path`,{d:`M14.35 4.65 16.3 2.7a2.41 2.41 0 0 1 3.4 0l1.6 1.6a2.4 2.4 0 0 1 0 3.4l-1.95 1.95`,key:`jp4j1b`}],[`path`,{d:`m22 2-1.5 1.5`,key:`ay92ug`}]]),d=c(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),f=c(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),p=c(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),m=c(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),h=c(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),g=c(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),_=c(`chevrons-left`,[[`path`,{d:`m11 17-5-5 5-5`,key:`13zhaf`}],[`path`,{d:`m18 17-5-5 5-5`,key:`h8a8et`}]]),v=c(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),y=c(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),b=c(`clock`,[[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),x=c(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),S=c(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),C=c(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),w=c(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),T=c(`fuel`,[[`path`,{d:`M14 13h2a2 2 0 0 1 2 2v2a2 2 0 0 0 4 0v-6.998a2 2 0 0 0-.59-1.42L18 5`,key:`1wtuz0`}],[`path`,{d:`M14 21V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v16`,key:`e09ifn`}],[`path`,{d:`M2 21h13`,key:`1x0fut`}],[`path`,{d:`M3 9h11`,key:`1p7c0w`}]]),E=c(`gift`,[[`rect`,{x:`3`,y:`8`,width:`18`,height:`4`,rx:`1`,key:`bkv52`}],[`path`,{d:`M12 8v13`,key:`1c76mn`}],[`path`,{d:`M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7`,key:`6wjy6b`}],[`path`,{d:`M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5`,key:`1ihvrl`}]]),D=c(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),O=c(`grid-3x3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),k=c(`handshake`,[[`path`,{d:`m11 17 2 2a1 1 0 1 0 3-3`,key:`efffak`}],[`path`,{d:`m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4`,key:`9pr0kb`}],[`path`,{d:`m21 3 1 11h-2`,key:`1tisrp`}],[`path`,{d:`M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3`,key:`1uvwmv`}],[`path`,{d:`M3 4h8`,key:`1ep09j`}]]),A=c(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),j=c(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),M=c(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),N=c(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),P=c(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),F=c(`mail`,[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]),I=c(`messages-square`,[[`path`,{d:`M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z`,key:`1n2ejm`}],[`path`,{d:`M20 9a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1`,key:`1qfcsi`}]]),ee=c(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),L=c(`octagon-x`,[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),R=c(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),z=c(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),B=c(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),V=c(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),H=c(`recycle`,[[`path`,{d:`M7 19H4.815a1.83 1.83 0 0 1-1.57-.881 1.785 1.785 0 0 1-.004-1.784L7.196 9.5`,key:`x6z5xu`}],[`path`,{d:`M11 19h8.203a1.83 1.83 0 0 0 1.556-.89 1.784 1.784 0 0 0 0-1.775l-1.226-2.12`,key:`1x4zh5`}],[`path`,{d:`m14 16-3 3 3 3`,key:`f6jyew`}],[`path`,{d:`M8.293 13.596 7.196 9.5 3.1 10.598`,key:`wf1obh`}],[`path`,{d:`m9.344 5.811 1.093-1.892A1.83 1.83 0 0 1 11.985 3a1.784 1.784 0 0 1 1.546.888l3.943 6.843`,key:`9tzpgr`}],[`path`,{d:`m13.378 9.633 4.096 1.098 1.097-4.096`,key:`1oe83g`}]]),U=c(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),W=c(`rocket`,[[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z`,key:`m3kijz`}],[`path`,{d:`m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z`,key:`1fmvmk`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0`,key:`1f8sc4`}],[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}]]),G=c(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),K=c(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),q=c(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),J=c(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),Y=c(`ship`,[[`path`,{d:`M12 10.189V14`,key:`1p8cqu`}],[`path`,{d:`M12 2v3`,key:`qbqxhf`}],[`path`,{d:`M19 13V7a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v6`,key:`qpkstq`}],[`path`,{d:`M19.38 20A11.6 11.6 0 0 0 21 14l-8.188-3.639a2 2 0 0 0-1.624 0L3 14a11.6 11.6 0 0 0 2.81 7.76`,key:`7tigtc`}],[`path`,{d:`M2 21c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1s1.2 1 2.5 1c2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`1924j5`}]]),X=c(`skull`,[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]),Z=c(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Q=c(`swords`,[[`polyline`,{points:`14.5 17.5 3 6 3 3 6 3 17.5 14.5`,key:`1hfsw2`}],[`line`,{x1:`13`,x2:`19`,y1:`19`,y2:`13`,key:`1vrmhu`}],[`line`,{x1:`16`,x2:`20`,y1:`16`,y2:`20`,key:`1bron3`}],[`line`,{x1:`19`,x2:`21`,y1:`21`,y2:`19`,key:`13pww6`}],[`polyline`,{points:`14.5 6.5 18 3 21 3 21 6 17.5 9.5`,key:`hbey2j`}],[`line`,{x1:`5`,x2:`9`,y1:`14`,y2:`18`,key:`1hf58s`}],[`line`,{x1:`7`,x2:`4`,y1:`17`,y2:`20`,key:`pidxm4`}],[`line`,{x1:`3`,x2:`5`,y1:`19`,y2:`21`,key:`1pehsh`}]]),$=c(`sword`,[[`path`,{d:`m11 19-6-6`,key:`s7kpr`}],[`path`,{d:`m5 21-2-2`,key:`1kw20b`}],[`path`,{d:`m8 16-4 4`,key:`1oqv8h`}],[`path`,{d:`M9.5 17.5 21 6V3h-3L6.5 14.5`,key:`pkxemp`}]]),te=c(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),ne=c(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),re=c(`trophy`,[[`path`,{d:`M10 14.66v1.626a2 2 0 0 1-.976 1.696A5 5 0 0 0 7 21.978`,key:`1n3hpd`}],[`path`,{d:`M14 14.66v1.626a2 2 0 0 0 .976 1.696A5 5 0 0 1 17 21.978`,key:`rfe1zi`}],[`path`,{d:`M18 9h1.5a1 1 0 0 0 0-5H18`,key:`7xy6bh`}],[`path`,{d:`M4 22h16`,key:`57wxv0`}],[`path`,{d:`M6 9a6 6 0 0 0 12 0V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z`,key:`1mhfuq`}],[`path`,{d:`M6 9H4.5a1 1 0 0 1 0-5H6`,key:`tex48p`}]]),ie=c(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),ae=c(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),oe=c(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),se=c(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),ce=c(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);export{u as $,N as A,C as B,z as C,I as D,ee as E,O as F,v as G,x as H,D as I,h as J,_ as K,E as L,j as M,A as N,F as O,k as P,d as Q,T as R,B as S,L as T,b as U,S as V,y as W,p as X,m as Y,f as Z,G as _,ie as a,H as b,te as c,Z as d,l as et,X as f,K as g,q as h,ae as i,M as j,P as k,$ as l,J as m,se as n,re as o,Y as p,g as q,oe as r,ne as s,ce as t,Q as u,W as v,R as w,V as x,U as y,w as z}; \ No newline at end of file diff --git a/docs/assets/vendor-others-BMPyaZWq.css b/docs/assets/vendor-others-BMPyaZWq.css deleted file mode 100644 index 59f2389..0000000 --- a/docs/assets/vendor-others-BMPyaZWq.css +++ /dev/null @@ -1 +0,0 @@ -html[dir=ltr],[data-sonner-toaster][dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0}html[dir=rtl],[data-sonner-toaster][dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto}[data-sonner-toaster]{width:var(--width);--gray1:#fcfcfc;--gray2:#f8f8f8;--gray3:#f3f3f3;--gray4:#ededed;--gray5:#e8e8e8;--gray6:#e2e2e2;--gray7:#dbdbdb;--gray8:#c7c7c7;--gray9:#8f8f8f;--gray10:#858585;--gray11:#6f6f6f;--gray12:#171717;--border-radius:8px;box-sizing:border-box;z-index:999999999;outline:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;list-style:none;transition:transform .4s;position:fixed}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translate(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift)*var(--gap));z-index:var(--z-index);opacity:0;transform:var(--y);touch-action:none;box-sizing:border-box;overflow-wrap:anywhere;outline:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;position:absolute}[data-sonner-toast][data-styled=true]{background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);width:var(--width);align-items:center;gap:6px;padding:16px;font-size:13px;display:flex;box-shadow:0 4px 12px #0000001a}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-y-position=top]{--y:translateY(-100%);--lift:1;--lift-amount:calc(1*var(--gap));top:0}[data-sonner-toast][data-y-position=bottom]{--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift)*var(--gap));bottom:0}[data-sonner-toast][data-styled=true] [data-description]{color:#3f3f3f;font-weight:400;line-height:1.4}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{color:inherit;font-weight:500;line-height:1.5}[data-sonner-toast][data-styled=true] [data-icon]{width:16px;height:16px;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end);flex-shrink:0;justify-content:flex-start;align-items:center;display:flex;position:relative}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform-origin:50%;animation:.3s forwards sonner-fade-in;transform:scale(.8)}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{flex-direction:column;gap:2px;display:flex}[data-sonner-toast][data-styled=true] [data-button]{height:24px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);cursor:pointer;border:none;border-radius:4px;outline:none;flex-shrink:0;align-items:center;padding-left:8px;padding-right:8px;font-size:12px;font-weight:500;transition:opacity .4s,box-shadow .2s;display:flex}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px #0006}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:#00000014}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:#ffffff4d}[data-sonner-toaster] [data-close-button-position=top-left]{--toast-close-button-left:0;--toast-close-button-right:unset;--toast-close-button-top:0;--toast-close-button-bottom:unset;--toast-close-button-transform:translate(-35%,-35%)}[data-sonner-toaster] [data-close-button-position=top-right]{--toast-close-button-left:unset;--toast-close-button-right:0;--toast-close-button-top:0;--toast-close-button-bottom:unset;--toast-close-button-transform:translate(35%,-35%)}[data-sonner-toaster] [data-close-button-position=bottom-left]{--toast-close-button-left:0;--toast-close-button-right:unset;--toast-close-button-top:unset;--toast-close-button-bottom:0;--toast-close-button-transform:translate(-35%,35%)}[data-sonner-toaster] [data-close-button-position=bottom-right]{--toast-close-button-left:unset;--toast-close-button-right:0;--toast-close-button-top:unset;--toast-close-button-bottom:0;--toast-close-button-transform:translate(35%,35%)}[data-sonner-toast][data-styled=true] [data-close-button]{left:var(--toast-close-button-left);right:var(--toast-close-button-right);top:var(--toast-close-button-top);bottom:var(--toast-close-button-bottom);width:20px;height:20px;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .1s,background .2s,border-color .2s;display:flex;position:absolute}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]:before{content:"";z-index:-1;height:100%;position:absolute;left:-100%;right:-100%}[data-sonner-toast][data-y-position=top][data-swiping=true]:before{bottom:50%;transform:scaleY(3)translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]:before{top:50%;transform:scaleY(3)translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]:before{content:"";position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]:after{content:"";height:calc(var(--gap) + 1px);width:100%;position:absolute;bottom:100%;left:0}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before)*.05 + 1;--y:translateY(calc(var(--lift-amount)*var(--toasts-before)))scale(calc(-1*var(--toasts-before)*.05 + 1));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift)*var(--offset) + var(--lift)*-100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]:before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y)translateY(var(--swipe-amount-y,0px))translateX(var(--swipe-amount-x,0px));transition:none}[data-sonner-toast][data-swiped=true]{-webkit-user-select:none;user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y)translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y)translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y)translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y)translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%;position:fixed}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left)*-1)}[data-sonner-toaster] [data-sonner-toast]{width:calc(100% - var(--mobile-offset-left)*2);left:0;right:0}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:calc(var(--mobile-offset-bottom) + max(env(safe-area-inset-bottom),0px))}[data-sonner-toaster][data-y-position=top]{top:calc(var(--mobile-offset-top) + max(env(safe-area-inset-top),0px))}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:#ecfdf3;--success-border:#bffcd9;--success-text:#008a2e;--info-bg:#f0f8ff;--info-border:#dde7fd;--info-text:#0973dc;--warning-bg:#fffcf0;--warning-border:#fbeeb1;--warning-text:#dc7609;--error-bg:#fff0f0;--error-border:#ffe0e1;--error-text:#e60000}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:#333;--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:#1f1f1f;--normal-border:#333;--normal-border-hover:#404040;--normal-text:var(--gray1);--success-bg:#001f0f;--success-border:#003d1c;--success-text:#59f3a6;--info-bg:#000d1f;--info-border:#19233e;--info-text:#5896f3;--warning-bg:#1d1f00;--warning-border:#2e2e00;--warning-text:#f3cf58;--error-bg:#2d0607;--error-border:#4d0408;--error-text:#ff9ea1}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);z-index:10;position:absolute;inset:0}.sonner-loading-wrapper[data-visible=false]{transform-origin:50%;animation:.2s forwards sonner-fade-out}.sonner-spinner{height:var(--size);width:var(--size);position:relative;top:50%;left:50%}.sonner-loading-bar{background:var(--gray11);border-radius:6px;width:24%;height:8%;animation:1.2s linear infinite sonner-spin;position:absolute;top:-3.9%;left:-10%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg)translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg)translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg)translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg)translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg)translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg)translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg)translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg)translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg)translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg)translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg)translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg)translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{transform-origin:50%;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8)translate(-50%,-50%)} diff --git a/docs/assets/vendor-others-Bce0hM6h.js b/docs/assets/vendor-others-Bce0hM6h.js deleted file mode 100644 index 60b863d..0000000 --- a/docs/assets/vendor-others-Bce0hM6h.js +++ /dev/null @@ -1,59 +0,0 @@ -import{An as e,Bn as t,Cn as n,En as r,Fn as i,Hn as a,In as o,Jn as s,Kn as c,Mn as l,On as u,Qn as d,Rn as f,Sn as p,Vn as m,Wn as h,Yn as g,Zn as _,_n as v,ar as y,cn as b,cr as x,dn as S,fn as C,kn as w,ln as T,mn as E,nr as D,on as O,or as ee,pn as k,qn as A,rn as j,rr as M,sn as N,sr as te,tr as ne,un as P,vn as F,wn as re,xn as ie,yn as I}from"./game-logic-BBFCPVtv.js";function ae(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;ttypeof e==`boolean`?`${e}`:e===0?`0`:e;const ce=oe,le=(e,t)=>n=>{if(t?.variants==null)return ce(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=se(t)||se(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return ce(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)};function ue(e){return typeof e==`string`?`'${e}'`:new de().serialize(e)}var de=function(){class e{#e=new Map;compare(e,t){let n=typeof e,r=typeof t;return n===`string`&&r===`string`?e.localeCompare(t):n===`number`&&r===`number`?e-t:String.prototype.localeCompare.call(this.serialize(e,!0),this.serialize(t,!0))}serialize(e,t){if(e===null)return`null`;switch(typeof e){case`string`:return t?e:`'${e}'`;case`bigint`:return`${e}n`;case`object`:return this.$object(e);case`function`:return this.$function(e)}return String(e)}serializeObject(e){let t=Object.prototype.toString.call(e);if(t!==`[object Object]`)return this.serializeBuiltInType(t.length<10?`unknown:${t}`:t.slice(8,-1),e);let n=e.constructor,r=n===Object||n===void 0?``:n.name;if(r!==``&&globalThis[r]===n)return this.serializeBuiltInType(r,e);if(typeof e.toJSON==`function`){let t=e.toJSON();return r+(typeof t==`object`&&t?this.$object(t):`(${this.serialize(t)})`)}return this.serializeObjectEntries(r,Object.entries(e))}serializeBuiltInType(e,t){let n=this[`$`+e];if(n)return n.call(this,t);if(typeof t?.entries==`function`)return this.serializeObjectEntries(e,t.entries());throw Error(`Cannot serialize ${e}`)}serializeObjectEntries(e,t){let n=Array.from(t).sort((e,t)=>this.compare(e[0],t[0])),r=`${e}{`;for(let e=0;ethis.compare(e,t)))}`}$Map(e){return this.serializeObjectEntries(`Map`,e.entries())}}for(let t of[`Error`,`RegExp`,`URL`])e.prototype[`$`+t]=function(e){return`${t}(${e})`};for(let t of[`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`,`)}]`};for(let t of[`BigInt64Array`,`BigUint64Array`])e.prototype[`$`+t]=function(e){return`${t}[${e.join(`n,`)}${e.length>0?`n`:``}]`};return e}();function fe(e,t){return e===t||ue(e)===ue(t)}function pe(e,t){let n=d();return o(()=>{n.value=e()},{...t,flush:t?.flush??`sync`}),s(n)}function L(e){return a()?(c(e),!0):!1}function me(){let e=new Set,t=t=>{e.delete(t)};return{on:n=>{e.add(n);let r=()=>t(n);return L(r),{off:r}},off:t,trigger:(...t)=>Promise.all(Array.from(e).map(e=>e(...t))),clear:()=>{e.clear()}}}function he(e){let t=!1,n,r=m(!0);return(...i)=>(t||=(n=r.run(()=>e(...i)),!0),n)}function ge(e){let t=0,n,r,i=()=>{--t,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return(...a)=>(t+=1,r||(r=m(!0),n=r.run(()=>e(...a))),L(i),n)}function _e(e){return h(e)?A(new Proxy({},{get(t,n,r){return M(Reflect.get(e.value,n,r))},set(t,n,r){return h(e.value[n])&&!h(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}})):A(e)}function ve(e){return _e(O(e))}function ye(e,...t){let n=t.flat(),r=n[0];return ve(()=>typeof r==`function`?Object.fromEntries(Object.entries(ne(e)).filter(([e,t])=>!r(D(t),e))):Object.fromEntries(Object.entries(ne(e)).filter(e=>!n.includes(e[0]))))}var be=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var xe=e=>e!==void 0,Se=Object.prototype.toString,Ce=e=>Se.call(e)===`[object Object]`,we=Te();function Te(){return be&&(window==null?void 0:window.navigator)?.userAgent&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||(window==null?void 0:window.navigator)?.maxTouchPoints>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function Ee(e){return e||E()}function De(e){return Array.isArray(e)?e:[e]}function Oe(e,n=1e4){return t((t,r)=>{let i=D(e),a,o=()=>setTimeout(()=>{i=D(e),r()},D(n));return L(()=>{clearTimeout(a)}),{get(){return t(),i},set(e){i=e,r(),clearTimeout(a),a=o()}}})}function ke(e,t){Ee(t)&&n(e,t)}function Ae(e,t,n={}){let{immediate:r=!0,immediateCallback:i=!1}=n,a=d(!1),o=null;function c(){o&&=(clearTimeout(o),null)}function l(){a.value=!1,c()}function u(...n){i&&e(),c(),a.value=!0,o=setTimeout(()=>{a.value=!1,o=null,e(...n)},D(t))}return r&&(a.value=!0,be&&u()),L(l),{isPending:s(a),start:u,stop:l}}function je(e,t,n){return i(e,t,{...n,immediate:!0})}function Me(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)===`[object Module]`:!0}function Ne(e,t,n=`.`,r){if(!Me(t))return Ne(e,{},n,r);let i=Object.assign({},t);for(let t in e){if(t===`__proto__`||t===`constructor`)continue;let a=e[t];a!=null&&(r&&r(i,t,a,n)||(Array.isArray(a)&&Array.isArray(i[t])?i[t]=[...a,...i[t]]:Me(a)&&Me(i[t])?i[t]=Ne(a,i[t],(n?`${n}.`:``)+t.toString(),r):i[t]=a))}return i}function Pe(e){return(...t)=>t.reduce((t,n)=>Ne(t,n,``,e),{})}var Fe=Pe(),Ie=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Le=new WeakMap,Re=new WeakMap,ze={},Be=0,Ve=function(e){return e&&(e.host||Ve(e.parentNode))},He=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=Ve(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},Ue=function(e,t,n,r){var i=He(t,Array.isArray(e)?e:[e]);ze[n]||(ze[n]=new WeakMap);var a=ze[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Le.get(e)||0)+1,l=(a.get(e)||0)+1;Le.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Re.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Be++,function(){o.forEach(function(e){var t=Le.get(e)-1,i=a.get(e)-1;Le.set(e,t),a.set(e,i),t||(Re.has(e)||e.removeAttribute(r),Re.delete(e)),i||e.removeAttribute(n)}),Be--,Be||(Le=new WeakMap,Le=new WeakMap,Re=new WeakMap,ze={})}},We=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Ie(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),Ue(r,i,n,`aria-hidden`)):function(){return null}},Ge=[`top`,`right`,`bottom`,`left`],Ke=Math.min,R=Math.max,qe=Math.round,Je=Math.floor,z=e=>({x:e,y:e}),Ye={left:`right`,right:`left`,bottom:`top`,top:`bottom`},Xe={start:`end`,end:`start`};function Ze(e,t,n){return R(e,Ke(t,n))}function B(e,t){return typeof e==`function`?e(t):e}function V(e){return e.split(`-`)[0]}function Qe(e){return e.split(`-`)[1]}function $e(e){return e===`x`?`y`:`x`}function et(e){return e===`y`?`height`:`width`}var tt=new Set([`top`,`bottom`]);function H(e){return tt.has(V(e))?`y`:`x`}function nt(e){return $e(H(e))}function rt(e,t,n){n===void 0&&(n=!1);let r=Qe(e),i=nt(e),a=et(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=ft(o)),[o,ft(o)]}function it(e){let t=ft(e);return[at(e),t,at(t)]}function at(e){return e.replace(/start|end/g,e=>Xe[e])}var ot=[`left`,`right`],st=[`right`,`left`],ct=[`top`,`bottom`],lt=[`bottom`,`top`];function ut(e,t,n){switch(e){case`top`:case`bottom`:return n?t?st:ot:t?ot:st;case`left`:case`right`:return t?ct:lt;default:return[]}}function dt(e,t,n,r){let i=Qe(e),a=ut(V(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(at)))),a}function ft(e){return e.replace(/left|right|bottom|top/g,e=>Ye[e])}function pt(e){return{top:0,right:0,bottom:0,left:0,...e}}function mt(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:pt(e)}function ht(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function gt(e,t,n){let{reference:r,floating:i}=e,a=H(t),o=nt(t),s=et(o),c=V(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(Qe(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}var _t=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=gt(l,r,c),f=r,p={},m=0;for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=B(e,t)||{};if(l==null)return{};let d=mt(u),f={x:n,y:r},p=nt(i),m=et(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Ke(d[_],T),D=Ke(d[v],T),O=E,ee=C-h[m]-D,k=C/2-h[m]/2+w,A=Ze(O,k,ee),j=!c.arrow&&Qe(i)!=null&&k!==A&&a.reference[m]/2-(ke<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==H(t))||T.every(e=>H(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=H(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function xt(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function St(e){return Ge.some(t=>e[t]>=0)}var Ct=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n}=t,{strategy:r=`referenceHidden`,...i}=B(e,t);switch(r){case`referenceHidden`:{let e=xt(await vt(t,{...i,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:St(e)}}}case`escaped`:{let e=xt(await vt(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:St(e)}}}default:return{}}}}},wt=new Set([`left`,`top`]);async function Tt(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=V(n),s=Qe(n),c=H(n)===`y`,l=wt.has(o)?-1:1,u=a&&c?-1:1,d=B(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Et=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Tt(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Dt=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=B(e,t),l={x:n,y:r},u=await vt(t,c),d=H(V(i)),f=$e(d),p=l[f],m=l[d];if(a){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=p+u[e],r=p-u[t];p=Ze(n,p,r)}if(o){let e=d===`y`?`top`:`left`,t=d===`y`?`bottom`:`right`,n=m+u[e],r=m-u[t];m=Ze(n,m,r)}let h=s.fn({...t,[f]:p,[d]:m});return{...h,data:{x:h.x-n,y:h.y-r,enabled:{[f]:a,[d]:o}}}}}},Ot=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=B(e,t),u={x:n,y:r},d=H(i),f=$e(d),p=u[f],m=u[d],h=B(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;pn&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=wt.has(V(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);mr&&(m=r)}return{[f]:p,[d]:m}}}},kt=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=B(e,t),u=await vt(t,l),d=V(i),f=Qe(i),p=H(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=Ke(h-u[g],v),x=Ke(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=R(u.left,0),t=R(u.right,0),n=R(u.top,0),r=R(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:R(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:R(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function At(){return typeof window<`u`}function jt(e){return Mt(e)?(e.nodeName||``).toLowerCase():`#document`}function U(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function W(e){return((Mt(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Mt(e){return At()?e instanceof Node||e instanceof U(e).Node:!1}function G(e){return At()?e instanceof Element||e instanceof U(e).Element:!1}function K(e){return At()?e instanceof HTMLElement||e instanceof U(e).HTMLElement:!1}function Nt(e){return!At()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof U(e).ShadowRoot}var Pt=new Set([`inline`,`contents`]);function Ft(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=q(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!Pt.has(i)}var It=new Set([`table`,`td`,`th`]);function Lt(e){return It.has(jt(e))}var Rt=[`:popover-open`,`:modal`];function zt(e){return Rt.some(t=>{try{return e.matches(t)}catch{return!1}})}var Bt=[`transform`,`translate`,`scale`,`rotate`,`perspective`],Vt=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],Ht=[`paint`,`layout`,`strict`,`content`];function Ut(e){let t=Gt(),n=G(e)?q(e):e;return Bt.some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||Vt.some(e=>(n.willChange||``).includes(e))||Ht.some(e=>(n.contain||``).includes(e))}function Wt(e){let t=Yt(e);for(;K(t)&&!qt(t);){if(Ut(t))return t;if(zt(t))return null;t=Yt(t)}return null}function Gt(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var Kt=new Set([`html`,`body`,`#document`]);function qt(e){return Kt.has(jt(e))}function q(e){return U(e).getComputedStyle(e)}function Jt(e){return G(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Yt(e){if(jt(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Nt(e)&&e.host||W(e);return Nt(t)?t.host:t}function Xt(e){let t=Yt(e);return qt(t)?e.ownerDocument?e.ownerDocument.body:e.body:K(t)&&Ft(t)?t:Xt(t)}function Zt(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Xt(e),i=r===e.ownerDocument?.body,a=U(r);if(i){let e=Qt(a);return t.concat(a,a.visualViewport||[],Ft(r)?r:[],e&&n?Zt(e):[])}return t.concat(r,Zt(r,[],n))}function Qt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function $t(e){let t=q(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=K(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=qe(n)!==a||qe(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function en(e){return G(e)?e:e.contextElement}function tn(e){let t=en(e);if(!K(t))return z(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=$t(t),o=(a?qe(n.width):n.width)/r,s=(a?qe(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var nn=z(0);function rn(e){let t=U(e);return!Gt()||!t.visualViewport?nn:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function an(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==U(e)?!1:t}function on(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=en(e),o=z(1);t&&(r?G(r)&&(o=tn(r)):o=tn(e));let s=an(a,n,r)?rn(a):z(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=U(a),t=r&&G(r)?U(r):r,n=e,i=Qt(n);for(;i&&r&&t!==n;){let e=tn(i),t=i.getBoundingClientRect(),r=q(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=U(i),i=Qt(n)}}return ht({width:u,height:d,x:c,y:l})}function sn(e,t){let n=Jt(e).scrollLeft;return t?t.left+n:on(W(e)).left+n}function cn(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-sn(e,n),y:n.top+t.scrollTop}}function ln(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=W(r),s=t?zt(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=z(1),u=z(0),d=K(r);if((d||!d&&!a)&&((jt(r)!==`body`||Ft(o))&&(c=Jt(r)),K(r))){let e=on(r);l=tn(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?cn(o,c):z(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function un(e){return Array.from(e.getClientRects())}function dn(e){let t=W(e),n=Jt(e),r=e.ownerDocument.body,i=R(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=R(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+sn(e),s=-n.scrollTop;return q(r).direction===`rtl`&&(o+=R(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var fn=25;function pn(e,t){let n=U(e),r=W(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=Gt();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=sn(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=fn&&(a-=o)}else l<=fn&&(a+=l);return{width:a,height:o,x:s,y:c}}var mn=new Set([`absolute`,`fixed`]);function hn(e,t){let n=on(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=K(e)?tn(e):z(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function gn(e,t,n){let r;if(t===`viewport`)r=pn(e,n);else if(t===`document`)r=dn(W(e));else if(G(t))r=hn(t,n);else{let n=rn(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ht(r)}function _n(e,t){let n=Yt(e);return n===t||!G(n)||qt(n)?!1:q(n).position===`fixed`||_n(n,t)}function vn(e,t){let n=t.get(e);if(n)return n;let r=Zt(e,[],!1).filter(e=>G(e)&&jt(e)!==`body`),i=null,a=q(e).position===`fixed`,o=a?Yt(e):e;for(;G(o)&&!qt(o);){let t=q(o),n=Ut(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&mn.has(i.position)||Ft(o)&&!n&&_n(e,o))?r=r.filter(e=>e!==o):i=t,o=Yt(o)}return t.set(e,r),r}function yn(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?zt(t)?[]:vn(t,this._c):[].concat(n),r],o=a[0],s=a.reduce((e,n)=>{let r=gn(t,n,i);return e.top=R(r.top,e.top),e.right=Ke(r.right,e.right),e.bottom=Ke(r.bottom,e.bottom),e.left=R(r.left,e.left),e},gn(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function bn(e){let{width:t,height:n}=$t(e);return{width:t,height:n}}function xn(e,t,n){let r=K(t),i=W(t),a=n===`fixed`,o=on(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=z(0);function l(){c.x=sn(i)}if(r||!r&&!a)if((jt(t)!==`body`||Ft(i))&&(s=Jt(t)),r){let e=on(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?cn(i,s):z(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function Sn(e){return q(e).position===`static`}function Cn(e,t){if(!K(e)||q(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return W(e)===n&&(n=n.ownerDocument.body),n}function wn(e,t){let n=U(e);if(zt(e))return n;if(!K(e)){let t=Yt(e);for(;t&&!qt(t);){if(G(t)&&!Sn(t))return t;t=Yt(t)}return n}let r=Cn(e,t);for(;r&&Lt(r)&&Sn(r);)r=Cn(r,t);return r&&qt(r)&&Sn(r)&&!Ut(r)?n:r||Wt(e)||n}var Tn=async function(e){let t=this.getOffsetParent||wn,n=this.getDimensions,r=await n(e.floating);return{reference:xn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function En(e){return q(e).direction===`rtl`}var Dn={convertOffsetParentRelativeRectToViewportRelativeRect:ln,getDocumentElement:W,getClippingRect:yn,getOffsetParent:wn,getElementRects:Tn,getClientRects:un,getDimensions:bn,getScale:tn,isElement:G,isRTL:En};function On(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function kn(e,t){let n=null,r,i=W(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=Je(d),h=Je(i.clientWidth-(u+f)),g=Je(i.clientHeight-(d+p)),_=Je(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:R(0,Ke(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!On(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function An(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=en(e),u=i||a?[...l?Zt(l):[],...Zt(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?kn(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?on(e):null;c&&g();function g(){let t=on(e);h&&!On(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var jn=Et,Mn=Dt,Nn=bt,Pn=kt,Fn=Ct,In=yt,Ln=Ot,Rn=(e,t,n)=>{let r=new Map,i={platform:Dn,...n},a={...i.platform,_c:r};return _t(e,t,{...i,platform:a})};function zn(e){return typeof e==`object`&&!!e&&`$el`in e}function Bn(e){if(zn(e)){let t=e.$el;return Mt(t)&&jt(t)===`#comment`?null:t}return e}function Vn(e){return typeof e==`function`?e():M(e)}function Hn(e){return{name:`arrow`,options:e,fn(t){let n=Bn(Vn(e.element));return n==null?{}:In({element:n,padding:e.padding}).fn(t)}}}function Un(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Wn(e,t){let n=Un(e);return Math.round(t*n)/n}function Gn(e,t,n){n===void 0&&(n={});let r=n.whileElementsMounted,o=O(()=>Vn(n.open)??!0),s=O(()=>Vn(n.middleware)),l=O(()=>Vn(n.placement)??`bottom`),u=O(()=>Vn(n.strategy)??`absolute`),f=O(()=>Vn(n.transform)??!0),p=O(()=>Bn(e.value)),m=O(()=>Bn(t.value)),h=g(0),v=g(0),y=g(u.value),b=g(l.value),x=d({}),S=g(!1),C=O(()=>{let e={position:y.value,left:`0`,top:`0`};if(!m.value)return e;let t=Wn(m.value,h.value),n=Wn(m.value,v.value);return f.value?{...e,transform:`translate(`+t+`px, `+n+`px)`,...Un(m.value)>=1.5&&{willChange:`transform`}}:{position:y.value,left:t+`px`,top:n+`px`}}),w;function T(){if(p.value==null||m.value==null)return;let e=o.value;Rn(p.value,m.value,{middleware:s.value,placement:l.value,strategy:u.value}).then(t=>{h.value=t.x,v.value=t.y,y.value=t.strategy,b.value=t.placement,x.value=t.middlewareData,S.value=e!==!1})}function E(){typeof w==`function`&&(w(),w=void 0)}function D(){if(E(),r===void 0){T();return}if(p.value!=null&&m.value!=null){w=r(p.value,m.value,T);return}}function ee(){o.value||(S.value=!1)}return i([s,l,u,o],T,{flush:`sync`}),i([p,m],D,{flush:`sync`}),i(o,ee,{flush:`sync`}),a()&&c(E),{x:_(h),y:_(v),strategy:_(y),placement:_(b),middlewareData:_(x),isPositioned:_(S),floatingStyles:C,update:T}}var Kn=new WeakMap,qn=(...e)=>{let t=e[0],n=E()?.proxy??a();if(n==null&&!v())throw Error(`injectLocal must be called in setup`);return n&&Kn.has(n)&&t in Kn.get(n)?Kn.get(n)[t]:F(...e)},Jn=typeof window<`u`&&typeof document<`u`;typeof WorkerGlobalScope<`u`&&globalThis instanceof WorkerGlobalScope;var Yn=e=>e!==void 0,Xn=Object.prototype.toString,Zn=e=>Xn.call(e)===`[object Object]`;function Qn(e){return e.endsWith(`rem`)?Number.parseFloat(e)*16:Number.parseFloat(e)}function $n(e){return Array.isArray(e)?e:[e]}function er(e){return h(e)?A(new Proxy({},{get(t,n,r){return M(Reflect.get(e.value,n,r))},set(t,n,r){return h(e.value[n])&&!h(r)?e.value[n].value=r:e.value[n]=r,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}})):A(e)}function tr(e){return er(O(e))}function nr(e,...t){let n=t.flat(),r=n[0];return tr(()=>typeof r==`function`?Object.fromEntries(Object.entries(ne(e)).filter(([e,t])=>!r(D(t),e))):Object.fromEntries(Object.entries(ne(e)).filter(e=>!n.includes(e[0]))))}function rr(e,t,n){return i(e,t,{...n,immediate:!0})}function ir(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ar=ir();function or(e){ar=e}var sr={exec:()=>null};function J(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(Y.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var cr=(()=>{try{return!0}catch{return!1}})(),Y={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`)},lr=/^(?:[ \t]*(?:\n|$))+/,ur=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,dr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,fr=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,pr=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,mr=/(?:[*+-]|\d{1,9}[.)])/,hr=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,gr=J(hr).replace(/bull/g,mr).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),_r=J(hr).replace(/bull/g,mr).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),vr=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,yr=/^[^\n]+/,br=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,xr=J(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,br).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Sr=J(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,mr).getRegex(),Cr=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,wr=/|$))/,Tr=J(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,wr).replace(`tag`,Cr).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Er=J(vr).replace(`hr`,fr).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Cr).getRegex(),Dr={blockquote:J(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,Er).getRegex(),code:ur,def:xr,fences:dr,heading:pr,hr:fr,html:Tr,lheading:gr,list:Sr,newline:lr,paragraph:Er,table:sr,text:yr},Or=J(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,fr).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Cr).getRegex(),kr={...Dr,lheading:_r,table:Or,paragraph:J(vr).replace(`hr`,fr).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,Or).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)]) `).replace(`html`,`)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Cr).getRegex()},Ar={...Dr,html:J(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,wr).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:sr,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:J(vr).replace(`hr`,fr).replace(`heading`,` *#{1,6} *[^ -]`).replace(`lheading`,gr).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},jr=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Mr=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Nr=/^( {2,}|\\)\n(?!\s*$)/,Pr=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,cr?"(?`+)[^`]+\k(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),Ur=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Wr=J(Ur,`u`).replace(/punct/g,Fr).getRegex(),Gr=J(Ur,`u`).replace(/punct/g,zr).getRegex(),Kr=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,qr=J(Kr,`gu`).replace(/notPunctSpace/g,Lr).replace(/punctSpace/g,Ir).replace(/punct/g,Fr).getRegex(),Jr=J(Kr,`gu`).replace(/notPunctSpace/g,Vr).replace(/punctSpace/g,Br).replace(/punct/g,zr).getRegex(),Yr=J(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,Lr).replace(/punctSpace/g,Ir).replace(/punct/g,Fr).getRegex(),Xr=J(/\\(punct)/,`gu`).replace(/punct/g,Fr).getRegex(),Zr=J(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qr=J(wr).replace(`(?:-->|$)`,`-->`).getRegex(),$r=J(`^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^`).replace(`comment`,Qr).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),ei=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,ti=J(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace(`label`,ei).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),ni=J(/^!?\[(label)\]\[(ref)\]/).replace(`label`,ei).replace(`ref`,br).getRegex(),ri=J(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,br).getRegex(),ii=J(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,ni).replace(`nolink`,ri).getRegex(),ai=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,oi={_backpedal:sr,anyPunctuation:Xr,autolink:Zr,blockSkip:Hr,br:Nr,code:Mr,del:sr,emStrongLDelim:Wr,emStrongRDelimAst:qr,emStrongRDelimUnd:Yr,escape:jr,link:ti,nolink:ri,punctuation:Rr,reflink:ni,reflinkSearch:ii,tag:$r,text:Pr,url:sr},si={...oi,link:J(/^!?\[(label)\]\((.*?)\)/).replace(`label`,ei).getRegex(),reflink:J(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,ei).getRegex()},ci={...oi,emStrongRDelimAst:Jr,emStrongLDelim:Gr,url:J(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,ai).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:J(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":`>`,'"':`"`,"'":`'`},pi=e=>fi[e];function mi(e,t){if(t){if(Y.escapeTest.test(e))return e.replace(Y.escapeReplace,pi)}else if(Y.escapeTestNoEncode.test(e))return e.replace(Y.escapeReplaceNoEncode,pi);return e}function hi(e){try{e=encodeURI(e).replace(Y.percentDecode,`%`)}catch{return null}return e}function gi(e,t){let n=e.replace(Y.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(Y.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length0?-2:-1}function yi(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`);r.state.inLink=!0;let c={type:e[0].charAt(0)===`!`?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:r.inlineTokens(s)};return r.state.inLink=!1,c}function bi(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(` -`).map(e=>{let t=e.match(n.other.beginningSpace);if(t===null)return e;let[r]=t;return r.length>=i.length?e.slice(i.length):e}).join(` -`)}var xi=class{options;rules;lexer;constructor(e){this.options=e||ar}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:`space`,raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,``);return{type:`code`,raw:t[0],codeBlockStyle:`indented`,text:this.options.pedantic?e:_i(e,` -`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=bi(e,t[3]||``,this.rules);return{type:`code`,raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,`$1`):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=_i(e,`#`);(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:`heading`,raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:`hr`,raw:_i(t[0],` -`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=_i(t[0],` -`).split(` -`),n=``,r=``,i=[];for(;e.length>0;){let t=!1,a=[],o;for(o=0;o1,i={type:`list`,raw:``,ordered:r,start:r?+n.slice(0,-1):``,loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:`[*+-]`);let a=this.rules.other.listItemRegex(n),o=!1;for(;e;){let n=!1,r=``,s=``;if(!(t=a.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let c=t[2].split(` -`,1)[0].replace(this.rules.other.listReplaceTabs,e=>` `.repeat(3*e.length)),l=e.split(` -`,1)[0],u=!c.trim(),d=0;if(this.options.pedantic?(d=2,s=c.trimStart()):u?d=t[1].length+1:(d=t[2].search(this.rules.other.nonSpaceChar),d=d>4?1:d,s=c.slice(d),d+=t[1].length),u&&this.rules.other.blankLine.test(l)&&(r+=l+` -`,e=e.substring(l.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(d),n=this.rules.other.hrRegex(d),i=this.rules.other.fencesBeginRegex(d),a=this.rules.other.headingBeginRegex(d),o=this.rules.other.htmlBeginRegex(d);for(;e;){let f=e.split(` -`,1)[0],p;if(l=f,this.options.pedantic?(l=l.replace(this.rules.other.listReplaceNesting,` `),p=l):p=l.replace(this.rules.other.tabCharGlobal,` `),i.test(l)||a.test(l)||o.test(l)||t.test(l)||n.test(l))break;if(p.search(this.rules.other.nonSpaceChar)>=d||!l.trim())s+=` -`+p.slice(d);else{if(u||c.replace(this.rules.other.tabCharGlobal,` `).search(this.rules.other.nonSpaceChar)>=4||i.test(c)||a.test(c)||n.test(c))break;s+=` -`+l}!u&&!l.trim()&&(u=!0),r+=f+` -`,e=e.substring(f.length+1),c=p.slice(d)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(o=!0)),i.items.push({type:`list_item`,raw:r,task:!!this.options.gfm&&this.rules.other.listIsTask.test(s),loose:!1,text:s,tokens:[]}),i.raw+=r}let s=i.items.at(-1);if(s)s.raw=s.raw.trimEnd(),s.text=s.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let e of i.items){if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),e.task){if(e.text=e.text.replace(this.rules.other.listReplaceTask,``),e.tokens[0]?.type===`text`||e.tokens[0]?.type===`paragraph`){e.tokens[0].raw=e.tokens[0].raw.replace(this.rules.other.listReplaceTask,``),e.tokens[0].text=e.tokens[0].text.replace(this.rules.other.listReplaceTask,``);for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,``);break}}let t=this.rules.other.listTaskCheckbox.exec(e.raw);if(t){let n={type:`checkbox`,raw:t[0]+` `,checked:t[0]!==`[ ]`};e.checked=n.checked,i.loose?e.tokens[0]&&[`paragraph`,`text`].includes(e.tokens[0].type)&&`tokens`in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=n.raw+e.tokens[0].raw,e.tokens[0].text=n.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(n)):e.tokens.unshift({type:`paragraph`,raw:n.raw,text:n.raw,tokens:[n]}):e.tokens.unshift(n)}}if(!i.loose){let t=e.tokens.filter(e=>e.type===`space`);i.loose=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw))}}if(i.loose)for(let e of i.items){e.loose=!0;for(let t of e.tokens)t.type===`text`&&(t.type=`paragraph`)}return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:`html`,block:!0,raw:t[0],pre:t[1]===`pre`||t[1]===`script`||t[1]===`style`,text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,` `),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,`$1`).replace(this.rules.inline.anyPunctuation,`$1`):``,r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,`$1`):t[3];return{type:`def`,tag:e,raw:t[0],href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=gi(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,``).split(`|`),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,``).split(` -`):[],a={type:`table`,raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?a.align.push(`right`):this.rules.other.tableAlignCenter.test(e)?a.align.push(`center`):this.rules.other.tableAlignLeft.test(e)?a.align.push(`left`):a.align.push(null);for(let e=0;e({text:e,tokens:this.lexer.inline(e),header:!1,align:a.align[t]})));return a}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:`heading`,raw:t[0],depth:t[2].charAt(0)===`=`?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:`paragraph`,raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:`text`,raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:`escape`,raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:`html`,raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=_i(e.slice(0,-1),`\\`);if((e.length-t.length)%2==0)return}else{let e=vi(t[2],`()`);if(e===-2)return;if(e>-1){let n=(t[0].indexOf(`!`)===0?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=``}}let n=t[2],r=``;if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):``;return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),yi(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,`$1`),title:r&&r.replace(this.rules.inline.anyPunctuation,`$1`)},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,` `).toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:`text`,raw:e,text:e}}return yi(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=``){let r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!(r[1]||r[2])||!n||this.rules.inline.punctuation.exec(n))){let n=[...r[0]].length-1,i,a,o=n,s=0,c=r[0][0]===`*`?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+n);(r=c.exec(t))!=null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i)continue;if(a=[...i].length,r[3]||r[4]){o+=a;continue}else if((r[5]||r[6])&&n%3&&!((n+a)%3)){s+=a;continue}if(o-=a,o>0)continue;a=Math.min(a,a+o+s);let t=[...r[0]][0].length,c=e.slice(0,n+r.index+t+a);if(Math.min(n,a)%2){let e=c.slice(1,-1);return{type:`em`,raw:c,text:e,tokens:this.lexer.inlineTokens(e)}}let l=c.slice(2,-2);return{type:`strong`,raw:c,text:l,tokens:this.lexer.inlineTokens(l)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal,` `),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:`codespan`,raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:`br`,raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:`del`,raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return t[2]===`@`?(e=t[1],n=`mailto:`+e):(e=t[1],n=e),{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if(t[2]===`@`)e=t[0],n=`mailto:`+e;else{let r;do r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??``;while(r!==t[0]);e=t[0],n=t[1]===`www.`?`http://`+t[0]:t[0]}return{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:`text`,raw:t[0],text:t[0],escaped:e}}}},X=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||ar,this.options.tokenizer=this.options.tokenizer||new xi,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Y,block:ui.normal,inline:di.normal};this.options.pedantic?(t.block=ui.pedantic,t.inline=di.pedantic):this.options.gfm&&(t.block=ui.gfm,this.options.breaks?t.inline=di.breaks:t.inline=di.gfm),this.tokenizer.rules=t}static get rules(){return{block:ui,inline:di}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(Y.carriageReturn,` -`),this.blockTokens(e,this.tokens);for(let e=0;e(r=n.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let n=t.at(-1);r.raw.length===1&&n!==void 0?n.raw+=` -`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(` -`)?``:` -`)+r.raw,n.text+=` -`+r.text,this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(` -`)?``:` -`)+r.raw,n.text+=` -`+r.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let t=1/0,n=e.slice(1),r;this.options.extensions.startBlock.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let a=t.at(-1);n&&a?.type===`paragraph`?(a.raw+=(a.raw.endsWith(` -`)?``:` -`)+r.raw,a.text+=` -`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`text`?(n.raw+=(n.raw.endsWith(` -`)?``:` -`)+r.raw,n.text+=` -`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(e){let t=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(t);break}else throw Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,r=null;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)e.includes(r[0].slice(r[0].lastIndexOf(`[`)+1,-1))&&(n=n.slice(0,r.index)+`[`+`a`.repeat(r[0].length-2)+`]`+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,r.index)+`++`+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+`[`+`a`.repeat(r[0].length-i-2)+`]`+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let a=!1,o=``;for(;e;){a||(o=``),a=!1;let r;if(this.options.extensions?.inline?.some(n=>(r=n.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.escape(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.tag(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.link(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(r.raw.length);let n=t.at(-1);r.type===`text`&&n?.type===`text`?(n.raw+=r.raw,n.text+=r.text):t.push(r);continue}if(r=this.tokenizer.emStrong(e,n,o)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.codespan(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.br(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.del(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.autolink(e)){e=e.substring(r.raw.length),t.push(r);continue}if(!this.state.inLink&&(r=this.tokenizer.url(e))){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startInline){let t=1/0,n=e.slice(1),r;this.options.extensions.startInline.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(r=this.tokenizer.inlineText(i)){e=e.substring(r.raw.length),r.raw.slice(-1)!==`_`&&(o=r.raw.slice(-1)),a=!0;let n=t.at(-1);n?.type===`text`?(n.raw+=r.raw,n.text+=r.text):t.push(r);continue}if(e){let t=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(t);break}else throw Error(t)}}return t}},Si=class{options;parser;constructor(e){this.options=e||ar}space(e){return``}code({text:e,lang:t,escaped:n}){let r=(t||``).match(Y.notSpaceStart)?.[0],i=e.replace(Y.endingNewline,``)+` -`;return r?`

`+(n?i:mi(i,!0))+`
-`:`
`+(n?i:mi(i,!0))+`
-`}blockquote({tokens:e}){return`
-${this.parser.parse(e)}
-`}html({text:e}){return e}def(e){return``}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)} -`}hr(e){return`
-`}list(e){let t=e.ordered,n=e.start,r=``;for(let t=0;t -`+r+` -`}listitem(e){return`
  • ${this.parser.parse(e.tokens)}
  • -`}checkbox({checked:e}){return` `}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    -`}table(e){let t=``,n=``;for(let t=0;t${r}`,` - -`+t+` -`+r+`
    -`}tablerow({text:e}){return` -${e} -`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+` -`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${mi(e,!0)}`}br(e){return`
    `}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=hi(e);if(i===null)return r;e=i;let a=`
    `+r+``,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=hi(e);if(i===null)return mi(n);e=i;let a=`${n}`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:mi(e.text)}},Ci=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},Z=class e{options;renderer;textRenderer;constructor(e){this.options=e||ar,this.options.renderer=this.options.renderer||new Si,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Ci}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){let t=``;for(let n=0;n{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new Si(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new xi(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new wi;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];wi.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async&&wi.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return X.lex(e,t??this.defaults)}parser(e,t){return Z.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer():e?X.lex:X.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser():e?Z.parse:Z.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer():e?X.lex:X.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser():e?Z.parse:Z.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=` -Please report this to https://github.com/markedjs/marked.`,e){let e=`

    An error occurred:

    `+mi(n.message+``,!0)+`
    `;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function Q(e,t){return Ti.parse(e,t)}Q.options=Q.setOptions=function(e){return Ti.setOptions(e),Q.defaults=Ti.defaults,or(Q.defaults),Q},Q.getDefaults=ir,Q.defaults=ar,Q.use=function(...e){return Ti.use(...e),Q.defaults=Ti.defaults,or(Q.defaults),Q},Q.walkTokens=function(e,t){return Ti.walkTokens(e,t)},Q.parseInline=Ti.parseInline,Q.Parser=Z,Q.parser=Z.parse,Q.Renderer=Si,Q.TextRenderer=Ci,Q.Lexer=X,Q.lexer=X.lex,Q.Tokenizer=xi,Q.Hooks=wi,Q.parse=Q,Q.options,Q.setOptions,Q.use,Q.walkTokens,Q.parseInline,Z.parse,X.lex;var Ei=1,$=new class{subscribers;toasts;dismissedToasts;constructor(){this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)});publish=e=>{this.subscribers.forEach(t=>t(e))};addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]};create=e=>{let{message:t,...n}=e,r=typeof e.id==`number`||e.id&&e.id?.length>0?e.id:Ei++,i=this.toasts.find(e=>e.id===r),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),i?this.toasts=this.toasts.map(n=>n.id===r?(this.publish({...n,...e,id:r,title:t}),{...n,...e,id:r,dismissible:a,title:t}):n):this.addToast({title:t,...n,dismissible:a,id:r}),r};dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(t=>t({id:e,dismiss:!0})))):this.toasts.forEach(e=>{this.subscribers.forEach(t=>t({id:e.id,dismiss:!0}))}),e);message=(e,t)=>this.create({...t,message:e,type:`default`});error=(e,t)=>this.create({...t,type:`error`,message:e});success=(e,t)=>this.create({...t,type:`success`,message:e});info=(e,t)=>this.create({...t,type:`info`,message:e});warning=(e,t)=>this.create({...t,type:`warning`,message:e});loading=(e,t)=>this.create({...t,type:`loading`,message:e});promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:`loading`,message:t.loading,description:typeof t.description==`function`?void 0:t.description}));let r=Promise.resolve(e instanceof Function?e():e),i=n!==void 0,a,o=r.then(async e=>{if(a=[`resolve`,e],I(e))i=!1,this.create({id:n,type:`default`,message:e});else if(Oi(e)&&!e.ok){i=!1;let r=typeof t.error==`function`?await t.error(`HTTP error! status: ${e.status}`):t.error,a=typeof t.description==`function`?await t.description(`HTTP error! status: ${e.status}`):t.description,o=typeof r==`object`&&!I(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}else if(e instanceof Error){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!I(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}else if(t.success!==void 0){i=!1;let r=typeof t.success==`function`?await t.success(e):t.success,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!I(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`success`,description:a,...o})}}).catch(async e=>{if(a=[`reject`,e],t.error!==void 0){i=!1;let r=typeof t.error==`function`?await t.error(e):t.error,a=typeof t.description==`function`?await t.description(e):t.description,o=typeof r==`object`&&!I(r)?r:{message:r||``,id:n||``};this.create({id:n,type:`error`,description:a,...o})}}).finally(()=>{i&&(this.dismiss(n),n=void 0),t.finally?.()}),s=()=>new Promise((e,t)=>o.then(()=>a[0]===`reject`?t(a[1]):e(a[1])).catch(t));return typeof n!=`string`&&typeof n!=`number`?{unwrap:s}:Object.assign(n,{unwrap:s})};custom=(e,t)=>{let n=t?.id||Ei++,r=this.toasts.find(e=>e.id===n),i=t?.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(n)&&this.dismissedToasts.delete(n),r?this.toasts=this.toasts.map(r=>r.id===n?(this.publish({...r,component:e,dismissible:i,id:n,...t}),{...r,component:e,dismissible:i,id:n,...t}):r):this.addToast({component:e,dismissible:i,id:n,...t}),n};getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id))};function Di(e,t){let n=t?.id||Ei++;return $.create({message:e,id:n,type:`default`,...t}),n}var Oi=e=>e&&typeof e==`object`&&`ok`in e&&typeof e.ok==`boolean`&&`status`in e&&typeof e.status==`number`,ki=Di,Ai=Object.assign(ki,{success:$.success,info:$.info,warning:$.warning,error:$.error,custom:$.custom,message:$.message,promise:$.promise,dismiss:$.dismiss,loading:$.loading},{getHistory:()=>$.toasts,getToasts:()=>$.getActiveToasts()});function ji(e){return e.label!==void 0}var Mi=3,Ni=`24px`,Pi=`16px`,Fi=4e3,Ii=356,Li=14,Ri=45,zi=200;function Bi(){let e=g(!1);return o(()=>{let t=()=>{e.value=document.hidden};return document.addEventListener(`visibilitychange`,t),()=>window.removeEventListener(`visibilitychange`,t)}),{isDocumentHidden:e}}function Vi(...e){return e.filter(Boolean).join(` `)}function Hi(e){let[t,n]=e.split(`-`),r=[];return t&&r.push(t),n&&r.push(n),r}function Ui(e,t){let n={};return[e,t].forEach((e,t)=>{let r=t===1,i=r?`--mobile-offset`:`--offset`,a=r?Pi:Ni;function o(e){[`top`,`right`,`bottom`,`left`].forEach(t=>{n[`${i}-${t}`]=typeof e==`number`?`${e}px`:e})}typeof e==`number`||typeof e==`string`?o(e):typeof e==`object`?[`top`,`right`,`bottom`,`left`].forEach(t=>{e[t]===void 0?n[`${i}-${t}`]=a:n[`${i}-${t}`]=typeof e[t]==`number`?`${e[t]}px`:e[t]}):o(a)}),n}var Wi=[`data-rich-colors`,`data-styled`,`data-mounted`,`data-promise`,`data-swiped`,`data-removed`,`data-visible`,`data-y-position`,`data-x-position`,`data-index`,`data-front`,`data-swiping`,`data-dismissible`,`data-type`,`data-invert`,`data-swipe-out`,`data-swipe-direction`,`data-expanded`,`data-testid`],Gi=[`aria-label`,`data-disabled`,`data-close-button-position`],Ki=k({__name:`Toast`,props:{toast:{},toasts:{},index:{},swipeDirections:{},expanded:{type:Boolean},invert:{type:Boolean},heights:{},gap:{},position:{},closeButtonPosition:{},visibleToasts:{},expandByDefault:{type:Boolean},closeButton:{type:Boolean},interacting:{type:Boolean},style:{},cancelButtonStyle:{},actionButtonStyle:{},duration:{},class:{},unstyled:{type:Boolean},descriptionClass:{},loadingIcon:{},classes:{},icons:{},closeButtonAriaLabel:{},defaultRichColors:{type:Boolean}},emits:[`update:heights`,`update:height`,`removeToast`],setup(t,{emit:a}){let s=t,c=a,l=g(null),u=g(null),d=g(!1),f=g(!1),m=g(!1),h=g(!1),_=g(!1),v=g(0),C=g(0),E=g(s.toast.duration||s.duration||Fi),D=g(null),k=g(null),A=O(()=>s.index===0),ne=O(()=>s.index+1<=s.visibleToasts),F=O(()=>s.toast.type),I=O(()=>s.toast.dismissible!==!1),ae=O(()=>s.toast.class||``),oe=O(()=>s.descriptionClass||``),se=O(()=>{let e=s.toast.position||s.position,t=s.heights.filter(t=>t.position===e).findIndex(e=>e.toastId===s.toast.id);return t>=0?t:0}),ce=O(()=>{let e=s.toast.position||s.position;return s.heights.filter(t=>t.position===e).reduce((e,t,n)=>n>=se.value?e:e+t.height,0)}),le=O(()=>se.value*s.gap+ce.value||0),ue=O(()=>s.toast.closeButton??s.closeButton),de=O(()=>s.toast.duration||s.duration||Fi),fe=g(0),pe=g(0),L=g(null),me=O(()=>s.position.split(`-`)),he=O(()=>me.value[0]),ge=O(()=>me.value[1]),_e=O(()=>typeof s.toast.title!=`string`),ve=O(()=>typeof s.toast.description!=`string`),{isDocumentHidden:ye}=Bi(),be=O(()=>F.value&&F.value===`loading`);re(()=>{d.value=!0,E.value=de.value}),o(async()=>{if(!d.value||!k.value)return;await p();let e=k.value,t=e.style.height;e.style.height=`auto`;let n=e.getBoundingClientRect().height;e.style.height=t,C.value=n,c(`update:height`,{toastId:s.toast.id,height:n,position:s.toast.position||s.position})});function xe(){f.value=!0,v.value=le.value,setTimeout(()=>{c(`removeToast`,s.toast)},zi)}function Se(){if(be.value||!I.value)return{};xe(),s.toast.onDismiss?.(s.toast)}function Ce(e){e.button!==2&&(be.value||!I.value||(D.value=new Date,v.value=le.value,e.target.setPointerCapture(e.pointerId),e.target.tagName!==`BUTTON`&&(m.value=!0,L.value={x:e.clientX,y:e.clientY})))}function we(){if(h.value||!I.value)return;L.value=null;let e=Number(k.value?.style.getPropertyValue(`--swipe-amount-x`).replace(`px`,``)||0),t=Number(k.value?.style.getPropertyValue(`--swipe-amount-y`).replace(`px`,``)||0),n=new Date().getTime()-(D.value?.getTime()||0),r=l.value===`x`?e:t,i=Math.abs(r)/n;if(Math.abs(r)>=Ri||i>.11){v.value=le.value,s.toast.onDismiss?.(s.toast),l.value===`x`?u.value=e>0?`right`:`left`:u.value=t>0?`down`:`up`,xe(),h.value=!0;return}else k.value?.style.setProperty(`--swipe-amount-x`,`0px`),k.value?.style.setProperty(`--swipe-amount-y`,`0px`);_.value=!1,m.value=!1,l.value=null}function Te(e){if(!L.value||!I.value||(window?.getSelection()?.toString()?.length??!1))return;let t=e.clientY-L.value.y,n=e.clientX-L.value.x,r=s.swipeDirections??Hi(s.position);!l.value&&(Math.abs(n)>1||Math.abs(t)>1)&&(l.value=Math.abs(n)>Math.abs(t)?`x`:`y`);let i={x:0,y:0},a=e=>1/(1.5+Math.abs(e)/20);if(l.value===`y`){if(r.includes(`top`)||r.includes(`bottom`))if(r.includes(`top`)&&t<0||r.includes(`bottom`)&&t>0)i.y=t;else{let e=t*a(t);i.y=Math.abs(e)0)i.x=n;else{let e=n*a(n);i.x=Math.abs(e)0||Math.abs(i.y)>0)&&(_.value=!0),k.value?.style.setProperty(`--swipe-amount-x`,`${i.x}px`),k.value?.style.setProperty(`--swipe-amount-y`,`${i.y}px`)}re(()=>{if(d.value=!0,!k.value)return;let e=k.value.getBoundingClientRect().height;C.value=e,c(`update:heights`,[{toastId:s.toast.id,height:e,position:s.toast.position},...s.heights])}),n(()=>{k.value&&c(`removeToast`,s.toast)}),o(e=>{if(s.toast.promise&&F.value===`loading`||s.toast.duration===1/0||s.toast.type===`loading`)return;let t;s.expanded||s.interacting||ye.value?(()=>{if(pe.value{s.toast.onAutoClose?.(s.toast),xe()},E.value)),e(()=>{clearTimeout(t)})}),i(()=>s.toast.delete,e=>{e!==void 0&&e&&(xe(),s.toast.onDismiss?.(s.toast))},{deep:!0});function Ee(){m.value=!1,l.value=null,L.value=null}return(t,n)=>(r(),P(`li`,{tabindex:`0`,ref_key:`toastRef`,ref:k,class:y(M(Vi)(s.class,ae.value,t.classes?.toast,t.toast.classes?.toast,t.classes?.[F.value],t.toast?.classes?.[F.value])),"data-sonner-toast":``,"data-rich-colors":t.toast.richColors??t.defaultRichColors,"data-styled":!(t.toast.component||t.toast?.unstyled||t.unstyled),"data-mounted":d.value,"data-promise":!!t.toast.promise,"data-swiped":_.value,"data-removed":f.value,"data-visible":ne.value,"data-y-position":he.value,"data-x-position":ge.value,"data-index":t.index,"data-front":A.value,"data-swiping":m.value,"data-dismissible":I.value,"data-type":F.value,"data-invert":t.toast.invert||t.invert,"data-swipe-out":h.value,"data-swipe-direction":u.value,"data-expanded":!!(t.expanded||t.expandByDefault&&d.value),"data-testid":t.toast.testId,style:te({"--index":t.index,"--toasts-before":t.index,"--z-index":t.toasts.length-t.index,"--offset":`${f.value?v.value:le.value}px`,"--initial-height":t.expandByDefault?`auto`:`${C.value}px`,...t.style,...s.toast.style}),onDragend:Ee,onPointerdown:Ce,onPointerup:we,onPointermove:Te},[ue.value&&!t.toast.component&&F.value!==`loading`?(r(),P(`button`,{key:0,"aria-label":t.closeButtonAriaLabel||`Close toast`,"data-disabled":be.value,"data-close-button":`true`,"data-close-button-position":t.closeButtonPosition,class:y(M(Vi)(t.classes?.closeButton,t.toast?.classes?.closeButton)),onClick:Se},[t.icons?.close?(r(),b(e(t.icons?.close),{key:0})):w(t.$slots,`close-icon`,{key:1})],10,Gi)):T(`v-if`,!0),t.toast.component?(r(),b(e(t.toast.component),ie({key:1},t.toast.componentProps,{onCloseToast:Se,isPaused:t.$props.expanded||t.$props.interacting||M(ye)}),null,16,[`isPaused`])):(r(),P(j,{key:2},[F.value!==`default`||t.toast.icon||t.toast.promise?(r(),P(`div`,{key:0,"data-icon":``,class:y(M(Vi)(t.classes?.icon,t.toast?.classes?.icon))},[t.toast.icon?(r(),b(e(t.toast.icon),{key:0})):(r(),P(j,{key:1},[F.value===`loading`?w(t.$slots,`loading-icon`,{key:0}):F.value===`success`?w(t.$slots,`success-icon`,{key:1}):F.value===`error`?w(t.$slots,`error-icon`,{key:2}):F.value===`warning`?w(t.$slots,`warning-icon`,{key:3}):F.value===`info`?w(t.$slots,`info-icon`,{key:4}):T(`v-if`,!0)],64))],2)):T(`v-if`,!0),N(`div`,{"data-content":``,class:y(M(Vi)(t.classes?.content,t.toast?.classes?.content))},[N(`div`,{"data-title":``,class:y(M(Vi)(t.classes?.title,t.toast.classes?.title))},[_e.value?(r(),b(e(t.toast.title),ee(ie({key:0},t.toast.componentProps)),null,16)):(r(),P(j,{key:1},[S(x(t.toast.title),1)],64))],2),t.toast.description?(r(),P(`div`,{key:0,"data-description":``,class:y(M(Vi)(t.descriptionClass,oe.value,t.classes?.description,t.toast.classes?.description))},[ve.value?(r(),b(e(t.toast.description),ee(ie({key:0},t.toast.componentProps)),null,16)):(r(),P(j,{key:1},[S(x(t.toast.description),1)],64))],2)):T(`v-if`,!0)],2),t.toast.cancel?(r(),P(`button`,{key:1,style:te(t.toast.cancelButtonStyle||t.cancelButtonStyle),class:y(M(Vi)(t.classes?.cancelButton,t.toast.classes?.cancelButton)),"data-button":``,"data-cancel":``,onClick:n[0]||=e=>{M(ji)(t.toast.cancel)&&I.value&&(t.toast.cancel.onClick?.(e),xe())}},x(M(ji)(t.toast.cancel)?t.toast.cancel?.label:t.toast.cancel),7)):T(`v-if`,!0),t.toast.action?(r(),P(`button`,{key:2,style:te(t.toast.actionButtonStyle||t.actionButtonStyle),class:y(M(Vi)(t.classes?.actionButton,t.toast.classes?.actionButton)),"data-button":``,"data-action":``,onClick:n[1]||=e=>{M(ji)(t.toast.action)&&(t.toast.action.onClick?.(e),!e.defaultPrevented&&xe())}},x(M(ji)(t.toast.action)?t.toast.action?.label:t.toast.action),7)):T(`v-if`,!0)],64))],46,Wi))}}),qi=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Ji={},Yi={xmlns:`http://www.w3.org/2000/svg`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stoke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Xi(e,t){return r(),P(`svg`,Yi,t[0]||=[N(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`},null,-1),N(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`},null,-1)])}var Zi=qi(Ji,[[`render`,Xi]]),Qi=[`data-visible`],$i={class:`sonner-spinner`},ea=k({__name:`Loader`,props:{visible:{type:Boolean}},setup(e){let t=Array(12).fill(0);return(e,n)=>(r(),P(`div`,{class:`sonner-loading-wrapper`,"data-visible":e.visible},[N(`div`,$i,[(r(!0),P(j,null,u(M(t),e=>(r(),P(`div`,{key:`spinner-bar-${e}`,class:`sonner-loading-bar`}))),128))])],8,Qi))}}),ta={},na={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function ra(e,t){return r(),P(`svg`,na,t[0]||=[N(`path`,{"fill-rule":`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z`,"clip-rule":`evenodd`},null,-1)])}var ia=qi(ta,[[`render`,ra]]),aa={},oa={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function sa(e,t){return r(),P(`svg`,oa,t[0]||=[N(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z`,"clip-rule":`evenodd`},null,-1)])}var ca=qi(aa,[[`render`,sa]]),la={},ua={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,height:`20`,width:`20`};function da(e,t){return r(),P(`svg`,ua,t[0]||=[N(`path`,{"fill-rule":`evenodd`,d:`M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z`,"clip-rule":`evenodd`},null,-1)])}var fa=qi(la,[[`render`,da]]),pa={},ma={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 20 20`,fill:`currentColor`,height:`20`,width:`20`};function ha(e,t){return r(),P(`svg`,ma,t[0]||=[N(`path`,{"fill-rule":`evenodd`,d:`M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z`,"clip-rule":`evenodd`},null,-1)])}var ga=qi(pa,[[`render`,ha]]),_a=[`aria-label`],va=[`data-sonner-theme`,`dir`,`data-theme`,`data-rich-colors`,`data-y-position`,`data-x-position`],ya=typeof window<`u`&&typeof document<`u`;function ba(){if(typeof window>`u`||typeof document>`u`)return`ltr`;let e=document.documentElement.getAttribute(`dir`);return e===`auto`||!e?window.getComputedStyle(document.documentElement).direction:e}var xa=k({name:`Toaster`,inheritAttrs:!1,__name:`Toaster`,props:{id:{},invert:{type:Boolean,default:!1},theme:{default:`light`},position:{default:`bottom-right`},closeButtonPosition:{default:`top-left`},hotkey:{default:()=>[`altKey`,`KeyT`]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},duration:{},gap:{default:Li},visibleToasts:{default:Mi},closeButton:{type:Boolean,default:!1},toastOptions:{default:()=>({})},class:{default:``},style:{},offset:{default:Ni},mobileOffset:{default:Pi},dir:{default:`auto`},swipeDirections:{},icons:{},containerAriaLabel:{default:`Notifications`}},setup(e){let t=e,n=l(),i=g([]),a=O(()=>t.id?i.value.filter(e=>e.toasterId===t.id):i.value.filter(e=>!e.toasterId));function s(e,t){return a.value.filter(n=>!n.position&&t===0||n.position===e)}let c=O(()=>{let e=a.value.filter(e=>e.position).map(e=>e.position);return e.length>0?Array.from(new Set([t.position].concat(e))):[t.position]}),d=O(()=>{let e={};return c.value.forEach(t=>{e[t]=i.value.filter(e=>e.position===t)}),e}),m=g([]),h=g({}),_=g(!1);o(()=>{c.value.forEach(e=>{e in h.value||(h.value[e]=!1)})});let v=g(t.theme===`system`?typeof window<`u`&&window.matchMedia&&window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:t.theme),x=g(null),S=g(null),E=g(!1),D=t.hotkey.join(`+`).replace(/Key/g,``).replace(/Digit/g,``);function ee(e){i.value.find(t=>t.id===e.id)?.delete||$.dismiss(e.id),i.value=i.value.filter(({id:t})=>t!==e.id),setTimeout(()=>{i.value.find(t=>t.id===e.id)||(m.value=m.value.filter(t=>t.toastId!==e.id))},zi+50)}function k(e){E.value&&!e.currentTarget?.contains?.(e.relatedTarget)&&(E.value=!1,S.value&&=(S.value.focus({preventScroll:!0}),null))}function A(e){e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||E.value||(E.value=!0,S.value=e.relatedTarget)}function ne(e){e.target&&e.target instanceof HTMLElement&&e.target.dataset.dismissible===`false`||(_.value=!0)}o(e=>{e($.subscribe(e=>{if(e.dismiss){requestAnimationFrame(()=>{i.value=i.value.map(t=>t.id===e.id?{...t,delete:!0}:t)});return}p(()=>{let t=i.value.findIndex(t=>t.id===e.id);t===-1?i.value=[e,...i.value]:i.value=[...i.value.slice(0,t),{...i.value[t],...e},...i.value.slice(t+1)]})}))}),o(e=>{if(typeof window>`u`)return;if(t.theme!==`system`){v.value=t.theme;return}let n=window.matchMedia(`(prefers-color-scheme: dark)`),r=e=>{v.value=e?`dark`:`light`};r(n.matches);let i=e=>{r(e.matches)};try{n.addEventListener(`change`,i)}catch{n.addListener(i)}e(()=>{try{n.removeEventListener(`change`,i)}catch{n.removeListener(i)}})}),o(()=>{x.value&&S.value&&(S.value.focus({preventScroll:!0}),S.value=null,E.value=!1)}),o(()=>{i.value.length<=1&&Object.keys(h.value).forEach(e=>{h.value[e]=!1})}),o(e=>{function n(e){let n=t.hotkey.every(t=>e[t]||e.code===t),r=Array.isArray(x.value)?x.value[0]:x.value;n&&(c.value.forEach(e=>{h.value[e]=!0}),r?.focus());let i=document.activeElement===x.value||r?.contains(document.activeElement);e.code===`Escape`&&i&&c.value.forEach(e=>{h.value[e]=!1})}ya&&(document.addEventListener(`keydown`,n),e(()=>{document.removeEventListener(`keydown`,n)}))});function F(e){let t=e.currentTarget,n=t.getAttribute(`data-y-position`)+`-`+t.getAttribute(`data-x-position`);h.value[n]=!0}function re(e){if(!_.value){let t=e.currentTarget,n=t.getAttribute(`data-y-position`)+`-`+t.getAttribute(`data-x-position`);h.value[n]=!1}}function I(){Object.keys(h.value).forEach(e=>{h.value[e]=!1})}function ae(){_.value=!1}function oe(e){m.value=e}function se(e){let t=m.value.findIndex(t=>t.toastId===e.toastId);if(t!==-1)m.value[t]=e;else{let t=m.value.findIndex(t=>t.position===e.position);t===-1?m.value.unshift(e):m.value.splice(t,0,e)}}return(e,i)=>(r(),P(j,null,[T(` Remove item from normal navigation flow, only available via hotkey `),N(`section`,{"aria-label":`${e.containerAriaLabel} ${M(D)}`,tabIndex:-1,"aria-live":`polite`,"aria-relevant":`additions text`,"aria-atomic":`false`},[(r(!0),P(j,null,u(c.value,(i,a)=>(r(),P(`ol`,ie({key:i,ref_for:!0,ref_key:`listRef`,ref:x,"data-sonner-toaster":``,"data-sonner-theme":v.value,class:t.class,dir:e.dir===`auto`?ba():e.dir,tabIndex:-1,"data-theme":e.theme,"data-rich-colors":e.richColors,"data-y-position":i.split(`-`)[0],"data-x-position":i.split(`-`)[1],style:{"--front-toast-height":`${m.value[0]?.height||0}px`,"--width":`${M(Ii)}px`,"--gap":`${e.gap}px`,...e.style,...M(n).style,...M(Ui)(e.offset,e.mobileOffset)}},{ref_for:!0},e.$attrs,{onBlur:k,onFocus:A,onMouseenter:F,onMousemove:F,onMouseleave:re,onDragend:I,onPointerdown:ne,onPointerup:ae}),[(r(!0),P(j,null,u(s(i,a),(n,a)=>(r(),b(Ki,{key:n.id,heights:m.value,icons:e.icons,index:a,toast:n,defaultRichColors:e.richColors,duration:e.toastOptions?.duration??e.duration,class:y(e.toastOptions?.class??``),descriptionClass:e.toastOptions?.descriptionClass,invert:e.invert,visibleToasts:e.visibleToasts,closeButton:e.toastOptions?.closeButton??e.closeButton,interacting:_.value,position:i,closeButtonPosition:e.toastOptions?.closeButtonPosition??e.closeButtonPosition,style:te(e.toastOptions?.style),unstyled:e.toastOptions?.unstyled,classes:e.toastOptions?.classes,cancelButtonStyle:e.toastOptions?.cancelButtonStyle,actionButtonStyle:e.toastOptions?.actionButtonStyle,"close-button-aria-label":e.toastOptions?.closeButtonAriaLabel,toasts:d.value[i],expandByDefault:e.expand,gap:e.gap,expanded:h.value[i]||!1,swipeDirections:t.swipeDirections,"onUpdate:heights":oe,"onUpdate:height":se,onRemoveToast:ee},{"close-icon":f(()=>[w(e.$slots,`close-icon`,{},()=>[C(Zi)])]),"loading-icon":f(()=>[w(e.$slots,`loading-icon`,{},()=>[C(ea,{visible:n.type===`loading`},null,8,[`visible`])])]),"success-icon":f(()=>[w(e.$slots,`success-icon`,{},()=>[C(ia)])]),"error-icon":f(()=>[w(e.$slots,`error-icon`,{},()=>[C(ga)])]),"warning-icon":f(()=>[w(e.$slots,`warning-icon`,{},()=>[C(fa)])]),"info-icon":f(()=>[w(e.$slots,`info-icon`,{},()=>[C(ca)])]),_:2},1032,[`heights`,`icons`,`index`,`toast`,`defaultRichColors`,`duration`,`class`,`descriptionClass`,`invert`,`visibleToasts`,`closeButton`,`interacting`,`position`,`closeButtonPosition`,`style`,`unstyled`,`classes`,`cancelButtonStyle`,`actionButtonStyle`,`close-button-aria-label`,`toasts`,`expandByDefault`,`gap`,`expanded`,`swipeDirections`]))),128))],16,va))),128))],8,_a)],2112))}});export{Ce as A,oe as B,pe as C,be as D,ge as E,L as F,Ae as I,je as L,Oe as M,De as N,xe as O,ke as P,fe as R,Fe as S,he as T,Ln as _,Jn as a,Pn as b,Qn as c,rr as d,Hn as f,Fn as g,Nn as h,qn as i,ye as j,we as k,nr as l,An as m,Ai as n,Yn as o,Gn as p,Q as r,Zn as s,xa as t,$n as u,jn as v,me as w,We as x,Mn as y,le as z}; \ No newline at end of file diff --git a/docs/assets/vendor-pinia-L_8CmDWM.js b/docs/assets/vendor-pinia-L_8CmDWM.js deleted file mode 100644 index f2bcc0a..0000000 --- a/docs/assets/vendor-pinia-L_8CmDWM.js +++ /dev/null @@ -1 +0,0 @@ -import{$n as e,Fn as t,Gn as n,Hn as r,Kn as i,Sn as a,Un as o,Vn as s,Wn as c,Yn as l,_n as u,on as d,qn as f,tr as p,vn as m}from"./game-logic-BBFCPVtv.js";var h=typeof window<`u`,g,_=e=>g=e,v=Symbol();function y(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var b;(function(e){e.direct=`direct`,e.patchObject=`patch object`,e.patchFunction=`patch function`})(b||={});var x=(()=>typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null})();function S(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function C(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){O(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function w(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function T(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var E=typeof navigator==`object`?navigator:{userAgent:``},D=(()=>/Macintosh/.test(E.userAgent)&&/AppleWebKit/.test(E.userAgent)&&!/Safari/.test(E.userAgent))(),O=h?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!D?k:`msSaveOrOpenBlob`in E?A:j:()=>{};function k(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?T(r):w(r.href)?C(e,t,n):(r.target=`_blank`,T(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){T(r)},0))}function A(e,t=`download`,n){if(typeof e==`string`)if(w(e))C(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){T(t)})}else navigator.msSaveOrOpenBlob(S(e,n),t)}function j(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return C(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(x.HTMLElement))||`safari`in x,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||D)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:ee}=Object;function M(){let e=s(!0),t=e.run(()=>l({})),r=[],i=[],a=n({install(e){_(a),a._a=e,e.provide(v,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:e,_s:new Map,state:t});return a}var N=()=>{};function P(e,t,n,a=N){e.add(t);let o=()=>{e.delete(t)&&a()};return!n&&r()&&i(o),o}function F(e,...t){e.forEach(e=>{e(...t)})}var I=e=>e(),L=Symbol(),R=Symbol();function z(e,t){for(let n in e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e),t){if(!t.hasOwnProperty(n))continue;let r=t[n],i=e[n];y(i)&&y(r)&&e.hasOwnProperty(n)&&!c(r)&&!o(r)?e[n]=z(i,r):e[n]=r}return e}var B=Symbol();function V(e){return!y(e)||!Object.prototype.hasOwnProperty.call(e,B)}var{assign:H}=Object;function U(e){return!!(c(e)&&e.effect)}function W(e,t,r,i){let{state:a,actions:o,getters:s}=t,c=r.state.value[e],l;function u(){return c||(r.state.value[e]=a?a():{}),H(p(r.state.value[e]),o,Object.keys(s||{}).reduce((t,i)=>(t[i]=n(d(()=>{_(r);let t=r._s.get(e);return s[i].call(t,t)})),t),{}))}return l=G(e,u,t,r,i,!0),l}function G(n,r,i={},u,d,p){let m,h=H({actions:{}},i),g={deep:!0},v,y,x=new Set,S=new Set,C=u.state.value[n];!p&&!C&&(u.state.value[n]={}),l({});let w;function T(e){let t;v=y=!1,typeof e==`function`?(e(u.state.value[n]),t={type:b.patchFunction,storeId:n,events:void 0}):(z(u.state.value[n],e),t={type:b.patchObject,payload:e,storeId:n,events:void 0});let r=w=Symbol();a().then(()=>{w===r&&(v=!0)}),y=!0,F(x,t,u.state.value[n])}let E=p?function(){let{state:e}=i,t=e?e():{};this.$patch(e=>{H(e,t)})}:N;function D(){m.stop(),x.clear(),S.clear(),u._s.delete(n)}let O=(e,t=``)=>{if(L in e)return e[R]=t,e;let r=function(){_(u);let t=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function s(e){a.add(e)}F(S,{args:t,name:r[R],store:k,after:o,onError:s});let c;try{c=e.apply(this&&this.$id===n?this:k,t)}catch(e){throw F(a,e),e}return c instanceof Promise?c.then(e=>(F(i,e),e)).catch(e=>(F(a,e),Promise.reject(e))):(F(i,c),c)};return r[L]=!0,r[R]=t,r},k=f({_p:u,$id:n,$onAction:P.bind(null,S),$patch:T,$reset:E,$subscribe(e,r={}){let i=P(x,e,r.detached,()=>a()),a=m.run(()=>t(()=>u.state.value[n],t=>{(r.flush===`sync`?y:v)&&e({storeId:n,type:b.direct,events:void 0},t)},H({},g,r)));return i},$dispose:D});u._s.set(n,k);let A=(u._a&&u._a.runWithContext||I)(()=>u._e.run(()=>(m=s()).run(()=>r({action:O}))));for(let e in A){let t=A[e];c(t)&&!U(t)||o(t)?p||(C&&V(t)&&(c(t)?t.value=C[e]:z(t,C[e])),u.state.value[n][e]=t):typeof t==`function`&&(A[e]=O(t,e),h.actions[e]=t)}return H(k,A),H(e(k),A),Object.defineProperty(k,`$state`,{get:()=>u.state.value[n],set:e=>{T(t=>{H(t,e)})}}),u._p.forEach(e=>{H(k,m.run(()=>e({store:k,app:u._a,pinia:u,options:h})))}),C&&p&&i.hydrate&&i.hydrate(k.$state,C),v=!0,y=!0,k}function K(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=u();return n||=o?m(v,null):null,n&&_(n),n=g,n._s.has(e)||(i?G(e,t,r,n):W(e,r,n)),n._s.get(e)}return a.$id=e,a}function q(e,t){if(e==null)return;let n=e;for(let e=0;e1&&(t=J(typeof e!=`object`||!e||!Object.prototype.hasOwnProperty.call(e,r)?Number.isInteger(Number(n[1]))?[]:{}:e[r],t,Array.prototype.slice.call(n,1))),Number.isInteger(Number(r))&&Array.isArray(e)?e.slice()[r]:Object.assign({},e,{[r]:t})}function Y(e,t){if(e==null||t.length===0)return e;if(t.length===1){if(e==null)return e;if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.slice.call(e,0).splice(t[0],1);let n={};for(let t in e)n[t]=e[t];return delete n[t[0]],n}if(e[t[0]]==null){if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.concat.call([],e);let n={};for(let t in e)n[t]=e[t];return n}return J(e,Y(e[t[0]],Array.prototype.slice.call(t,1)),[t[0]])}function X(e,t){return t.map(e=>e.split(`.`)).map(t=>[t,q(e,t)]).filter(e=>e[1]!==void 0).reduce((e,t)=>J(e,t[1],t[0]),{})}function Z(e,t){return t.map(e=>e.split(`.`)).reduce((e,t)=>Y(e,t),e)}function Q(e,{storage:t,serializer:n,key:r,debug:i,pick:a,omit:o,beforeHydrate:s,afterHydrate:c},l,u=!0){try{u&&s?.(l);let i=t.getItem(r);if(i){let t=n.deserialize(i),r=a?X(t,a):t,s=o?Z(r,o):r;e.$patch(s)}u&&c?.(l)}catch(e){i&&console.error(`[pinia-plugin-persistedstate]`,e)}}function $(e,{storage:t,serializer:n,key:r,debug:i,pick:a,omit:o}){try{let i=a?X(e,a):e,s=o?Z(i,o):i,c=n.serialize(s);t.setItem(r,c)}catch(e){i&&console.error(`[pinia-plugin-persistedstate]`,e)}}function te(e,t){return typeof e==`function`?e(t):typeof e==`string`?e:t}function ne(e,t,n){let{pinia:r,store:i,options:{persist:a=n}}=e;if(!a)return;if(!(i.$id in r.state.value)){let e=r._s.get(i.$id.replace(`__hot:`,``));e&&Promise.resolve().then(()=>e.$persist());return}let o=(Array.isArray(a)?a:a===!0?[{}]:[a]).map(t);i.$hydrate=({runHooks:t=!0}={})=>{o.forEach(n=>{Q(i,n,e,t)})},i.$persist=()=>{o.forEach(e=>{$(i.$state,e)})},o.forEach(t=>{Q(i,t,e),i.$subscribe((e,n)=>$(n,t),{detached:!0})})}function re(e={}){return function(t){ne(t,n=>{let r=te(n.key,t.store.$id);return{key:(e.key?e.key:e=>e)(r),debug:n.debug??e.debug??!1,serializer:n.serializer??e.serializer??{serialize:e=>JSON.stringify(e),deserialize:e=>JSON.parse(e)},storage:n.storage??e.storage??window.localStorage,beforeHydrate:n.beforeHydrate??e.beforeHydrate,afterHydrate:n.afterHydrate??e.afterHydrate,pick:n.pick,omit:n.omit}},e.auto??!1)}}var ie=re();export{M as n,K as r,ie as t}; \ No newline at end of file diff --git a/docs/assets/vendor-reka-ui-DR3m_AkV.js b/docs/assets/vendor-reka-ui-DR3m_AkV.js deleted file mode 100644 index dd6e2cc..0000000 --- a/docs/assets/vendor-reka-ui-DR3m_AkV.js +++ /dev/null @@ -1,8 +0,0 @@ -import{An as e,Cn as t,Dn as n,En as r,Fn as i,Gn as a,In as o,Ln as s,Nn as c,On as l,Pn as u,Qn as d,Rn as f,Sn as p,Tn as m,Yn as h,Yt as g,an as _,bn as v,cn as y,cr as b,dn as x,en as S,er as C,fn as w,gn as T,hn as E,in as ee,ir as D,jn as te,kn as O,ln as k,lr as ne,mn as re,nn as ie,nr as A,on as j,or as M,pn as N,qn as ae,rn as oe,rr as P,sn as se,sr as ce,tn as F,tr as I,un as L,vn as le,wn as R,xn as z}from"./game-logic-BBFCPVtv.js";import{A as ue,C as de,D as B,E as fe,F as pe,I as me,L as he,M as ge,N as _e,O as ve,P as ye,R as be,S as xe,T as Se,_ as Ce,b as we,f as Te,g as Ee,h as De,j as Oe,k as ke,m as Ae,p as je,v as Me,w as Ne,x as Pe,y as Fe}from"./vendor-others-Bce0hM6h.js";function Ie(e,t=-1/0,n=1/0){return Math.min(n,Math.max(t,e))}function V(e,t){let r=typeof e==`string`&&!t?`${e}Context`:t,i=Symbol(r);return[t=>{let n=le(i,t);if(n||n===null)return n;throw Error(`Injection \`${i.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(`, `)}`:`\`${e}\``}`)},e=>(n(i,e),e)]}function H(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}function Le(e,t,n){let r=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&r.addEventListener(e,t,{once:!0}),r.dispatchEvent(i)}function Re(e){return e==null}function ze(e,t){return Re(e)?!1:Array.isArray(e)?e.some(e=>be(e,t)):be(e,t)}function Be(e){return e?e.flatMap(e=>e.type===oe?Be(e.children):[e]):[]}var[Ve,He]=V(`ConfigProvider`),Ue=B?window:void 0;B&&window.document,B&&window.navigator,B&&window.location;function U(e){let t=A(e);return t?.$el??t}function We(...e){let t=[],n=()=>{t.forEach(e=>e()),t.length=0},r=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),i=j(()=>{let t=_e(A(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0}),a=he(()=>[i.value?.map(e=>U(e))??[Ue].filter(e=>e!=null),_e(A(i.value?e[1]:e[0])),_e(P(i.value?e[2]:e[1])),A(i.value?e[3]:e[2])],([e,i,a,o])=>{if(n(),!e?.length||!i?.length||!a?.length)return;let s=ue(o)?{...o}:o;t.push(...e.flatMap(e=>i.flatMap(t=>a.map(n=>r(e,t,n,s)))))},{flush:`post`});return pe(n),()=>{a(),n()}}function Ge(){let e=d(!1),t=re();return t&&R(()=>{e.value=!0},t),e}function Ke(e){let t=Ge();return j(()=>(t.value,!!e()))}function qe(e){return typeof e==`function`?e:typeof e==`string`?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Je(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]==`object`?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);let{target:i=Ue,eventName:a=`keydown`,passive:o=!1,dedupe:s=!1}=r,c=qe(t);return We(i,a,e=>{e.repeat&&A(s)||c(e)&&n(e)},o)}function Ye(e){return JSON.parse(JSON.stringify(e))}function Xe(e,t,n={}){let{window:r=Ue,...a}=n,o,s=Ke(()=>r&&`ResizeObserver`in r),c=()=>{o&&=(o.disconnect(),void 0)},l=i(j(()=>{let t=A(e);return Array.isArray(t)?t.map(e=>U(e)):[U(t)]}),e=>{if(c(),s.value&&r){o=new ResizeObserver(t);for(let t of e)t&&o.observe(t,a)}},{immediate:!0,flush:`post`}),u=()=>{c(),l()};return pe(u),{isSupported:s,stop:u}}function W(e,t,n,r={}){let{clone:a=!1,passive:o=!1,eventName:s,deep:c=!1,defaultValue:l,shouldEmit:u}=r,d=re(),f=n||d?.emit||(d?.$emit)?.bind(d)||(d?.proxy?.$emit)?.bind(d?.proxy),m=s;t||=`modelValue`,m||=`update:${t.toString()}`;let g=e=>a?typeof a==`function`?a(e):Ye(e):e,_=()=>ve(e[t])?g(e[t]):l,v=e=>{u?u(e)&&f(m,e):f(m,e)};if(o){let n=h(_()),r=!1;return i(()=>e[t],e=>{r||(r=!0,n.value=g(e),p(()=>r=!1))}),i(n,n=>{!r&&(n!==e[t]||c)&&v(n)},{deep:c}),n}else return j({get(){return _()},set(e){v(e)}})}var Ze=fe(()=>{let e=h(new Map),t=h(),n=j(()=>{for(let t of e.value.values())if(t)return!0;return!1}),r=Ve({scrollBody:h(!0)}),a=null,o=()=>{document.body.style.paddingRight=``,document.body.style.marginRight=``,document.body.style.pointerEvents=``,document.documentElement.style.removeProperty(`--scrollbar-width`),document.body.style.overflow=t.value??``,ke&&a?.(),t.value=void 0};return i(n,(e,n)=>{if(!B)return;if(!e){n&&o();return}t.value===void 0&&(t.value=document.body.style.overflow);let i=window.innerWidth-document.documentElement.clientWidth,s={padding:i,margin:0},c=r.scrollBody?.value?typeof r.scrollBody.value==`object`?xe({padding:r.scrollBody.value.padding===!0?i:r.scrollBody.value.padding,margin:r.scrollBody.value.margin===!0?i:r.scrollBody.value.margin},s):s:{padding:0,margin:0};i>0&&(document.body.style.paddingRight=typeof c.padding==`number`?`${c.padding}px`:String(c.padding),document.body.style.marginRight=typeof c.margin==`number`?`${c.margin}px`:String(c.margin),document.documentElement.style.setProperty(`--scrollbar-width`,`${i}px`),document.body.style.overflow=`hidden`),ke&&(a=We(document,`touchmove`,e=>et(e),{passive:!1})),p(()=>{document.body.style.pointerEvents=`none`,document.body.style.overflow=`hidden`})},{immediate:!0,flush:`sync`}),e});function Qe(e){let t=Math.random().toString(36).substring(2,7),n=Ze();n.value.set(t,e??!1);let r=j({get:()=>n.value.get(t)??!1,set:e=>n.value.set(t,e)});return ye(()=>{n.value.delete(t)}),r}function $e(e){let t=window.getComputedStyle(e);if(t.overflowX===`scroll`||t.overflowY===`scroll`||t.overflowX===`auto`&&e.clientWidth1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}function tt(e){let t=Ve({dir:h(`ltr`)});return j(()=>e?.value||t.dir?.value||`ltr`)}function nt(e){let t=re(),n=t?.type.emits,r={};return n?.length||console.warn(`No emitted event found. Please check component: ${t?.type.__name}`),n?.forEach(t=>{r[ne(D(t))]=(...n)=>e(t,...n)}),r}var rt=0;function it(){o(e=>{if(!B)return;let t=document.querySelectorAll(`[data-reka-focus-guard]`);document.body.insertAdjacentElement(`afterbegin`,t[0]??at()),document.body.insertAdjacentElement(`beforeend`,t[1]??at()),rt++,e(()=>{rt===1&&document.querySelectorAll(`[data-reka-focus-guard]`).forEach(e=>e.remove()),rt--})})}function at(){let e=document.createElement(`span`);return e.setAttribute(`data-reka-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}function ot(e){return j(()=>A(e)?!!U(e)?.closest(`form`):!0)}function G(){let e=re(),t=h(),n=j(()=>[`#text`,`#comment`].includes(t.value?.$el.nodeName)?t.value?.$el.nextElementSibling:U(t)),r=Object.assign({},e.exposed),i={};for(let t in e.props)Object.defineProperty(i,t,{enumerable:!0,configurable:!0,get:()=>e.props[t]});if(Object.keys(r).length>0)for(let e in r)Object.defineProperty(i,e,{enumerable:!0,configurable:!0,get:()=>r[e]});Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=i;function a(n){t.value=n,n&&(Object.defineProperty(i,`$el`,{enumerable:!0,configurable:!0,get:()=>n instanceof Element?n:n.$el}),e.exposed=i)}return{forwardRef:a,currentRef:t,currentElement:n}}function st(e){let t=re(),n=Object.keys(t?.type.props??{}).reduce((e,n)=>{let r=(t?.type.props[n]).default;return r!==void 0&&(e[n]=r),e},{}),r=C(e);return j(()=>{let e={},i=t?.vnode.props??{};return Object.keys(i).forEach(t=>{e[D(t)]=i[t]}),Object.keys({...n,...e}).reduce((e,t)=>(r.value[t]!==void 0&&(e[t]=r.value[t]),e),{})})}function ct(e,t){let n=st(e),r=t?nt(t):{};return j(()=>({...n.value,...r}))}function lt(e,t){let n=ge(!1,300),r=h(null),i=Ne();function a(){r.value=null,n.value=!1}function s(e,t){let i=e.currentTarget,a={x:e.clientX,y:e.clientY},o=dt(a,ut(a,i.getBoundingClientRect())),s=ft(t.getBoundingClientRect());r.value=mt([...o,...s]),n.value=!0}return o(n=>{if(e.value&&t.value){let r=e=>s(e,t.value),i=t=>s(t,e.value);e.value.addEventListener(`pointerleave`,r),t.value.addEventListener(`pointerleave`,i),n(()=>{e.value?.removeEventListener(`pointerleave`,r),t.value?.removeEventListener(`pointerleave`,i)})}}),o(n=>{if(r.value){let o=n=>{if(!r.value||!(n.target instanceof Element))return;let o=n.target,s={x:n.clientX,y:n.clientY},c=e.value?.contains(o)||t.value?.contains(o),l=!pt(s,r.value),u=!!o.closest(`[data-grace-area-trigger]`);c?a():(l||u)&&(a(),i.trigger())};e.value?.ownerDocument.addEventListener(`pointermove`,o),n(()=>e.value?.ownerDocument.removeEventListener(`pointermove`,o))}}),{isPointerInTransit:n,onPointerExit:i.on}}function ut(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function dt(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function ft(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function pt(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function mt(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y?1:0),ht(t)}function ht(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}function gt(e){let t;i(()=>U(e),e=>{e?t=Pe(e):t&&t()}),m(()=>{t&&t()})}var _t=0;function K(e,t=`reka`){if(e)return e;if(`useId`in g)return`${t}-${c?.()}`;let n=Ve({useId:void 0});return n.useId?`${t}-${n.useId()}`:`${t}-${++_t}`}function vt(e){let t=h(),n=j(()=>t.value?.width??0),r=j(()=>t.value?.height??0);return R(()=>{let n=U(e);if(n){t.value={width:n.offsetWidth,height:n.offsetHeight};let e=new ResizeObserver(e=>{if(!Array.isArray(e)||!e.length)return;let r=e[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=n.offsetWidth,a=n.offsetHeight;t.value={width:i,height:a}});return e.observe(n,{box:`border-box`}),()=>e.unobserve(n)}else t.value=void 0}),{width:n,height:r}}function yt(e,t){let n=h(e);function r(e){return t[n.value][e]??n.value}return{state:n,dispatch:e=>{n.value=r(e)}}}function bt(e){let t=ge(``,1e3);return{search:t,handleTypeaheadSearch:(n,r)=>{if(t.value+=n,e)e(n);else{let e=H(),n=r.map(e=>({...e,textValue:e.value?.textValue??e.ref.textContent?.trim()??``})),i=n.find(t=>t.ref===e),a=St(n.map(e=>e.textValue),t.value,i?.textValue),o=n.find(e=>e.textValue===a);return o&&o.ref.focus(),o?.ref}},resetTypeahead:()=>{t.value=``}}}function xt(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function St(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=xt(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function Ct(e,t){let n=h({}),r=h(`none`),a=h(e),o=e.value?`mounted`:`unmounted`,s,c=t.value?.ownerDocument.defaultView??Ue,{state:l,dispatch:u}=yt(o,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}}),d=e=>{if(B){let n=new CustomEvent(e,{bubbles:!1,cancelable:!1});t.value?.dispatchEvent(n)}};i(e,async(e,i)=>{let a=i!==e;if(await p(),a){let a=r.value,o=wt(t.value);e?(u(`MOUNT`),d(`enter`),o===`none`&&d(`after-enter`)):o===`none`||o===`undefined`||n.value?.display===`none`?(u(`UNMOUNT`),d(`leave`),d(`after-leave`)):i&&a!==o?(u(`ANIMATION_OUT`),d(`leave`)):(u(`UNMOUNT`),d(`after-leave`))}},{immediate:!0});let f=e=>{let n=wt(t.value),r=n.includes(CSS.escape(e.animationName)),i=l.value===`mounted`?`enter`:`leave`;if(e.target===t.value&&r&&(d(`after-${i}`),u(`ANIMATION_END`),!a.value)){let e=t.value.style.animationFillMode;t.value.style.animationFillMode=`forwards`,s=c?.setTimeout(()=>{t.value?.style.animationFillMode===`forwards`&&(t.value.style.animationFillMode=e)})}e.target===t.value&&n===`none`&&u(`ANIMATION_END`)},g=e=>{e.target===t.value&&(r.value=wt(t.value))},_=i(t,(e,t)=>{e?(n.value=getComputedStyle(e),e.addEventListener(`animationstart`,g),e.addEventListener(`animationcancel`,f),e.addEventListener(`animationend`,f)):(u(`ANIMATION_END`),s!==void 0&&c?.clearTimeout(s),t?.removeEventListener(`animationstart`,g),t?.removeEventListener(`animationcancel`,f),t?.removeEventListener(`animationend`,f))},{immediate:!0}),v=i(l,()=>{let e=wt(t.value);r.value=l.value===`mounted`?e:`none`});return m(()=>{_(),v()}),{isPresent:j(()=>[`mounted`,`unmountSuspended`].includes(l.value))}}function wt(e){return e&&getComputedStyle(e).animationName||`none`}var Tt=N({name:`Presence`,props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){let{present:r,forceMount:i}=I(e),a=h(),{isPresent:o}=Ct(r,a);n({present:o});let s=t.default({present:o.value});s=Be(s||[]);let c=re();if(s&&s?.length>1){let e=c?.parent?.type.name?`<${c.parent.type.name} />`:`component`;throw Error([`Detected an invalid children for \`${e}\` for \`Presence\` component.`,``,"Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.",`You can apply a few solutions:`,["Provide a single child element so that `presence` directive attach correctly.",`Ensure the first child is an actual element instead of a raw text node or comment node.`].map(e=>` - ${e}`).join(` -`)].join(` -`))}return()=>i.value||r.value||o.value?T(t.default({present:o.value})[0],{ref:e=>{let t=U(e);return t?.hasAttribute===void 0||(t?.hasAttribute(`data-reka-popper-content-wrapper`)?a.value=t.firstElementChild:a.value=t),t}}):null}}),Et=N({name:`PrimitiveSlot`,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{if(!n.default)return null;let e=Be(n.default()),r=e.findIndex(e=>e.type!==ie);if(r===-1)return e;let i=e[r];delete i.props?.ref;let a=i.props?z(t,i.props):t,o=_({...i,props:{}},a);return e.length===1?o:(e[r]=o,e)}}}),Dt=[`area`,`img`,`input`],q=N({name:`Primitive`,inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:`div`}},setup(e,{attrs:t,slots:n}){let r=e.asChild?`template`:e.as;return typeof r==`string`&&Dt.includes(r)?()=>T(r,t):r===`template`?()=>T(Et,t,{default:n.default}):()=>T(e.as,t,{default:n.default})}});function Ot(){let e=h();return{primitiveElement:e,currentElement:j(()=>[`#text`,`#comment`].includes(e.value?.$el.nodeName)?e.value?.$el.nextElementSibling:U(e))}}var[J,kt]=V(`DialogRoot`),At=N({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=W(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=h(),a=h(),{modal:o}=I(n);return kt({open:r,modal:o,openModal:()=>{r.value=!0},onOpenChange:e=>{r.value=e},onOpenToggle:()=>{r.value=!r.value},contentId:``,titleId:``,descriptionId:``,triggerElement:i,contentElement:a}),(e,t)=>O(e.$slots,`default`,{open:P(r),close:()=>r.value=!1})}}),jt=N({__name:`DialogClose`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;G();let n=J();return(e,i)=>(r(),y(P(q),z(t,{type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>P(n).onOpenChange(!1)}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`type`]))}}),Mt=`dismissableLayer.pointerDownOutside`,Nt=`dismissableLayer.focusOutside`;function Pt(e,t){let n=t.closest(`[data-dismissable-layer]`),r=e.dataset.dismissableLayer===``?e:e.querySelector(`[data-dismissable-layer]`),i=Array.from(e.ownerDocument.querySelectorAll(`[data-dismissable-layer]`));return!!(n&&(r===n||i.indexOf(r){});return o(o=>{if(!B||!A(n))return;let s=async n=>{let o=n.target;if(!(!t?.value||!o)){if(Pt(t.value,o)){i.value=!1;return}if(n.target&&!i.value){let t={originalEvent:n};function i(){Le(Mt,e,t)}n.pointerType===`touch`?(r.removeEventListener(`click`,a.value),a.value=i,r.addEventListener(`click`,a.value,{once:!0})):i()}else r.removeEventListener(`click`,a.value);i.value=!1}},c=window.setTimeout(()=>{r.addEventListener(`pointerdown`,s)},0);o(()=>{window.clearTimeout(c),r.removeEventListener(`pointerdown`,s),r.removeEventListener(`click`,a.value)})}),{onPointerDownCapture:()=>{A(n)&&(i.value=!0)}}}function It(e,t,n=!0){let r=t?.value?.ownerDocument??globalThis?.document,i=h(!1);return o(a=>{if(!B||!A(n))return;let o=async n=>{if(!t?.value)return;await p(),await p();let r=n.target;!t.value||!r||Pt(t.value,r)||n.target&&!i.value&&Le(Nt,e,{originalEvent:n})};r.addEventListener(`focusin`,o),a(()=>r.removeEventListener(`focusin`,o))}),{onFocusCapture:()=>{A(n)&&(i.value=!0)},onBlurCapture:()=>{A(n)&&(i.value=!1)}}}var Y=ae({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Lt=N({__name:`DismissableLayer`,props:{disableOutsidePointerEvents:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`dismiss`],setup(e,{emit:t}){let n=e,i=t,{forwardRef:a,currentElement:s}=G(),c=j(()=>s.value?.ownerDocument??globalThis.document),l=j(()=>Y.layersRoot),u=j(()=>s.value?Array.from(l.value).indexOf(s.value):-1),d=j(()=>Y.layersWithOutsidePointerEventsDisabled.size>0),m=j(()=>{let e=Array.from(l.value),[t]=[...Y.layersWithOutsidePointerEventsDisabled].slice(-1),n=e.indexOf(t);return u.value>=n}),h=Ft(async e=>{let t=[...Y.branches].some(t=>t?.contains(e.target));!m.value||t||(i(`pointerDownOutside`,e),i(`interactOutside`,e),await p(),e.defaultPrevented||i(`dismiss`))},s),g=It(e=>{[...Y.branches].some(t=>t?.contains(e.target))||(i(`focusOutside`,e),i(`interactOutside`,e),e.defaultPrevented||i(`dismiss`))},s);Je(`Escape`,e=>{u.value===l.value.size-1&&(i(`escapeKeyDown`,e),e.defaultPrevented||i(`dismiss`))});let _;return o(e=>{s.value&&(n.disableOutsidePointerEvents&&(Y.layersWithOutsidePointerEventsDisabled.size===0&&(_=c.value.body.style.pointerEvents,c.value.body.style.pointerEvents=`none`),Y.layersWithOutsidePointerEventsDisabled.add(s.value)),l.value.add(s.value),e(()=>{n.disableOutsidePointerEvents&&Y.layersWithOutsidePointerEventsDisabled.size===1&&(c.value.body.style.pointerEvents=_)}))}),o(e=>{e(()=>{s.value&&(l.value.delete(s.value),Y.layersWithOutsidePointerEventsDisabled.delete(s.value))})}),(e,t)=>(r(),y(P(q),{ref:P(a),"as-child":e.asChild,as:e.as,"data-dismissable-layer":``,style:ce({pointerEvents:d.value?m.value?`auto`:`none`:void 0}),onFocusCapture:P(g).onFocusCapture,onBlurCapture:P(g).onBlurCapture,onPointerdownCapture:P(h).onPointerDownCapture},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`style`,`onFocusCapture`,`onBlurCapture`,`onPointerdownCapture`]))}}),Rt=Se(()=>h([]));function zt(){let e=Rt();return{add(t){let n=e.value[0];t!==n&&n?.pause(),e.value=Bt(e.value,t),e.value.unshift(t)},remove(t){e.value=Bt(e.value,t),e.value[0]?.resume()}}}function Bt(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Vt(e){return e.filter(e=>e.tagName!==`A`)}var Ht=`focusScope.autoFocusOnMount`,Ut=`focusScope.autoFocusOnUnmount`,Wt={bubbles:!1,cancelable:!0};function Gt(e,{select:t=!1}={}){let n=H();for(let r of e)if(X(r,{select:t}),H()!==n)return!0}function Kt(e){let t=qt(e);return[Jt(t,e),Jt(t.reverse(),e)]}function qt(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Jt(e,t){for(let n of e)if(!Yt(n,{upTo:t}))return n}function Yt(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Xt(e){return e instanceof HTMLInputElement&&`select`in e}function X(e,{select:t=!1}={}){if(e&&e.focus){let n=H();e.focus({preventScroll:!0}),e!==n&&Xt(e)&&t&&e.select()}}var Zt=N({__name:`FocusScope`,props:{loop:{type:Boolean,required:!1,default:!1},trapped:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`mountAutoFocus`,`unmountAutoFocus`],setup(e,{emit:t}){let n=e,i=t,{currentRef:a,currentElement:s}=G(),c=h(null),l=zt(),u=ae({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});o(e=>{if(!B)return;let t=s.value;if(!n.trapped)return;function r(e){if(u.paused||!t)return;let n=e.target;t.contains(n)?c.value=n:X(c.value,{select:!0})}function i(e){if(u.paused||!t)return;let n=e.relatedTarget;n!==null&&(t.contains(n)||X(c.value,{select:!0}))}function a(e){t.contains(c.value)||X(t)}document.addEventListener(`focusin`,r),document.addEventListener(`focusout`,i);let o=new MutationObserver(a);t&&o.observe(t,{childList:!0,subtree:!0}),e(()=>{document.removeEventListener(`focusin`,r),document.removeEventListener(`focusout`,i),o.disconnect()})}),o(async e=>{let t=s.value;if(await p(),!t)return;l.add(u);let n=H();if(!t.contains(n)){let e=new CustomEvent(Ht,Wt);t.addEventListener(Ht,e=>i(`mountAutoFocus`,e)),t.dispatchEvent(e),e.defaultPrevented||(Gt(Vt(qt(t)),{select:!0}),H()===n&&X(t))}e(()=>{t.removeEventListener(Ht,e=>i(`mountAutoFocus`,e));let e=new CustomEvent(Ut,Wt),r=e=>{i(`unmountAutoFocus`,e)};t.addEventListener(Ut,r),t.dispatchEvent(e),setTimeout(()=>{e.defaultPrevented||X(n??document.body,{select:!0}),t.removeEventListener(Ut,r),l.remove(u)},0)})});function d(e){if(!n.loop&&!n.trapped||u.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=H();if(t&&r){let t=e.currentTarget,[i,a]=Kt(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n.loop&&X(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n.loop&&X(a,{select:!0})):r===t&&e.preventDefault()}}return(e,t)=>(r(),y(P(q),{ref_key:`currentRef`,ref:a,tabindex:`-1`,"as-child":e.asChild,as:e.as,onKeydown:d},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as-child`,`as`]))}}),Qt=[`Enter`,` `],$t=[`ArrowDown`,`PageUp`,`Home`],en=[`ArrowUp`,`PageDown`,`End`];[...$t,...en],[...Qt],[...Qt];function tn(e){return e?`open`:`closed`}function nn(e){let t=H();for(let n of e)if(n===t||(n.focus(),H()!==t))return}var rn=N({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),{forwardRef:o,currentElement:s}=G();return a.titleId||=K(void 0,`reka-dialog-title`),a.descriptionId||=K(void 0,`reka-dialog-description`),R(()=>{a.contentElement=s,H()!==document.body&&(a.triggerElement.value=H())}),(e,t)=>(r(),y(P(Zt),{"as-child":``,loop:``,trapped:n.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:f(()=>[w(P(Lt),z({id:P(a).contentId,ref:P(o),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":P(a).descriptionId,"aria-labelledby":P(a).titleId,"data-state":P(tn)(P(a).open.value)},e.$attrs,{onDismiss:t[0]||=e=>P(a).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>i(`focusOutside`,e),onInteractOutside:t[3]||=e=>i(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>i(`pointerDownOutside`,e)}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),an=N({__name:`DialogContentModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),o=nt(i),{forwardRef:s,currentElement:c}=G();return gt(c),(e,t)=>(r(),y(rn,z({...n,...P(o)},{ref:P(s),"trap-focus":P(a).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(e.preventDefault(),P(a).triggerElement.value?.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),on=N({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=nt(t);G();let a=J(),o=h(!1),s=h(!1);return(e,t)=>(r(),y(rn,z({...n,...P(i)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(o.value||P(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=e=>{e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;P(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),sn=N({__name:`DialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=J(),o=nt(i),{forwardRef:s}=G();return(e,t)=>(r(),y(P(Tt),{present:e.forceMount||P(a).open.value},{default:f(()=>[P(a).modal.value?(r(),y(an,z({key:0,ref:P(s)},{...n,...P(o),...e.$attrs}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16)):(r(),y(on,z({key:1,ref:P(s)},{...n,...P(o),...e.$attrs}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),cn=N({__name:`DialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;G();let n=J();return(e,i)=>(r(),y(P(q),z(t,{id:P(n).descriptionId}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),ln=N({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=J();return Qe(!0),G(),(e,n)=>(r(),y(P(q),{as:e.as,"as-child":e.asChild,"data-state":P(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),un=N({__name:`DialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=J(),{forwardRef:n}=G();return(e,i)=>P(t)?.modal.value?(r(),y(P(Tt),{key:0,present:e.forceMount||P(t).open.value},{default:f(()=>[w(ln,z(e.$attrs,{ref:P(n),as:e.as,"as-child":e.asChild}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):k(`v-if`,!0)}}),dn=N({__name:`Teleport`,props:{to:{type:null,required:!1,default:`body`},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=Ge();return(e,n)=>P(t)||e.forceMount?(r(),y(ee,{key:0,to:e.to,disabled:e.disabled,defer:e.defer},[O(e.$slots,`default`)],8,[`to`,`disabled`,`defer`])):k(`v-if`,!0)}}),fn=N({__name:`DialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(r(),y(P(dn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),pn=N({__name:`DialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e,n=J();return G(),(e,i)=>(r(),y(P(q),z(t,{id:P(n).titleId}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),mn=N({__name:`AlertDialogAction`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(jt),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),[hn,gn]=V(`AlertDialogContent`),_n=N({__name:`AlertDialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=nt(t);G();let a=h();return gn({onCancelElementChange:e=>{a.value=e}}),(e,t)=>(r(),y(P(sn),z({...n,...P(i)},{role:`alertdialog`,onPointerDownOutside:t[0]||=F(()=>{},[`prevent`]),onInteractOutside:t[1]||=F(()=>{},[`prevent`]),onOpenAutoFocus:t[2]||=()=>{p(()=>{a.value?.focus({preventScroll:!0})})}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),vn=N({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=hn(),{forwardRef:i,currentElement:a}=G();return R(()=>{n.onCancelElementChange(a.value)}),(e,n)=>(r(),y(P(jt),z(t,{ref:P(i)}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),yn=N({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(cn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),bn=N({__name:`AlertDialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(un),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),xn=N({__name:`AlertDialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(r(),y(P(dn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),Sn=N({__name:`AlertDialogRoot`,props:{open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=ct(e,t);return G(),(e,t)=>(r(),y(P(At),z(P(n),{modal:!0}),{default:f(t=>[O(e.$slots,`default`,M(E(t)))]),_:3},16))}}),Cn=N({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(pn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),wn=`data-reka-collection-item`;function Z(e={}){let{key:t=``,isProvider:r=!1}=e,s=`${t}CollectionProvider`,c;if(r){let e=h(new Map);c={collectionRef:h(),itemMap:e},n(s,c)}else c=le(s);let l=(e=!1)=>{let t=c.collectionRef.value;if(!t)return[];let n=Array.from(t.querySelectorAll(`[${wn}]`)),r=Array.from(c.itemMap.value.values()).sort((e,t)=>n.indexOf(e.ref)-n.indexOf(t.ref));return e?r:r.filter(e=>e.ref.dataset.disabled!==``)},u=N({name:`CollectionSlot`,setup(e,{slots:t}){let{primitiveElement:n,currentElement:r}=Ot();return i(r,()=>{c.collectionRef.value=r.value}),()=>T(Et,{ref:n},t)}}),d=N({name:`CollectionItem`,inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(e,{slots:t,attrs:n}){let{primitiveElement:r,currentElement:i}=Ot();return o(t=>{if(i.value){let n=a(i.value);c.itemMap.value.set(n,{ref:i.value,value:e.value}),t(()=>c.itemMap.value.delete(n))}}),()=>T(Et,{...n,[wn]:``,ref:r},t)}});return{getItems:l,reactiveItems:j(()=>Array.from(c.itemMap.value.values())),itemMapSize:j(()=>c.itemMap.value.size),CollectionSlot:u,CollectionItem:d}}var Tn=`rovingFocusGroup.onEntryFocus`,En={bubbles:!1,cancelable:!0},Dn={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function On(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function kn(e,t,n){let r=On(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Dn[r]}function An(e,t=!1){let n=H();for(let r of e)if(r===n||(r.focus({preventScroll:t}),H()!==n))return}function jn(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var[Mn,Nn]=V(`RovingFocusGroup`),Pn=N({__name:`RovingFocusGroup`,props:{orientation:{type:String,required:!1,default:void 0},dir:{type:String,required:!1},loop:{type:Boolean,required:!1,default:!1},currentTabStopId:{type:[String,null],required:!1},defaultCurrentTabStopId:{type:String,required:!1},preventScrollOnEntryFocus:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`entryFocus`,`update:currentTabStopId`],setup(e,{expose:t,emit:n}){let i=e,a=n,{loop:o,orientation:s,dir:c}=I(i),l=tt(c),u=W(i,`currentTabStopId`,a,{defaultValue:i.defaultCurrentTabStopId,passive:i.currentTabStopId===void 0}),d=h(!1),p=h(!1),m=h(0),{getItems:g,CollectionSlot:_}=Z({isProvider:!0});function v(e){let t=!p.value;if(e.currentTarget&&e.target===e.currentTarget&&t&&!d.value){let t=new CustomEvent(Tn,En);if(e.currentTarget.dispatchEvent(t),a(`entryFocus`,t),!t.defaultPrevented){let e=g().map(e=>e.ref).filter(e=>e.dataset.disabled!==``);An([e.find(e=>e.getAttribute(`data-active`)===``),e.find(e=>e.getAttribute(`data-highlighted`)===``),e.find(e=>e.id===u.value),...e].filter(Boolean),i.preventScrollOnEntryFocus)}}p.value=!1}function b(){setTimeout(()=>{p.value=!1},1)}return t({getItems:g}),Nn({loop:o,dir:l,orientation:s,currentTabStopId:u,onItemFocus:e=>{u.value=e},onItemShiftTab:()=>{d.value=!0},onFocusableItemAdd:()=>{m.value++},onFocusableItemRemove:()=>{m.value--}}),(e,t)=>(r(),y(P(_),null,{default:f(()=>[w(P(q),{tabindex:d.value||m.value===0?-1:0,"data-orientation":P(s),as:e.as,"as-child":e.asChild,dir:P(l),style:{outline:`none`},onMousedown:t[0]||=e=>p.value=!0,onMouseup:b,onFocus:v,onBlur:t[1]||=e=>d.value=!1},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`as`,`as-child`,`dir`])]),_:3}))}}),Fn=N({__name:`RovingFocusItem`,props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=Mn(),i=K(),a=j(()=>t.tabStopId||i),o=j(()=>n.currentTabStopId.value===a.value),{getItems:s,CollectionItem:c}=Z();R(()=>{t.focusable&&n.onFocusableItemAdd()}),m(()=>{t.focusable&&n.onFocusableItemRemove()});function l(e){if(e.key===`Tab`&&e.shiftKey){n.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let r=kn(e,n.orientation.value,n.dir.value);if(r!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!t.allowShiftKey&&e.shiftKey)return;e.preventDefault();let i=[...s().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(r===`last`)i.reverse();else if(r===`prev`||r===`next`){r===`prev`&&i.reverse();let t=i.indexOf(e.currentTarget);i=n.loop.value?jn(i,t+1):i.slice(t+1)}p(()=>An(i))}}return(e,t)=>(r(),y(P(c),null,{default:f(()=>[w(P(q),{tabindex:o.value?0:-1,"data-orientation":P(n).orientation.value,"data-active":e.active?``:void 0,"data-disabled":e.focusable?void 0:``,as:e.as,"as-child":e.asChild,onMousedown:t[0]||=t=>{e.focusable?P(n).onItemFocus(a.value):t.preventDefault()},onFocus:t[1]||=e=>P(n).onItemFocus(a.value),onKeydown:l},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}}),In=N({__name:`VisuallyHidden`,props:{feature:{type:String,required:!1,default:`focusable`},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){return(e,t)=>(r(),y(P(q),{as:e.as,"as-child":e.asChild,"aria-hidden":e.feature===`focusable`?`true`:void 0,"data-hidden":e.feature===`fully-hidden`?``:void 0,tabindex:e.feature===`fully-hidden`?`-1`:void 0,style:{position:`absolute`,border:0,width:`1px`,height:`1px`,padding:0,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,clipPath:`inset(50%)`,whiteSpace:`nowrap`,wordWrap:`normal`,top:`-1px`,left:`-1px`}},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-hidden`,`data-hidden`,`tabindex`]))}}),Ln=N({inheritAttrs:!1,__name:`VisuallyHiddenInputBubble`,props:{name:{type:String,required:!0},value:{type:null,required:!0},checked:{type:Boolean,required:!1,default:void 0},required:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},feature:{type:String,required:!1,default:`fully-hidden`}},setup(e){let t=e,{primitiveElement:n,currentElement:a}=Ot();return i(j(()=>t.checked??t.value),(e,t)=>{if(!a.value)return;let n=a.value,r=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(r,`value`).set;if(i&&e!==t){let t=new Event(`input`,{bubbles:!0}),r=new Event(`change`,{bubbles:!0});i.call(n,e),n.dispatchEvent(t),n.dispatchEvent(r)}}),(e,i)=>(r(),y(In,z({ref_key:`primitiveElement`,ref:n},{...t,...e.$attrs},{as:`input`}),null,16))}}),Rn=N({inheritAttrs:!1,__name:`VisuallyHiddenInput`,props:{name:{type:String,required:!0},value:{type:null,required:!0},checked:{type:Boolean,required:!1,default:void 0},required:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},feature:{type:String,required:!1,default:`fully-hidden`}},setup(e){let t=e,n=j(()=>typeof t.value==`object`&&Array.isArray(t.value)&&t.value.length===0&&t.required),i=j(()=>typeof t.value==`string`||typeof t.value==`number`||typeof t.value==`boolean`||t.value===null||t.value===void 0?[{name:t.name,value:t.value}]:typeof t.value==`object`&&Array.isArray(t.value)?t.value.flatMap((e,n)=>typeof e==`object`?Object.entries(e).map(([e,r])=>({name:`${t.name}[${n}][${e}]`,value:r})):{name:`${t.name}[${n}]`,value:e}):t.value!==null&&typeof t.value==`object`&&!Array.isArray(t.value)?Object.entries(t.value).map(([e,n])=>({name:`${t.name}[${e}]`,value:n})):[]);return(e,a)=>(r(),L(oe,null,[k(` We render single input if it's required `),n.value?(r(),y(Ln,z({key:e.name},{...t,...e.$attrs},{name:e.name,value:e.value}),null,16,[`name`,`value`])):(r(!0),L(oe,{key:1},l(i.value,n=>(r(),y(Ln,z({key:n.name},{ref_for:!0},{...t,...e.$attrs},{name:n.name,value:n.value}),null,16,[`name`,`value`]))),128))],2112))}}),[zn,Bn]=V(`CheckboxGroupRoot`);function Vn(e){return e===`indeterminate`}function Hn(e){return Vn(e)?`indeterminate`:e?`checked`:`unchecked`}var[Un,Wn]=V(`CheckboxRoot`),Gn=N({inheritAttrs:!1,__name:`CheckboxRoot`,props:{defaultValue:{type:[Boolean,String],required:!1},modelValue:{type:[Boolean,String,null],required:!1,default:void 0},disabled:{type:Boolean,required:!1},value:{type:null,required:!1,default:`on`},id:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`],setup(t,{emit:n}){let i=t,a=n,{forwardRef:o,currentElement:s}=G(),c=zn(null),l=W(i,`modelValue`,a,{defaultValue:i.defaultValue,passive:i.modelValue===void 0}),u=j(()=>c?.disabled.value||i.disabled),d=j(()=>Re(c?.modelValue.value)?l.value===`indeterminate`?`indeterminate`:l.value:ze(c.modelValue.value,i.value));function p(){if(Re(c?.modelValue.value))l.value=Vn(l.value)?!0:!l.value;else{let e=[...c.modelValue.value||[]];if(ze(e,i.value)){let t=e.findIndex(e=>be(e,i.value));e.splice(t,1)}else e.push(i.value);c.modelValue.value=e}}let m=ot(s),h=j(()=>i.id&&s.value?document.querySelector(`[for="${i.id}"]`)?.innerText:void 0);return Wn({disabled:u,state:d}),(t,n)=>(r(),y(e(P(c)?.rovingFocus.value?P(Fn):P(q)),z(t.$attrs,{id:t.id,ref:P(o),role:`checkbox`,"as-child":t.asChild,as:t.as,type:t.as===`button`?`button`:void 0,"aria-checked":P(Vn)(d.value)?`mixed`:d.value,"aria-required":t.required,"aria-label":t.$attrs[`aria-label`]||h.value,"data-state":P(Hn)(d.value),"data-disabled":u.value?``:void 0,disabled:u.value,focusable:P(c)?.rovingFocus.value?!u.value:void 0,onKeydown:S(F(()=>{},[`prevent`]),[`enter`]),onClick:p}),{default:f(()=>[O(t.$slots,`default`,{modelValue:P(l),state:d.value}),P(m)&&t.name&&!P(c)?(r(),y(P(Rn),{key:0,type:`checkbox`,checked:!!d.value,name:t.name,value:t.value,disabled:u.value,required:t.required},null,8,[`checked`,`name`,`value`,`disabled`,`required`])):k(`v-if`,!0)]),_:3},16,[`id`,`as-child`,`as`,`type`,`aria-checked`,`aria-required`,`aria-label`,`data-state`,`data-disabled`,`disabled`,`focusable`,`onKeydown`]))}}),Kn=N({__name:`CheckboxIndicator`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let{forwardRef:t}=G(),n=Un();return(e,i)=>(r(),y(P(Tt),{present:e.forceMount||P(Vn)(P(n).state.value)||P(n).state.value===!0},{default:f(()=>[w(P(q),z({ref:P(t),"data-state":P(Hn)(P(n).state.value),"data-disabled":P(n).disabled.value?``:void 0,style:{pointerEvents:`none`},"as-child":e.asChild,as:e.as},e.$attrs),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`data-state`,`data-disabled`,`as-child`,`as`])]),_:3},8,[`present`]))}}),[qn,Jn]=V(`PopperRoot`),Yn=N({inheritAttrs:!1,__name:`PopperRoot`,setup(e){let t=h();return Jn({anchor:t,onAnchorChange:e=>t.value=e}),(e,t)=>O(e.$slots,`default`)}}),Xn=N({__name:`PopperAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n,currentElement:i}=G(),a=qn();return s(()=>{a.onAnchorChange(t.reference??i.value)}),(e,t)=>(r(),y(P(q),{ref:P(n),as:e.as,"as-child":e.asChild},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),Zn={key:0,d:`M0 0L6 6L12 0`},Qn={key:1,d:`M0 0L4.58579 4.58579C5.36683 5.36683 6.63316 5.36684 7.41421 4.58579L12 0`},$n=N({__name:`Arrow`,props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(q),z(t,{width:e.width,height:e.height,viewBox:e.asChild?void 0:`0 0 12 6`,preserveAspectRatio:e.asChild?void 0:`none`}),{default:f(()=>[O(e.$slots,`default`,{},()=>[e.rounded?(r(),L(`path`,Qn)):(r(),L(`path`,Zn))])]),_:3},16,[`width`,`height`,`viewBox`,`preserveAspectRatio`]))}});function er(e){return e!==null}function tr(e){return{name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=nr(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}}}function nr(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var rr={side:`bottom`,sideOffset:0,sideFlip:!0,align:`center`,alignOffset:0,alignFlip:!0,arrowPadding:0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:`partial`,hideWhenDetached:!1,positionStrategy:`fixed`,updatePositionStrategy:`optimized`,prioritizePosition:!1},[ir,ar]=V(`PopperContent`),or=N({inheritAttrs:!1,__name:`PopperContent`,props:v({side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{...rr}),emits:[`placed`],setup(e,{emit:t}){let n=e,i=t,a=qn(),{forwardRef:c,currentElement:l}=G(),u=h(),d=h(),{width:p,height:m}=vt(d),g=j(()=>n.side+(n.align===`center`?``:`-${n.align}`)),_=j(()=>typeof n.collisionPadding==`number`?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),v=j(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),y=j(()=>({padding:_.value,boundary:v.value.filter(er),altBoundary:v.value.length>0})),b=j(()=>({mainAxis:n.sideFlip,crossAxis:n.alignFlip})),x=de(()=>[Me({mainAxis:n.sideOffset+m.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&De({...y.value,...b.value}),n.avoidCollisions&&Fe({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky===`partial`?Ce():void 0,...y.value}),!n.prioritizePosition&&n.avoidCollisions&&De({...y.value,...b.value}),we({...y.value,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--reka-popper-available-width`,`${n}px`),o.setProperty(`--reka-popper-available-height`,`${r}px`),o.setProperty(`--reka-popper-anchor-width`,`${i}px`),o.setProperty(`--reka-popper-anchor-height`,`${a}px`)}}),d.value&&Te({element:d.value,padding:n.arrowPadding}),tr({arrowWidth:p.value,arrowHeight:m.value}),n.hideWhenDetached&&Ee({strategy:`referenceHidden`,...y.value})]),{floatingStyles:S,placement:C,isPositioned:T,middlewareData:E,update:ee}=je(j(()=>n.reference??a.anchor.value),u,{strategy:n.positionStrategy,placement:g,whileElementsMounted:(...e)=>Ae(...e,{layoutShift:!n.disableUpdateOnLayoutShift,animationFrame:n.updatePositionStrategy===`always`}),middleware:x}),D=j(()=>nr(C.value)[0]),te=j(()=>nr(C.value)[1]);s(()=>{T.value&&i(`placed`)});let k=j(()=>E.value.arrow?.centerOffset!==0),ne=h(``);return o(()=>{l.value&&(ne.value=window.getComputedStyle(l.value).zIndex)}),ar({placedSide:D,onArrowChange:e=>d.value=e,arrowX:j(()=>E.value.arrow?.x??0),arrowY:j(()=>E.value.arrow?.y??0),shouldHideArrow:k}),(e,t)=>(r(),L(`div`,{ref_key:`floatingRef`,ref:u,"data-reka-popper-content-wrapper":``,style:ce({...P(S),transform:P(T)?P(S).transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:ne.value,"--reka-popper-transform-origin":[P(E).transformOrigin?.x,P(E).transformOrigin?.y].join(` `),...P(E).hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}})},[w(P(q),z({ref:P(c)},e.$attrs,{"as-child":n.asChild,as:e.as,"data-side":D.value,"data-align":te.value,style:{animation:P(T)?void 0:`none`}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`as-child`,`as`,`data-side`,`data-align`,`style`])],4))}}),sr={top:`bottom`,right:`left`,bottom:`top`,left:`right`},cr=N({inheritAttrs:!1,__name:`PopperArrow`,props:{width:{type:Number,required:!1},height:{type:Number,required:!1},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let{forwardRef:t}=G(),n=ir(),i=j(()=>sr[n.placedSide.value]);return(e,a)=>(r(),L(`span`,{ref:e=>{P(n).onArrowChange(e)},style:ce({position:`absolute`,left:P(n).arrowX?.value?`${P(n).arrowX?.value}px`:void 0,top:P(n).arrowY?.value?`${P(n).arrowY?.value}px`:void 0,[i.value]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[P(n).placedSide.value],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[P(n).placedSide.value],visibility:P(n).shouldHideArrow.value?`hidden`:void 0})},[w($n,z(e.$attrs,{ref:P(t),style:{display:`block`},as:e.as,"as-child":e.asChild,rounded:e.rounded,width:e.width,height:e.height}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`rounded`,`width`,`height`])],4))}});function lr(e){let t=Ve({nonce:h()});return j(()=>e?.value||t.nonce?.value)}var[ur,dr]=V(`PopoverRoot`),fr=N({__name:`PopoverRoot`,props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},modal:{type:Boolean,required:!1,default:!1}},emits:[`update:open`],setup(e,{emit:t}){let n=e,i=t,{modal:a}=I(n),o=W(n,`open`,i,{defaultValue:n.defaultOpen,passive:n.open===void 0});return dr({contentId:``,triggerId:``,modal:a,open:o,onOpenChange:e=>{o.value=e},onOpenToggle:()=>{o.value=!o.value},triggerElement:h(),hasCustomAnchor:h(!1)}),(e,t)=>(r(),y(P(Yn),null,{default:f(()=>[O(e.$slots,`default`,{open:P(o),close:()=>o.value=!1})]),_:3}))}}),pr=N({__name:`PopoverContentImpl`,props:{trapFocus:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=st(Oe(n,`trapFocus`,`disableOutsidePointerEvents`)),{forwardRef:o}=G(),s=ur();return it(),(e,t)=>(r(),y(P(Zt),{"as-child":``,loop:``,trapped:e.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:f(()=>[w(P(Lt),{"as-child":``,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onPointerDownOutside:t[0]||=e=>i(`pointerDownOutside`,e),onInteractOutside:t[1]||=e=>i(`interactOutside`,e),onEscapeKeyDown:t[2]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[3]||=e=>i(`focusOutside`,e),onDismiss:t[4]||=e=>P(s).onOpenChange(!1)},{default:f(()=>[w(P(or),z(P(a),{id:P(s).contentId,ref:P(o),"data-state":P(s).open.value?`open`:`closed`,"aria-labelledby":P(s).triggerId,style:{"--reka-popover-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-popover-content-available-width":`var(--reka-popper-available-width)`,"--reka-popover-content-available-height":`var(--reka-popper-available-height)`,"--reka-popover-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-popover-trigger-height":`var(--reka-popper-anchor-height)`},role:`dialog`}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`id`,`data-state`,`aria-labelledby`])]),_:3},8,[`disable-outside-pointer-events`])]),_:3},8,[`trapped`]))}}),mr=N({__name:`PopoverContentModal`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=ur(),o=h(!1);Qe(!0);let s=ct(n,i),{forwardRef:c,currentElement:l}=G();return gt(l),(e,t)=>(r(),y(pr,z(P(s),{ref:P(c),"trap-focus":P(a).open.value,"disable-outside-pointer-events":``,onCloseAutoFocus:t[0]||=F(e=>{i(`closeAutoFocus`,e),o.value||P(a).triggerElement.value?.focus()},[`prevent`]),onPointerDownOutside:t[1]||=e=>{i(`pointerDownOutside`,e);let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;o.value=t.button===2||n},onFocusOutside:t[2]||=F(()=>{},[`prevent`])}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),hr=N({__name:`PopoverContentNonModal`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=ur(),o=h(!1),s=h(!1),c=ct(n,i);return(e,t)=>(r(),y(pr,z(P(c),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{i(`closeAutoFocus`,e),e.defaultPrevented||(o.value||P(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=async e=>{i(`interactOutside`,e),e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;P(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),gr=N({__name:`PopoverContent`,props:{forceMount:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let n=e,i=t,a=ur(),o=ct(n,i),{forwardRef:s}=G();return a.contentId||=K(void 0,`reka-popover-content`),(e,t)=>(r(),y(P(Tt),{present:e.forceMount||P(a).open.value},{default:f(()=>[P(a).modal.value?(r(),y(mr,z({key:0},P(o),{ref:P(s)}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16)):(r(),y(hr,z({key:1},P(o),{ref:P(s)}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),_r=N({__name:`PopoverPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(r(),y(P(dn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),vr=N({__name:`PopoverTrigger`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(t){let n=t,i=ur(),{forwardRef:a,currentElement:o}=G();return i.triggerId||=K(void 0,`reka-popover-trigger`),R(()=>{i.triggerElement.value=o.value}),(t,o)=>(r(),y(e(P(i).hasCustomAnchor.value?P(q):P(Xn)),{"as-child":``},{default:f(()=>[w(P(q),{id:P(i).triggerId,ref:P(a),type:t.as===`button`?`button`:void 0,"aria-haspopup":`dialog`,"aria-expanded":P(i).open.value,"aria-controls":P(i).contentId,"data-state":P(i).open.value?`open`:`closed`,as:t.as,"as-child":n.asChild,onClick:P(i).onOpenToggle},{default:f(()=>[O(t.$slots,`default`)]),_:3},8,[`id`,`type`,`aria-expanded`,`aria-controls`,`data-state`,`as`,`as-child`,`onClick`])]),_:3}))}}),yr=N({__name:`Label`,props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`label`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(q),z(t,{onMousedown:n[0]||=e=>{!e.defaultPrevented&&e.detail>1&&e.preventDefault()}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),[br,xr]=V(`PaginationRoot`),Sr=N({__name:`PaginationRoot`,props:{page:{type:Number,required:!1},defaultPage:{type:Number,required:!1,default:1},itemsPerPage:{type:Number,required:!0},total:{type:Number,required:!1,default:0},siblingCount:{type:Number,required:!1,default:2},disabled:{type:Boolean,required:!1},showEdges:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`nav`}},emits:[`update:page`],setup(e,{emit:t}){let n=e,i=t,{siblingCount:a,disabled:o,showEdges:s}=I(n);G();let c=W(n,`page`,i,{defaultValue:n.defaultPage,passive:n.page===void 0}),l=j(()=>Math.max(1,Math.ceil(n.total/(n.itemsPerPage||1))));return xr({page:c,onPageChange(e){c.value=e},pageCount:l,siblingCount:a,disabled:o,showEdges:s}),(e,t)=>(r(),y(P(q),{as:e.as,"as-child":e.asChild},{default:f(()=>[O(e.$slots,`default`,{page:P(c),pageCount:l.value})]),_:3},8,[`as`,`as-child`]))}});function Q(e,t){let n=t-e+1;return Array.from({length:n},(t,n)=>n+e)}function Cr(e){return e.map(e=>typeof e==`number`?{type:`page`,value:e}:{type:`ellipsis`})}var wr=`ellipsis`;function Tr(e,t,n,r){let i=t,a=Math.max(e-n,1),o=Math.min(e+n,i);if(r){let e=Math.min(2*n+5,t)-2,r=a>3&&Math.abs(i-e-1+1)>2&&Math.abs(a-1)>2,s=o2&&Math.abs(i-o)>2;return!r&&s?[...Q(1,e),wr,i]:r&&!s?[1,wr,...Q(i-e+1,i)]:r&&s?[1,wr,...Q(a,o),wr,i]:Q(1,i)}else{let r=n*2+1;return tCr(Tr(n.page.value,n.pageCount.value,n.siblingCount.value,n.showEdges.value)));return(e,n)=>(r(),y(P(q),M(E(t)),{default:f(()=>[O(e.$slots,`default`,{items:i.value})]),_:3},16))}}),Dr=N({__name:`PaginationListItem`,props:{value:{type:Number,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;G();let n=br(),i=j(()=>n.page.value===t.value),a=j(()=>n.disabled.value);return(e,o)=>(r(),y(P(q),z(t,{"data-type":`page`,"aria-label":`Page ${e.value}`,"aria-current":i.value?`page`:void 0,"data-selected":i.value?`true`:void 0,disabled:a.value,type:e.as===`button`?`button`:void 0,onClick:o[0]||=t=>!a.value&&P(n).onPageChange(e.value)}),{default:f(()=>[O(e.$slots,`default`,{},()=>[x(b(e.value),1)])]),_:3},16,[`aria-label`,`aria-current`,`data-selected`,`disabled`,`type`]))}}),Or=N({__name:`PaginationNext`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;G();let n=br(),i=j(()=>n.page.value===n.pageCount.value||n.disabled.value);return(e,a)=>(r(),y(P(q),z(t,{"aria-label":`Next Page`,type:e.as===`button`?`button`:void 0,disabled:i.value,onClick:a[0]||=e=>!i.value&&P(n).onPageChange(P(n).page.value+1)}),{default:f(()=>[O(e.$slots,`default`,{},()=>[a[1]||=x(`Next page`)])]),_:3},16,[`type`,`disabled`]))}}),kr=N({__name:`PaginationPrev`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;G();let n=br(),i=j(()=>n.page.value===1||n.disabled.value);return(e,a)=>(r(),y(P(q),z(t,{"aria-label":`Previous Page`,type:e.as===`button`?`button`:void 0,disabled:i.value,onClick:a[0]||=e=>!i.value&&P(n).onPageChange(P(n).page.value-1)}),{default:f(()=>[O(e.$slots,`default`,{},()=>[a[1]||=x(`Prev page`)])]),_:3},16,[`type`,`disabled`]))}}),Ar=100,[jr,Mr]=V(`ProgressRoot`),Nr=e=>typeof e==`number`;function Pr(e,t){return Re(e)||Nr(e)&&!Number.isNaN(e)&&e<=t&&e>=0?e:(console.error(`Invalid prop \`value\` of value \`${e}\` supplied to \`ProgressRoot\`. The \`value\` prop must be: - - a positive number - - less than the value passed to \`max\` (or ${Ar} if no \`max\` prop is set) - - \`null\` or \`undefined\` if the progress is indeterminate. - -Defaulting to \`null\`.`),null)}function Fr(e){return Nr(e)&&!Number.isNaN(e)&&e>0?e:(console.error(`Invalid prop \`max\` of value \`${e}\` supplied to \`ProgressRoot\`. Only numbers greater than 0 are valid max values. Defaulting to \`${Ar}\`.`),Ar)}var Ir=N({__name:`ProgressRoot`,props:{modelValue:{type:[Number,null],required:!1},max:{type:Number,required:!1,default:Ar},getValueLabel:{type:Function,required:!1,default:(e,t)=>Nr(e)?`${Math.round(e/t*Ar)}%`:void 0},getValueText:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`,`update:max`],setup(e,{emit:t}){let n=e,a=t;G();let o=W(n,`modelValue`,a,{passive:n.modelValue===void 0}),s=W(n,`max`,a,{passive:n.max===void 0});i(()=>o.value,async e=>{let t=Pr(e,n.max);t!==e&&(await p(),o.value=t)},{immediate:!0}),i(()=>n.max,e=>{let t=Fr(n.max);t!==e&&(s.value=t)},{immediate:!0});let c=j(()=>Re(o.value)?`indeterminate`:o.value===s.value?`complete`:`loading`);return Mr({modelValue:o,max:s,progressState:c}),(e,t)=>(r(),y(P(q),{"as-child":e.asChild,as:e.as,"aria-valuemax":P(s),"aria-valuemin":0,"aria-valuenow":Nr(P(o))?P(o):void 0,"aria-valuetext":e.getValueText?.(P(o),P(s)),"aria-label":e.getValueLabel(P(o),P(s)),role:`progressbar`,"data-state":c.value,"data-value":P(o)??void 0,"data-max":P(s)},{default:f(()=>[O(e.$slots,`default`,{modelValue:P(o)})]),_:3},8,[`as-child`,`as`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-label`,`data-state`,`data-value`,`data-max`]))}}),Lr=N({__name:`ProgressIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=jr();return G(),(e,i)=>(r(),y(P(q),z(t,{"data-state":P(n).progressState.value,"data-value":P(n).modelValue?.value??void 0,"data-max":P(n).max.value}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`data-state`,`data-value`,`data-max`]))}}),Rr=[` `,`Enter`,`ArrowUp`,`ArrowDown`],zr=[` `,`Enter`];function Br(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>Vr(e,t,n)):Vr(e,t,n)}function Vr(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:be(e,t)}function Hr(e){return e==null||e===``||Array.isArray(e)&&e.length===0}var Ur={key:0,value:``},[$,Wr]=V(`SelectRoot`),Gr=N({inheritAttrs:!1,__name:`SelectRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},by:{type:[String,Function],required:!1},dir:{type:String,required:!1},multiple:{type:Boolean,required:!1},autocomplete:{type:String,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`update:open`],setup(e,{emit:t}){let n=e,i=t,{required:a,disabled:o,multiple:s,dir:c}=I(n),u=W(n,`modelValue`,i,{defaultValue:n.defaultValue??(s.value?[]:void 0),passive:n.modelValue===void 0,deep:!0}),d=W(n,`open`,i,{defaultValue:n.defaultOpen,passive:n.open===void 0}),p=h(),m=h(),g=h({x:0,y:0}),_=j(()=>s.value&&Array.isArray(u.value)?u.value?.length===0:Re(u.value));Z({isProvider:!0});let v=tt(c),b=ot(p),x=h(new Set),S=j(()=>Array.from(x.value).map(e=>e.value).join(`;`));function C(e){if(s.value){let t=Array.isArray(u.value)?[...u.value]:[],r=t.findIndex(t=>Vr(t,e,n.by));r===-1?t.push(e):t.splice(r,1),u.value=[...t]}else u.value=e}function w(e){return Array.from(x.value).find(t=>Br(e,t.value,n.by))}return Wr({triggerElement:p,onTriggerChange:e=>{p.value=e},valueElement:m,onValueElementChange:e=>{m.value=e},contentId:``,modelValue:u,onValueChange:C,by:n.by,open:d,multiple:s,required:a,onOpenChange:e=>{d.value=e},dir:v,triggerPointerDownPosRef:g,disabled:o,isEmptyModelValue:_,optionsSet:x,onOptionAdd:e=>{let t=w(e.value);t&&x.value.delete(t),x.value.add(e)},onOptionRemove:e=>{let t=w(e.value);t&&x.value.delete(t)}}),(e,t)=>(r(),y(P(Yn),null,{default:f(()=>[O(e.$slots,`default`,{modelValue:P(u),open:P(d)}),P(b)?(r(),y(Kr,{key:S.value,"aria-hidden":`true`,tabindex:`-1`,multiple:P(s),required:P(a),name:e.name,autocomplete:e.autocomplete,disabled:P(o),value:P(u)},{default:f(()=>[P(Re)(P(u))?(r(),L(`option`,Ur)):k(`v-if`,!0),(r(!0),L(oe,null,l(Array.from(x.value),e=>(r(),L(`option`,z({key:e.value??``},{ref_for:!0},e),null,16))),128))]),_:1},8,[`multiple`,`required`,`name`,`autocomplete`,`disabled`,`value`])):k(`v-if`,!0)]),_:3}))}}),Kr=N({__name:`BubbleSelect`,props:{autocomplete:{type:String,required:!1},autofocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},form:{type:String,required:!1},multiple:{type:Boolean,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},size:{type:Number,required:!1},value:{type:null,required:!1}},setup(e){let t=e,n=h(),a=$();i(()=>t.value,(e,t)=>{let r=window.HTMLSelectElement.prototype,i=Object.getOwnPropertyDescriptor(r,`value`).set;if(e!==t&&i&&n.value){let t=new Event(`change`,{bubbles:!0});i.call(n.value,e),n.value.dispatchEvent(t)}});function o(e){a.onValueChange(e.target.value)}return(e,i)=>(r(),y(P(In),{"as-child":``},{default:f(()=>[se(`select`,z({ref_key:`selectElement`,ref:n},t,{onInput:o}),[O(e.$slots,`default`)],16)]),_:3}))}}),qr=N({__name:`SelectPopperPosition`,props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:`start`},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1,default:10},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=st(e);return(e,n)=>(r(),y(P(or),z(P(t),{style:{boxSizing:`border-box`,"--reka-select-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-select-content-available-width":`var(--reka-popper-available-width)`,"--reka-select-content-available-height":`var(--reka-popper-available-height)`,"--reka-select-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-select-trigger-height":`var(--reka-popper-anchor-height)`}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),Jr={onViewportChange:()=>{},itemTextRefCallback:()=>{},itemRefCallback:()=>{}},[Yr,Xr]=V(`SelectContent`),Zr=N({__name:`SelectContentImpl`,props:{position:{type:String,required:!1,default:`item-aligned`},bodyLock:{type:Boolean,required:!1,default:!0},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1,default:`start`},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(t,{emit:n}){let a=t,s=n,c=$();it(),Qe(a.bodyLock);let{CollectionSlot:l,getItems:u}=Z(),d=h();gt(d);let{search:p,handleTypeaheadSearch:m}=bt(),g=h(),_=h(),v=h(),b=h(!1),x=h(!1),S=h(!1);function C(){_.value&&d.value&&nn([_.value,d.value])}i(b,()=>{C()});let{onOpenChange:T,triggerPointerDownPosRef:E}=c;o(e=>{if(!d.value)return;let t={x:0,y:0},n=e=>{t={x:Math.abs(Math.round(e.pageX)-(E.value?.x??0)),y:Math.abs(Math.round(e.pageY)-(E.value?.y??0))}},r=e=>{e.pointerType!==`touch`&&(t.x<=10&&t.y<=10?e.preventDefault():d.value?.contains(e.target)||T(!1),document.removeEventListener(`pointermove`,n),E.value=null)};E.value!==null&&(document.addEventListener(`pointermove`,n),document.addEventListener(`pointerup`,r,{capture:!0,once:!0})),e(()=>{document.removeEventListener(`pointermove`,n),document.removeEventListener(`pointerup`,r,{capture:!0})})});function ee(e){let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&m(e.key,u()),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=[...u().map(e=>e.ref)];if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>nn(t)),e.preventDefault()}}let D=st(j(()=>a.position===`popper`?a:{}).value);return Xr({content:d,viewport:g,onViewportChange:e=>{g.value=e},itemRefCallback:(e,t,n)=>{let r=!x.value&&!n,i=Br(c.modelValue.value,t,c.by);if(c.multiple.value){if(S.value)return;(i||r)&&(_.value=e,i&&(S.value=!0))}else (i||r)&&(_.value=e);r&&(x.value=!0)},selectedItem:_,selectedItemText:v,onItemLeave:()=>{d.value?.focus()},itemTextRefCallback:(e,t,n)=>{let r=!x.value&&!n;(Br(c.modelValue.value,t,c.by)||r)&&(v.value=e)},focusSelectedItem:C,position:a.position,isPositioned:b,searchRef:p}),(t,n)=>(r(),y(P(l),null,{default:f(()=>[w(P(Zt),{"as-child":``,onMountAutoFocus:n[6]||=F(()=>{},[`prevent`]),onUnmountAutoFocus:n[7]||=e=>{s(`closeAutoFocus`,e),!e.defaultPrevented&&(P(c).triggerElement.value?.focus({preventScroll:!0}),e.preventDefault())}},{default:f(()=>[w(P(Lt),{"as-child":``,"disable-outside-pointer-events":``,onFocusOutside:n[2]||=F(()=>{},[`prevent`]),onDismiss:n[3]||=e=>P(c).onOpenChange(!1),onEscapeKeyDown:n[4]||=e=>s(`escapeKeyDown`,e),onPointerDownOutside:n[5]||=e=>s(`pointerDownOutside`,e)},{default:f(()=>[(r(),y(e(t.position===`popper`?qr:ei),z({...t.$attrs,...P(D)},{id:P(c).contentId,ref:e=>{let t=P(U)(e);t?.hasAttribute(`data-reka-popper-content-wrapper`)?d.value=t.firstElementChild:d.value=t},role:`listbox`,"data-state":P(c).open.value?`open`:`closed`,dir:P(c).dir.value,style:{display:`flex`,flexDirection:`column`,outline:`none`},onContextmenu:n[0]||=F(()=>{},[`prevent`]),onPlaced:n[1]||=e=>b.value=!0,onKeydown:ee}),{default:f(()=>[O(t.$slots,`default`)]),_:3},16,[`id`,`data-state`,`dir`,`onKeydown`]))]),_:3})]),_:3})]),_:3}))}}),[Qr,$r]=V(`SelectItemAlignedPosition`),ei=N({inheritAttrs:!1,__name:`SelectItemAlignedPosition`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`placed`],setup(e,{emit:t}){let n=e,i=t,{getItems:a}=Z(),o=$(),s=Yr(),c=h(!1),l=h(!0),u=h(),{forwardRef:d,currentElement:m}=G(),{viewport:g,selectedItem:_,selectedItemText:v,focusSelectedItem:y}=s;function b(){if(o.triggerElement.value&&o.valueElement.value&&u.value&&m.value&&g?.value&&_?.value&&v?.value){let e=o.triggerElement.value.getBoundingClientRect(),t=m.value.getBoundingClientRect(),n=o.valueElement.value.getBoundingClientRect(),r=v.value.getBoundingClientRect();if(o.dir.value!==`rtl`){let i=r.left-t.left,a=n.left-i,o=e.left-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-10,d=Ie(a,10,Math.max(10,l-c));u.value.style.minWidth=`${s}px`,u.value.style.left=`${d}px`}else{let i=t.right-r.right,a=window.innerWidth-n.right-i,o=window.innerWidth-e.right-a,s=e.width+o,c=Math.max(s,t.width),l=window.innerWidth-10,d=Ie(a,10,Math.max(10,l-c));u.value.style.minWidth=`${s}px`,u.value.style.right=`${d}px`}let s=a().map(e=>e.ref),l=window.innerHeight-20,d=g.value.scrollHeight,f=window.getComputedStyle(m.value),p=Number.parseInt(f.borderTopWidth,10),h=Number.parseInt(f.paddingTop,10),y=Number.parseInt(f.borderBottomWidth,10),b=Number.parseInt(f.paddingBottom,10),x=p+h+d+b+y,S=Math.min(_.value.offsetHeight*5,x),C=window.getComputedStyle(g.value),w=Number.parseInt(C.paddingTop,10),T=Number.parseInt(C.paddingBottom,10),E=e.top+e.height/2-10,ee=l-E,D=_.value.offsetHeight/2,te=_.value.offsetTop+D,O=p+h+te,k=x-O;if(O<=E){let e=_.value===s[s.length-1];u.value.style.bottom=`0px`;let t=m.value.clientHeight-g.value.offsetTop-g.value.offsetHeight,n=O+Math.max(ee,D+(e?T:0)+t+y);u.value.style.height=`${n}px`}else{let e=_.value===s[0];u.value.style.top=`0px`;let t=Math.max(E,p+g.value.offsetTop+(e?w:0)+D)+k;u.value.style.height=`${t}px`,g.value.scrollTop=O-E+g.value.offsetTop}u.value.style.margin=`10px 0`,u.value.style.minHeight=`${S}px`,u.value.style.maxHeight=`${l}px`,i(`placed`),requestAnimationFrame(()=>c.value=!0)}}let x=h(``);R(async()=>{await p(),b(),m.value&&(x.value=window.getComputedStyle(m.value).zIndex)});function S(e){e&&l.value===!0&&(b(),y?.(),l.value=!1)}return Xe(o.triggerElement,()=>{b()}),$r({contentWrapper:u,shouldExpandOnScrollRef:c,onScrollButtonChange:S}),(e,t)=>(r(),L(`div`,{ref_key:`contentWrapperElement`,ref:u,style:ce({display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:x.value})},[w(P(q),z({ref:P(d),style:{boxSizing:`border-box`,maxHeight:`100%`}},{...e.$attrs,...n}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16)],4))}}),ti=N({inheritAttrs:!1,__name:`SelectProvider`,props:{context:{type:Object,required:!0}},setup(e){return Wr(e.context),Xr(Jr),(e,t)=>O(e.$slots,`default`)}}),ni={key:1},ri=N({inheritAttrs:!1,__name:`SelectContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,a=ct(n,t),o=$(),s=h();R(()=>{s.value=new DocumentFragment});let c=h(),l=j(()=>n.forceMount||o.open.value),u=h(l.value);return i(l,()=>{setTimeout(()=>u.value=l.value)}),(e,t)=>l.value||u.value||c.value?.present?(r(),y(P(Tt),{key:0,ref_key:`presenceRef`,ref:c,present:l.value},{default:f(()=>[w(Zr,M(E({...P(a),...e.$attrs})),{default:f(()=>[O(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`])):s.value?(r(),L(`div`,ni,[(r(),y(ee,{to:s.value},[w(ti,{context:P(o)},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`context`])],8,[`to`]))])):k(`v-if`,!0)}}),ii=N({__name:`SelectIcon`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){return(e,t)=>(r(),y(P(q),{"aria-hidden":`true`,as:e.as,"as-child":e.asChild},{default:f(()=>[O(e.$slots,`default`,{},()=>[t[0]||=x(`▼`)])]),_:3},8,[`as`,`as-child`]))}}),[ai,oi]=V(`SelectItem`),si=N({__name:`SelectItem`,props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`select`],setup(e,{emit:t}){let n=e,i=t,{disabled:a}=I(n),o=$(),s=Yr(),{forwardRef:c,currentElement:l}=G(),{CollectionItem:u}=Z(),d=j(()=>Br(o.modelValue?.value,n.value,o.by)),m=h(!1),g=h(n.textValue??``),_=K(void 0,`reka-select-item-text`);async function v(e){e.defaultPrevented||Le(`select.select`,b,{originalEvent:e,value:n.value})}async function b(e){await p(),i(`select`,e),!e.defaultPrevented&&(a.value||(o.onValueChange(n.value),o.multiple.value||o.onOpenChange(!1)))}async function x(e){await p(),!e.defaultPrevented&&(a.value?s.onItemLeave?.():e.currentTarget?.focus({preventScroll:!0}))}async function S(e){await p(),!e.defaultPrevented&&e.currentTarget===H()&&s.onItemLeave?.()}async function C(e){await p(),!e.defaultPrevented&&(s.searchRef?.value!==``&&e.key===` `||(zr.includes(e.key)&&v(e),e.key===` `&&e.preventDefault()))}if(n.value===``)throw Error(`A must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return R(()=>{l.value&&s.itemRefCallback(l.value,n.value,n.disabled)}),oi({value:n.value,disabled:a,textId:_,isSelected:d,onItemTextChange:e=>{g.value=((g.value||e?.textContent)??``).trim()}}),(e,t)=>(r(),y(P(u),{value:{textValue:g.value}},{default:f(()=>[w(P(q),{ref:P(c),role:`option`,"aria-labelledby":P(_),"data-highlighted":m.value?``:void 0,"aria-selected":d.value,"data-state":d.value?`checked`:`unchecked`,"aria-disabled":P(a)||void 0,"data-disabled":P(a)?``:void 0,tabindex:P(a)?void 0:-1,as:e.as,"as-child":e.asChild,onFocus:t[0]||=e=>m.value=!0,onBlur:t[1]||=e=>m.value=!1,onPointerup:v,onPointerdown:t[2]||=e=>{e.currentTarget.focus({preventScroll:!0})},onTouchend:t[3]||=F(()=>{},[`prevent`,`stop`]),onPointermove:x,onPointerleave:S,onKeydown:C},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`aria-labelledby`,`data-highlighted`,`aria-selected`,`data-state`,`aria-disabled`,`data-disabled`,`tabindex`,`as`,`as-child`])]),_:3},8,[`value`]))}}),ci=N({__name:`SelectItemIndicator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=ai();return(e,i)=>P(n).isSelected.value?(r(),y(P(q),z({key:0,"aria-hidden":`true`},t),{default:f(()=>[O(e.$slots,`default`)]),_:3},16)):k(`v-if`,!0)}}),li=N({inheritAttrs:!1,__name:`SelectItemText`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,n=$(),i=Yr(),a=ai(),{forwardRef:o,currentElement:s}=G(),c=j(()=>({value:a.value,disabled:a.disabled.value,textContent:s.value?.textContent??a.value?.toString()??``}));return R(()=>{s.value&&(a.onItemTextChange(s.value),i.itemTextRefCallback(s.value,a.value,a.disabled.value),n.onOptionAdd(c.value))}),m(()=>{n.onOptionRemove(c.value)}),(e,n)=>(r(),y(P(q),z({id:P(a).textId,ref:P(o)},{...t,...e.$attrs}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`id`]))}}),ui=N({__name:`SelectPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(r(),y(P(dn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),di=N({__name:`SelectScrollButtonImpl`,emits:[`autoScroll`],setup(e,{emit:n}){let i=n,{getItems:a}=Z(),s=Yr(),c=h(null);function l(){c.value!==null&&(window.clearInterval(c.value),c.value=null)}o(()=>{a().map(e=>e.ref).find(e=>e===H())?.scrollIntoView({block:`nearest`})});function u(){c.value===null&&(c.value=window.setInterval(()=>{i(`autoScroll`)},50))}function d(){s.onItemLeave?.(),c.value===null&&(c.value=window.setInterval(()=>{i(`autoScroll`)},50))}return t(()=>l()),(e,t)=>(r(),y(P(q),z({"aria-hidden":`true`,style:{flexShrink:0}},e.$parent?.$props,{onPointerdown:u,onPointermove:d,onPointerleave:t[0]||=()=>{l()}}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),fi=N({__name:`SelectScrollDownButton`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Yr(),n=t.position===`item-aligned`?Qr():void 0,{forwardRef:a,currentElement:s}=G(),c=h(!1);return o(e=>{if(t.viewport?.value&&t.isPositioned?.value){let n=t.viewport.value;function r(){let e=n.scrollHeight-n.clientHeight;c.value=Math.ceil(n.scrollTop)n.removeEventListener(`scroll`,r))}}),i(s,()=>{s.value&&n?.onScrollButtonChange(s.value)}),(e,n)=>c.value?(r(),y(di,{key:0,ref:P(a),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=P(t);e?.value&&n?.value&&(e.value.scrollTop=e.value.scrollTop+n.value.offsetHeight)}},{default:f(()=>[O(e.$slots,`default`)]),_:3},512)):k(`v-if`,!0)}}),pi=N({__name:`SelectScrollUpButton`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Yr(),n=t.position===`item-aligned`?Qr():void 0,{forwardRef:a,currentElement:s}=G(),c=h(!1);return o(e=>{if(t.viewport?.value&&t.isPositioned?.value){let n=t.viewport.value;function r(){c.value=n.scrollTop>0}r(),n.addEventListener(`scroll`,r),e(()=>n.removeEventListener(`scroll`,r))}}),i(s,()=>{s.value&&n?.onScrollButtonChange(s.value)}),(e,n)=>c.value?(r(),y(di,{key:0,ref:P(a),onAutoScroll:n[0]||=()=>{let{viewport:e,selectedItem:n}=P(t);e?.value&&n?.value&&(e.value.scrollTop=e.value.scrollTop-n.value.offsetHeight)}},{default:f(()=>[O(e.$slots,`default`)]),_:3},512)):k(`v-if`,!0)}}),mi=N({__name:`SelectTrigger`,props:{disabled:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=$(),{forwardRef:i,currentElement:a}=G(),o=j(()=>n.disabled?.value||t.disabled);n.contentId||=K(void 0,`reka-select-content`),R(()=>{n.onTriggerChange(a.value)});let{getItems:s}=Z(),{search:c,handleTypeaheadSearch:l,resetTypeahead:u}=bt();function d(){o.value||(n.onOpenChange(!0),u())}function p(e){d(),n.triggerPointerDownPosRef.value={x:Math.round(e.pageX),y:Math.round(e.pageY)}}return(e,t)=>(r(),y(P(Xn),{"as-child":``,reference:e.reference},{default:f(()=>[w(P(q),{ref:P(i),role:`combobox`,type:e.as===`button`?`button`:void 0,"aria-controls":P(n).contentId,"aria-expanded":P(n).open.value||!1,"aria-required":P(n).required?.value,"aria-autocomplete":`none`,disabled:o.value,dir:P(n)?.dir.value,"data-state":P(n)?.open.value?`open`:`closed`,"data-disabled":o.value?``:void 0,"data-placeholder":P(Hr)(P(n).modelValue?.value)?``:void 0,"as-child":e.asChild,as:e.as,onClick:t[0]||=e=>{(e?.currentTarget)?.focus()},onPointerdown:t[1]||=e=>{if(e.pointerType===`touch`)return e.preventDefault();let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&(p(e),e.preventDefault())},onPointerup:t[2]||=F(e=>{e.pointerType===`touch`&&p(e)},[`prevent`]),onKeydown:t[3]||=e=>{let t=P(c)!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&t&&e.key===` `||(P(l)(e.key,P(s)()),P(Rr).includes(e.key)&&(d(),e.preventDefault()))}},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`type`,`aria-controls`,`aria-expanded`,`aria-required`,`disabled`,`dir`,`data-state`,`data-disabled`,`data-placeholder`,`as-child`,`as`])]),_:3},8,[`reference`]))}}),hi=N({__name:`SelectValue`,props:{placeholder:{type:String,required:!1,default:``},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let t=e,{forwardRef:n,currentElement:i}=G(),a=$();R(()=>{a.valueElement=i});let o=j(()=>{let e=[],t=Array.from(a.optionsSet.value),n=e=>t.find(t=>Br(e,t.value,a.by));return e=Array.isArray(a.modelValue.value)?a.modelValue.value.map(e=>n(e)?.textContent??``):[n(a.modelValue.value)?.textContent??``],e.filter(Boolean)}),s=j(()=>o.value.length?o.value.join(`, `):t.placeholder);return(e,i)=>(r(),y(P(q),{ref:P(n),as:e.as,"as-child":e.asChild,style:{pointerEvents:`none`},"data-placeholder":o.value.length?void 0:t.placeholder},{default:f(()=>[O(e.$slots,`default`,{selectedLabel:o.value,modelValue:P(a).modelValue.value},()=>[x(b(s.value),1)])]),_:3},8,[`as`,`as-child`,`data-placeholder`]))}}),gi=N({__name:`SelectViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{nonce:n}=I(t),i=lr(n),a=Yr(),o=a.position===`item-aligned`?Qr():void 0,{forwardRef:s,currentElement:c}=G();R(()=>{a?.onViewportChange(c.value)});let l=h(0);function u(e){let t=e.currentTarget,{shouldExpandOnScrollRef:n,contentWrapper:r}=o??{};if(n?.value&&r?.value){let e=Math.abs(l.value-t.scrollTop);if(e>0){let n=window.innerHeight-20,i=Number.parseFloat(r.value.style.minHeight),a=Number.parseFloat(r.value.style.height),o=Math.max(i,a);if(o0?s:0,r.value.style.justifyContent=`flex-end`)}}}l.value=t.scrollTop}return(e,n)=>(r(),L(oe,null,[w(P(q),z({ref:P(s),"data-reka-select-viewport":``,role:`presentation`},{...e.$attrs,...t},{style:{position:`relative`,flex:1,overflow:`hidden auto`},onScroll:u}),{default:f(()=>[O(e.$slots,`default`)]),_:3},16),w(P(q),{as:`style`,nonce:P(i)},{default:f(()=>n[0]||=[x(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-select-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-select-viewport]::-webkit-scrollbar { display: none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),[_i,vi]=V(`TabsRoot`),yi=N({__name:`TabsRoot`,props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:`horizontal`},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:`automatic`},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,i=t,{orientation:a,unmountOnHide:o,dir:s}=I(n),c=tt(s);G();let l=W(n,`modelValue`,i,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),u=h();return vi({modelValue:l,changeModelValue:e=>{l.value=e},orientation:a,dir:c,unmountOnHide:o,activationMode:n.activationMode,baseId:K(void 0,`reka-tabs`),tabsList:u}),(e,t)=>(r(),y(P(q),{dir:P(c),"data-orientation":P(a),"as-child":e.asChild,as:e.as},{default:f(()=>[O(e.$slots,`default`,{modelValue:P(l)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}});function bi(e,t){return`${e}-trigger-${t}`}function xi(e,t){return`${e}-content-${t}`}var Si=N({__name:`TabsContent`,props:{value:{type:[String,Number],required:!0},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n}=G(),i=_i(),a=j(()=>bi(i.baseId,t.value)),o=j(()=>xi(i.baseId,t.value)),s=j(()=>t.value===i.modelValue.value),c=h(s.value);return R(()=>{requestAnimationFrame(()=>{c.value=!1})}),(e,t)=>(r(),y(P(Tt),{present:e.forceMount||s.value,"force-mount":``},{default:f(({present:t})=>[w(P(q),{id:o.value,ref:P(n),"as-child":e.asChild,as:e.as,role:`tabpanel`,"data-state":s.value?`active`:`inactive`,"data-orientation":P(i).orientation.value,"aria-labelledby":a.value,hidden:!t,tabindex:`0`,style:ce({animationDuration:c.value?`0s`:void 0})},{default:f(()=>[!P(i).unmountOnHide.value||t?O(e.$slots,`default`,{key:0}):k(`v-if`,!0)]),_:2},1032,[`id`,`as-child`,`as`,`data-state`,`data-orientation`,`aria-labelledby`,`hidden`,`style`])]),_:3},8,[`present`]))}}),Ci=N({__name:`TabsList`,props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{loop:t}=I(e),{forwardRef:n,currentElement:i}=G(),a=_i();return a.tabsList=i,(e,i)=>(r(),y(P(Pn),{"as-child":``,orientation:P(a).orientation.value,dir:P(a).dir.value,loop:P(t)},{default:f(()=>[w(P(q),{ref:P(n),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":P(a).orientation.value},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),wi=N({__name:`TabsTrigger`,props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:n}=G(),i=_i(),a=j(()=>bi(i.baseId,t.value)),o=j(()=>xi(i.baseId,t.value)),s=j(()=>t.value===i.modelValue.value);return(e,t)=>(r(),y(P(Fn),{"as-child":``,focusable:!e.disabled,active:s.value},{default:f(()=>[w(P(q),{id:a.value,ref:P(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":s.value?`true`:`false`,"aria-controls":o.value,"data-state":s.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":P(i).orientation.value,onMousedown:t[0]||=F(t=>{!e.disabled&&t.ctrlKey===!1?P(i).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=S(t=>P(i).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=P(i).activationMode!==`manual`;!s.value&&!e.disabled&&t&&P(i).changeModelValue(e.value)}},{default:f(()=>[O(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),Ti=N({__name:`TooltipArrow`,props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let t=e;return G(),(e,n)=>(r(),y(P(cr),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),[Ei,Di]=V(`TooltipProvider`),Oi=N({inheritAttrs:!1,__name:`TooltipProvider`,props:{delayDuration:{type:Number,required:!1,default:700},skipDelayDuration:{type:Number,required:!1,default:300},disableHoverableContent:{type:Boolean,required:!1,default:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:!1}},setup(e){let{delayDuration:t,skipDelayDuration:n,disableHoverableContent:r,disableClosingTrigger:i,ignoreNonKeyboardFocus:a,disabled:o}=I(e);G();let s=h(!0),c=h(!1),{start:l,stop:u}=me(()=>{s.value=!0},n,{immediate:!1});return Di({isOpenDelayed:s,delayDuration:t,onOpen(){u(),s.value=!1},onClose(){l()},isPointerInTransitRef:c,disableHoverableContent:r,disableClosingTrigger:i,disabled:o,ignoreNonKeyboardFocus:a}),(e,t)=>O(e.$slots,`default`)}}),ki=`tooltip.open`,[Ai,ji]=V(`TooltipRoot`),Mi=N({__name:`TooltipRoot`,props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,a=t;G();let o=Ei(),s=j(()=>n.disableHoverableContent??o.disableHoverableContent.value),c=j(()=>n.disableClosingTrigger??o.disableClosingTrigger.value),l=j(()=>n.disabled??o.disabled.value),u=j(()=>n.delayDuration??o.delayDuration.value),d=j(()=>n.ignoreNonKeyboardFocus??o.ignoreNonKeyboardFocus.value),p=W(n,`open`,a,{defaultValue:n.defaultOpen,passive:n.open===void 0});i(p,e=>{o.onClose&&(e?(o.onOpen(),document.dispatchEvent(new CustomEvent(ki))):o.onClose())});let m=h(!1),g=h(),_=j(()=>p.value?m.value?`delayed-open`:`instant-open`:`closed`),{start:v,stop:b}=me(()=>{m.value=!0,p.value=!0},u,{immediate:!1});function x(){b(),m.value=!1,p.value=!0}function S(){b(),p.value=!1}function C(){v()}return ji({contentId:``,open:p,stateAttribute:_,trigger:g,onTriggerChange(e){g.value=e},onTriggerEnter(){o.isOpenDelayed.value?C():x()},onTriggerLeave(){s.value?S():b()},onOpen:x,onClose:S,disableHoverableContent:s,disableClosingTrigger:c,disabled:l,ignoreNonKeyboardFocus:d}),(e,t)=>(r(),y(P(Yn),null,{default:f(()=>[O(e.$slots,`default`,{open:P(p)})]),_:3}))}}),Ni=N({__name:`TooltipContentImpl`,props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:`top`},sideOffset:{type:Number,required:!1,default:0},align:{type:null,required:!1,default:`center`},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},arrowPadding:{type:Number,required:!1,default:0},sticky:{type:String,required:!1,default:`partial`},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(e,{emit:t}){let n=e,i=t,a=Ai(),{forwardRef:o}=G(),s=u(),c=j(()=>s.default?.({})),l=j(()=>{if(n.ariaLabel)return n.ariaLabel;let e=``;function t(n){typeof n.children==`string`&&n.type!==ie?e+=n.children:Array.isArray(n.children)&&n.children.forEach(e=>t(e))}return c.value?.forEach(e=>t(e)),e}),d=j(()=>{let{ariaLabel:e,...t}=n;return t});return R(()=>{We(window,`scroll`,e=>{e.target?.contains(a.trigger.value)&&a.onClose()}),We(window,ki,a.onClose)}),(e,t)=>(r(),y(P(Lt),{"as-child":``,"disable-outside-pointer-events":!1,onEscapeKeyDown:t[0]||=e=>i(`escapeKeyDown`,e),onPointerDownOutside:t[1]||=e=>{P(a).disableClosingTrigger.value&&P(a).trigger.value?.contains(e.target)&&e.preventDefault(),i(`pointerDownOutside`,e)},onFocusOutside:t[2]||=F(()=>{},[`prevent`]),onDismiss:t[3]||=e=>P(a).onClose()},{default:f(()=>[w(P(or),z({ref:P(o),"data-state":P(a).stateAttribute.value},{...e.$attrs,...d.value},{style:{"--reka-tooltip-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-tooltip-content-available-width":`var(--reka-popper-available-width)`,"--reka-tooltip-content-available-height":`var(--reka-popper-available-height)`,"--reka-tooltip-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-tooltip-trigger-height":`var(--reka-popper-anchor-height)`}}),{default:f(()=>[O(e.$slots,`default`),w(P(In),{id:P(a).contentId,role:`tooltip`},{default:f(()=>[x(b(l.value),1)]),_:1},8,[`id`])]),_:3},16,[`data-state`])]),_:3}))}}),Pi=N({__name:`TooltipContentHoverable`,props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(e){let t=st(e),{forwardRef:n,currentElement:i}=G(),{trigger:a,onClose:o}=Ai(),s=Ei(),{isPointerInTransit:c,onPointerExit:l}=lt(a,i);return s.isPointerInTransitRef=c,l(()=>{o()}),(e,i)=>(r(),y(Ni,z({ref:P(n)},P(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),Fi=N({__name:`TooltipContent`,props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1,default:`top`},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`],setup(t,{emit:n}){let i=t,a=n,o=Ai(),s=ct(i,a),{forwardRef:c}=G();return(t,n)=>(r(),y(P(Tt),{present:t.forceMount||P(o).open.value},{default:f(()=>[(r(),y(e(P(o).disableHoverableContent.value?Ni:Pi),z({ref:P(c)},P(s)),{default:f(()=>[O(t.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Ii=N({__name:`TooltipPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,n)=>(r(),y(P(dn),M(E(t)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16))}}),Li=N({__name:`TooltipTrigger`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,n=Ai(),i=Ei();n.contentId||=K(void 0,`reka-tooltip-content`);let{forwardRef:a,currentElement:o}=G(),s=h(!1),c=h(!1),l=j(()=>n.disabled.value?{}:{click:v,focus:g,pointermove:p,pointerleave:m,pointerdown:d,blur:_});R(()=>{n.onTriggerChange(o.value)});function u(){setTimeout(()=>{s.value=!1},1)}function d(){n.open&&!n.disableClosingTrigger.value&&n.onClose(),s.value=!0,document.addEventListener(`pointerup`,u,{once:!0})}function p(e){e.pointerType!==`touch`&&!c.value&&!i.isPointerInTransitRef.value&&(n.onTriggerEnter(),c.value=!0)}function m(){n.onTriggerLeave(),c.value=!1}function g(e){s.value||n.ignoreNonKeyboardFocus.value&&!e.target.matches?.(`:focus-visible`)||n.onOpen()}function _(){n.onClose()}function v(){n.disableClosingTrigger.value||n.onClose()}return(e,i)=>(r(),y(P(Xn),{"as-child":``,reference:e.reference},{default:f(()=>[w(P(q),z({ref:P(a),"aria-describedby":P(n).open.value?P(n).contentId:void 0,"data-state":P(n).stateAttribute.value,as:e.as,"as-child":t.asChild,"data-grace-area-trigger":``},te(l.value)),{default:f(()=>[O(e.$slots,`default`)]),_:3},16,[`aria-describedby`,`data-state`,`as`,`as-child`])]),_:3},8,[`reference`]))}});export{ct as $,yr as A,bn as B,Lr as C,Dr as D,Or as E,Kn as F,pn as G,vn as H,Gn as I,cn as J,fn as K,Cn as L,_r as M,gr as N,Er as O,fr as P,q as Q,Sn as R,Gr as S,kr as T,_n as U,yn as V,mn as W,jt as X,sn as Y,At as Z,li as _,Oi as a,ii as b,Ci as c,gi as d,st as et,hi as f,ui as g,fi as h,Mi as i,vr as j,Sr as k,Si as l,pi as m,Ii as n,Ti as o,mi as p,un as q,Fi as r,wi as s,Li as t,V as tt,yi as u,ci as v,Ir as w,ri as x,si as y,xn as z}; \ No newline at end of file diff --git a/docs/assets/vendor-utils-BlvnUqQX.js b/docs/assets/vendor-utils-BlvnUqQX.js deleted file mode 100644 index cfabc12..0000000 --- a/docs/assets/vendor-utils-BlvnUqQX.js +++ /dev/null @@ -1 +0,0 @@ -import{t as e}from"./rolldown-runtime-CIDIeb-o.js";var t=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),r=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),i=`-`,a=[],o=`arbitrary..`,s=e=>{let n=u(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return l(e);let t=e.split(i);return c(t,t[0]===``&&t.length>1?1:0,n)},getConflictingClassGroupIds:(e,n)=>{if(n){let n=o[e],i=r[e];return n?i?t(i,n):n:i||a}return r[e]||a}}},c=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=c(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(i):e.slice(t).join(i),l=o.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?o+r:void 0})(),u=e=>{let{theme:t,classGroups:n}=e;return d(n,t)},d=(e,t)=>{let n=r();for(let r in e){let i=e[r];f(i,n,r,t)}return n},f=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){m(e,t,n);return}if(typeof e==`function`){h(e,t,n,r);return}g(e,t,n,r)},m=(e,t,n)=>{let r=e===``?t:_(t,e);r.classGroupId=n},h=(e,t,r,i)=>{if(v(e)){f(e(i),t,r,i);return}t.validators===null&&(t.validators=[]),t.validators.push(n(r,e))},g=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,a=t.split(i),o=a.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,y=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},b=`!`,x=`:`,S=[],C=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),w=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return C(t,l,c,u)};if(t){let e=t+x,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):C(S,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},T=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},ee=e=>({cache:y(e.cacheSize),parseClassName:w(e),sortModifiers:T(e),...s(e)}),te=/\s+/,E=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(te),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+b:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e0?` `+c:c)}return c},ne=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=ee(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=E(e,n);return i(e,a),a};return a=o,(...e)=>a(ne(...e))},k=[],A=e=>{let t=t=>t[e]||k;return t.isThemeGetter=!0,t},j=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,M=/^\((?:(\w[\w-]*):)?(.+)\)$/i,re=/^\d+\/\d+$/,N=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,ie=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,P=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,F=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,I=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,L=e=>re.test(e),R=e=>!!e&&!Number.isNaN(Number(e)),z=e=>!!e&&Number.isInteger(Number(e)),ae=e=>e.endsWith(`%`)&&R(e.slice(0,-1)),B=e=>N.test(e),oe=()=>!0,V=e=>ie.test(e)&&!P.test(e),H=()=>!1,U=e=>F.test(e),se=e=>I.test(e),ce=e=>!W(e)&&!q(e),le=e=>X(e,_e,H),W=e=>j.test(e),G=e=>X(e,ve,V),ue=e=>X(e,ye,R),de=e=>X(e,Q,H),fe=e=>X(e,$,se),K=e=>X(e,xe,U),q=e=>M.test(e),J=e=>Z(e,ve),pe=e=>Z(e,be),me=e=>Z(e,Q),he=e=>Z(e,_e),ge=e=>Z(e,$),Y=e=>Z(e,xe,!0),X=(e,t,n)=>{let r=j.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Z=(e,t,n=!1)=>{let r=M.exec(e);return r?r[1]?t(r[1]):n:!1},Q=e=>e===`position`||e===`percentage`,$=e=>e===`image`||e===`url`,_e=e=>e===`length`||e===`size`||e===`bg-size`,ve=e=>e===`length`,ye=e=>e===`number`,be=e=>e===`family-name`,xe=e=>e===`shadow`,Se=O(()=>{let e=A(`color`),t=A(`font`),n=A(`text`),r=A(`font-weight`),i=A(`tracking`),a=A(`leading`),o=A(`breakpoint`),s=A(`container`),c=A(`spacing`),l=A(`radius`),u=A(`shadow`),d=A(`inset-shadow`),f=A(`text-shadow`),p=A(`drop-shadow`),m=A(`blur`),h=A(`perspective`),g=A(`aspect`),_=A(`ease`),v=A(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),q,W],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[q,W,c],T=()=>[L,`full`,`auto`,...w()],ee=()=>[z,`none`,`subgrid`,q,W],te=()=>[`auto`,{span:[`full`,z,q,W]},z,q,W],E=()=>[z,`auto`,q,W],ne=()=>[`auto`,`min`,`max`,`fr`,q,W],D=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],O=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],k=()=>[`auto`,...w()],j=()=>[L,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[e,q,W],re=()=>[...b(),me,de,{position:[q,W]}],N=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ie=()=>[`auto`,`cover`,`contain`,he,le,{size:[q,W]}],P=()=>[ae,J,G],F=()=>[``,`none`,`full`,l,q,W],I=()=>[``,R,J,G],V=()=>[`solid`,`dashed`,`dotted`,`double`],H=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],U=()=>[R,ae,me,de],se=()=>[``,`none`,m,q,W],X=()=>[`none`,R,q,W],Z=()=>[`none`,R,q,W],Q=()=>[R,q,W],$=()=>[L,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[B],breakpoint:[B],color:[oe],container:[B],"drop-shadow":[B],ease:[`in`,`out`,`in-out`],font:[ce],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[B],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[B],shadow:[B],spacing:[`px`,R],text:[B],"text-shadow":[B],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,L,W,q,g]}],container:[`container`],columns:[{columns:[R,W,q,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[z,`auto`,q,W]}],basis:[{basis:[L,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[R,L,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,R,q,W]}],shrink:[{shrink:[``,R,q,W]}],order:[{order:[z,`first`,`last`,`none`,q,W]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":E()}],"col-end":[{"col-end":E()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":E()}],"row-end":[{"row-end":E()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ne()}],"auto-rows":[{"auto-rows":ne()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...D(),`normal`]}],"justify-items":[{"justify-items":[...O(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...O()]}],"align-content":[{content:[`normal`,...D()]}],"align-items":[{items:[...O(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...O(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...O(),`baseline`]}],"place-self":[{"place-self":[`auto`,...O()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:k()}],mx:[{mx:k()}],my:[{my:k()}],ms:[{ms:k()}],me:[{me:k()}],mt:[{mt:k()}],mr:[{mr:k()}],mb:[{mb:k()}],ml:[{ml:k()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:j()}],w:[{w:[s,`screen`,...j()]}],"min-w":[{"min-w":[s,`screen`,`none`,...j()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...j()]}],h:[{h:[`screen`,`lh`,...j()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...j()]}],"max-h":[{"max-h":[`screen`,`lh`,...j()]}],"font-size":[{text:[`base`,n,J,G]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,q,ue]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,ae,W]}],"font-family":[{font:[pe,W,t]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,q,W]}],"line-clamp":[{"line-clamp":[R,`none`,q,ue]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,q,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,q,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...V(),`wavy`]}],"text-decoration-thickness":[{decoration:[R,`from-font`,`auto`,q,G]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[R,`auto`,q,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,q,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,q,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:re()}],"bg-repeat":[{bg:N()}],"bg-size":[{bg:ie()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},z,q,W],radial:[``,q,W],conic:[z,q,W]},ge,fe]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:F()}],"rounded-s":[{"rounded-s":F()}],"rounded-e":[{"rounded-e":F()}],"rounded-t":[{"rounded-t":F()}],"rounded-r":[{"rounded-r":F()}],"rounded-b":[{"rounded-b":F()}],"rounded-l":[{"rounded-l":F()}],"rounded-ss":[{"rounded-ss":F()}],"rounded-se":[{"rounded-se":F()}],"rounded-ee":[{"rounded-ee":F()}],"rounded-es":[{"rounded-es":F()}],"rounded-tl":[{"rounded-tl":F()}],"rounded-tr":[{"rounded-tr":F()}],"rounded-br":[{"rounded-br":F()}],"rounded-bl":[{"rounded-bl":F()}],"border-w":[{border:I()}],"border-w-x":[{"border-x":I()}],"border-w-y":[{"border-y":I()}],"border-w-s":[{"border-s":I()}],"border-w-e":[{"border-e":I()}],"border-w-t":[{"border-t":I()}],"border-w-r":[{"border-r":I()}],"border-w-b":[{"border-b":I()}],"border-w-l":[{"border-l":I()}],"divide-x":[{"divide-x":I()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":I()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...V(),`hidden`,`none`]}],"divide-style":[{divide:[...V(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...V(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[R,q,W]}],"outline-w":[{outline:[``,R,J,G]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Y,K]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Y,K]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:I()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[R,G]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":I()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,f,Y,K]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[R,q,W]}],"mix-blend":[{"mix-blend":[...H(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":H()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[R]}],"mask-image-linear-from-pos":[{"mask-linear-from":U()}],"mask-image-linear-to-pos":[{"mask-linear-to":U()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":U()}],"mask-image-t-to-pos":[{"mask-t-to":U()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":U()}],"mask-image-r-to-pos":[{"mask-r-to":U()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":U()}],"mask-image-b-to-pos":[{"mask-b-to":U()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":U()}],"mask-image-l-to-pos":[{"mask-l-to":U()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":U()}],"mask-image-x-to-pos":[{"mask-x-to":U()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":U()}],"mask-image-y-to-pos":[{"mask-y-to":U()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[q,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":U()}],"mask-image-radial-to-pos":[{"mask-radial-to":U()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[R]}],"mask-image-conic-from-pos":[{"mask-conic-from":U()}],"mask-image-conic-to-pos":[{"mask-conic-to":U()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:re()}],"mask-repeat":[{mask:N()}],"mask-size":[{mask:ie()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,q,W]}],filter:[{filter:[``,`none`,q,W]}],blur:[{blur:se()}],brightness:[{brightness:[R,q,W]}],contrast:[{contrast:[R,q,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Y,K]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,R,q,W]}],"hue-rotate":[{"hue-rotate":[R,q,W]}],invert:[{invert:[``,R,q,W]}],saturate:[{saturate:[R,q,W]}],sepia:[{sepia:[``,R,q,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,q,W]}],"backdrop-blur":[{"backdrop-blur":se()}],"backdrop-brightness":[{"backdrop-brightness":[R,q,W]}],"backdrop-contrast":[{"backdrop-contrast":[R,q,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,R,q,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[R,q,W]}],"backdrop-invert":[{"backdrop-invert":[``,R,q,W]}],"backdrop-opacity":[{"backdrop-opacity":[R,q,W]}],"backdrop-saturate":[{"backdrop-saturate":[R,q,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,R,q,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,q,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[R,`initial`,q,W]}],ease:[{ease:[`linear`,`initial`,_,q,W]}],delay:[{delay:[R,q,W]}],animate:[{animate:[`none`,v,q,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,q,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:X()}],"rotate-x":[{"rotate-x":X()}],"rotate-y":[{"rotate-y":X()}],"rotate-z":[{"rotate-z":X()}],scale:[{scale:Z()}],"scale-x":[{"scale-x":Z()}],"scale-y":[{"scale-y":Z()}],"scale-z":[{"scale-z":Z()}],"scale-3d":[`scale-3d`],skew:[{skew:Q()}],"skew-x":[{"skew-x":Q()}],"skew-y":[{"skew-y":Q()}],transform:[{transform:[q,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:$()}],"translate-x":[{"translate-x":$()}],"translate-y":[{"translate-y":$()}],"translate-z":[{"translate-z":$()}],"translate-none":[`translate-none`],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,q,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,q,W]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[R,J,G,ue]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}}),Ce=e(((e,t)=>{(function(t,n){typeof define==`function`&&define.amd?define([],n):e===void 0?(n(),t.FileSaver={exports:{}}.exports):n()})(e,function(){function e(e,t){return t===void 0?t={autoBom:!1}:typeof t!=`object`&&(console.warn(`Deprecated: Expected third argument to be a object`),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function n(e,t,n){var r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){s(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function r(e){var t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function i(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{var t=document.createEvent(`MouseEvents`);t.initMouseEvent(`click`,!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:void 0,o=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=a.saveAs||(typeof window!=`object`||window!==a?function(){}:`download`in HTMLAnchorElement.prototype&&!o?function(e,t,o){var s=a.URL||a.webkitURL,c=document.createElement(`a`);t=t||e.name||`download`,c.download=t,c.rel=`noopener`,typeof e==`string`?(c.href=e,c.origin===location.origin?i(c):r(c.href)?n(e,t,o):i(c,c.target=`_blank`)):(c.href=s.createObjectURL(e),setTimeout(function(){s.revokeObjectURL(c.href)},4e4),setTimeout(function(){i(c)},0))}:`msSaveOrOpenBlob`in navigator?function(t,a,o){if(a=a||t.name||`download`,typeof t!=`string`)navigator.msSaveOrOpenBlob(e(t,o),a);else if(r(t))n(t,a,o);else{var s=document.createElement(`a`);s.href=t,s.target=`_blank`,setTimeout(function(){i(s)})}}:function(e,t,r,i){if(i||=open(``,`_blank`),i&&(i.document.title=i.document.body.innerText=`downloading...`),typeof e==`string`)return n(e,t,r);var s=e.type===`application/octet-stream`,c=/constructor/i.test(a.HTMLElement)||a.safari,l=/CriOS\/[\d]+/.test(navigator.userAgent);if((l||s&&c||o)&&typeof FileReader<`u`){var u=new FileReader;u.onloadend=function(){var e=u.result;e=l?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),i?i.location.href=e:location=e,i=null},u.readAsDataURL(e)}else{var d=a.URL||a.webkitURL,f=d.createObjectURL(e);i?i.location=f:location.href=f,i=null,setTimeout(function(){d.revokeObjectURL(f)},4e4)}});a.saveAs=s.saveAs=s,t!==void 0&&(t.exports=s)})}));export{Se as n,Ce as t}; \ No newline at end of file diff --git a/docs/assets/vendor-vue-router-0mfLVB6Y.js b/docs/assets/vendor-vue-router-0mfLVB6Y.js deleted file mode 100644 index 356f8bf..0000000 --- a/docs/assets/vendor-vue-router-0mfLVB6Y.js +++ /dev/null @@ -1 +0,0 @@ -import{Dn as e,Fn as t,Qn as n,Sn as r,Xn as i,Yn as a,gn as o,on as s,pn as c,qn as l,rr as u,vn as d}from"./game-logic-BBFCPVtv.js";var f=typeof document<`u`;function p(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function m(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&p(e.default)}var h=Object.assign;function g(e,t){let n={};for(let r in t){let i=t[r];n[r]=v(i)?i.map(e):e(i)}return n}var _=()=>{},v=Array.isArray;function y(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var b=/#/g,ee=/&/g,te=/\//g,ne=/=/g,re=/\?/g,ie=/\+/g,x=/%5B/g,S=/%5D/g,C=/%5E/g,w=/%60/g,ae=/%7B/g,oe=/%7C/g,T=/%7D/g,se=/%20/g;function E(e){return e==null?``:encodeURI(``+e).replace(oe,`|`).replace(x,`[`).replace(S,`]`)}function ce(e){return E(e).replace(ae,`{`).replace(T,`}`).replace(C,`^`)}function D(e){return E(e).replace(ie,`%2B`).replace(se,`+`).replace(b,`%23`).replace(ee,`%26`).replace(w,"`").replace(ae,`{`).replace(T,`}`).replace(C,`^`)}function le(e){return D(e).replace(ne,`%3D`)}function ue(e){return E(e).replace(b,`%23`).replace(re,`%3F`)}function de(e){return ue(e).replace(te,`%2F`)}function O(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var k=/\/$/,fe=e=>e.replace(k,``);function pe(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=F(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:O(o)}}function me(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function A(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function he(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&j(t.matched[r],n.matched[i])&&M(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function j(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function M(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(!N(e[n],t[n]))return!1;return!0}function N(e,t){return v(e)?P(e,t):v(t)?P(t,e):e===t}function P(e,t){return v(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function F(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var I={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0},L=function(e){return e.pop=`pop`,e.push=`push`,e}({}),R=function(e){return e.back=`back`,e.forward=`forward`,e.unknown=``,e}({});function z(e){if(!e)if(f){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^\/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),fe(e)}var B=/^[^#]+#/;function V(e,t){return e.replace(B,`#`)+t}function H(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var U=()=>({left:window.scrollX,top:window.scrollY});function ge(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=H(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function _e(e,t){return(history.state?history.state.position-t:-1)+e}var W=new Map;function ve(e,t){W.set(e,t)}function ye(e){let t=W.get(e);return W.delete(e),t}function be(e){return typeof e==`string`||e&&typeof e==`object`}function xe(e){return typeof e==`string`||typeof e==`symbol`}var G=function(e){return e[e.MATCHER_NOT_FOUND=1]=`MATCHER_NOT_FOUND`,e[e.NAVIGATION_GUARD_REDIRECT=2]=`NAVIGATION_GUARD_REDIRECT`,e[e.NAVIGATION_ABORTED=4]=`NAVIGATION_ABORTED`,e[e.NAVIGATION_CANCELLED=8]=`NAVIGATION_CANCELLED`,e[e.NAVIGATION_DUPLICATED=16]=`NAVIGATION_DUPLICATED`,e}({}),Se=Symbol(``);G.MATCHER_NOT_FOUND,G.NAVIGATION_GUARD_REDIRECT,G.NAVIGATION_ABORTED,G.NAVIGATION_CANCELLED,G.NAVIGATION_DUPLICATED;function K(e,t){return h(Error(),{type:e,[Se]:!0},t)}function q(e,t){return e instanceof Error&&Se in e&&(t==null||!!(e.type&t))}function Ce(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;ee&&D(e)):[r&&D(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Te(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=v(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}var Ee=Symbol(``),De=Symbol(``),J=Symbol(``),Oe=Symbol(``),ke=Symbol(``);function Y(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function X(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(K(G.NAVIGATION_ABORTED,{from:n,to:t})):e instanceof Error?c(e):be(e)?c(K(G.NAVIGATION_GUARD_REDIRECT,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ae(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(p(s)){let c=(s.__vccOpts||s)[t];c&&a.push(X(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=m(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&X(c,n,r,o,e,i)()}))}}return a}function je(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;oj(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>j(e,s))||i.push(s))}return[n,r,i]}var Me=()=>location.protocol+`//`+location.host;function Ne(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),A(n,``)}return A(n,e)+r+i}function Pe(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Ne(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:L.pop,direction:u?u>0?R.forward:R.back:R.unknown})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(h({},e.state,{scroll:U()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Fe(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?U():null}}function Ie(e){let{history:t,location:n}=window,r={value:Ne(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Me()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,h({},t.state,Fe(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=h({},i.value,t.state,{forward:e,scroll:U()});a(o.current,o,!0),a(e,h({},Fe(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Le(e){e=z(e);let t=Ie(e),n=Pe(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=h({location:``,base:e,go:r,createHref:V.bind(null,e)},t,n);return Object.defineProperty(i,`location`,{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,`state`,{enumerable:!0,get:()=>t.state.value}),i}function Re(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),Le(e)}var Z=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.Group=2]=`Group`,e}({}),Q=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.ParamRegExp=2]=`ParamRegExp`,e[e.ParamRegExpEnd=3]=`ParamRegExpEnd`,e[e.EscapeNext=4]=`EscapeNext`,e}(Q||{}),ze={type:Z.Static,value:``},Be=/[a-zA-Z0-9_]/;function Ve(e){if(!e)return[[]];if(e===`/`)return[[ze]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=Q.Static,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===Q.Static?a.push({type:Z.Static,value:l}):n===Q.Param||n===Q.ParamRegExp||n===Q.ParamRegExpEnd?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:Z.Param,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;st.length?t.length===1&&t[0]===$.Static+$.Segment?1:-1:0}function qe(e,t){let n=0,r=e.score,i=t.score;for(;n0&&t[t.length-1]<0}var Ye={strict:!1,end:!0,sensitive:!1};function Xe(e,t,n){let r=h(Ge(Ve(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function Ze(e,t){let n=[],r=new Map;t=y(Ye,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=$e(e);s.aliasOf=r&&r.record;let l=y(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push($e(h({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=Xe(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!tt(d)&&o(e.name)),at(d)&&c(d),s.children){let e=s.children;for(let t=0;t{o(f)}:_}function o(e){if(xe(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=rt(e,n);n.splice(t,0,e),e.record.name&&!tt(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw K(G.MATCHER_NOT_FOUND,{location:e});s=i.record.name,a=h(Qe(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&Qe(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name);else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw K(G.MATCHER_NOT_FOUND,{location:e,currentLocation:t});s=i.record.name,a=h({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:nt(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function Qe(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function $e(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:et(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,`mods`,{value:{}}),t}function et(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function tt(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function nt(e){return e.reduce((e,t)=>h(e,t.meta),{})}function rt(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;qe(e,t[i])<0?r=i:n=i+1}let i=it(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function it(e){let t=e;for(;t=t.parent;)if(at(t)&&qe(e,t)===0)return t}function at({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function ot(e){let t=d(J),n=d(Oe),r=s(()=>{let n=u(e.to);return t.resolve(n)}),i=s(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(j.bind(null,i));if(o>-1)return o;let s=dt(e[t-2]);return t>1&&dt(i)===s&&a[a.length-1].path!==s?a.findIndex(j.bind(null,e[t-2])):o}),a=s(()=>i.value>-1&&ut(n.params,r.value.params)),o=s(()=>i.value>-1&&i.value===n.matched.length-1&&M(n.params,r.value.params));function c(n={}){if(lt(n)){let n=t[u(e.replace)?`replace`:`push`](u(e.to)).catch(_);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:s(()=>r.value.href),isActive:a,isExactActive:o,navigate:c}}function st(e){return e.length===1?e[0]:e}var ct=c({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:ot,setup(e,{slots:t}){let n=l(ot(e)),{options:r}=d(J),i=s(()=>({[ft(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[ft(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&st(t.default(n));return e.custom?r:o(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function lt(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ut(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!v(i)||i.length!==r.length||r.some((e,t)=>e!==i[t]))return!1}return!0}function dt(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var ft=(e,t,n)=>e??t??n,pt=c({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(n,{attrs:r,slots:i}){let c=d(ke),l=s(()=>n.route||c.value),f=d(De,0),p=s(()=>{let e=u(f),{matched:t}=l.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),m=s(()=>l.value.matched[p.value]);e(De,s(()=>p.value+1)),e(Ee,m),e(ke,l);let g=a();return t(()=>[g.value,m.value,n.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!j(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=l.value,t=n.name,a=m.value,s=a&&a.components[t];if(!s)return mt(i.default,{Component:s,route:e});let c=a.props[t],u=o(s,h({},c?c===!0?e.params:typeof c==`function`?c(e):c:null,r,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[t]=null)},ref:g}));return mt(i.default,{Component:u,route:e})||u}}});function mt(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var ht=pt;function gt(e){let t=Ze(e.routes,e),a=e.parseQuery||Ce,o=e.stringifyQuery||we,s=e.history,c=Y(),l=Y(),d=Y(),p=n(I),m=I;f&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let y=g.bind(null,e=>``+e),b=g.bind(null,de),ee=g.bind(null,O);function te(e,n){let r,i;return xe(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function ne(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function re(){return t.getRoutes().map(e=>e.record)}function ie(e){return!!t.getRecordMatcher(e)}function x(e,n){if(n=h({},n||p.value),typeof e==`string`){let r=pe(a,e,n.path),i=t.resolve({path:r.path},n),o=s.createHref(r.fullPath);return h(r,i,{params:ee(i.params),hash:O(r.hash),redirectedFrom:void 0,href:o})}let r;if(e.path!=null)r=h({},e,{path:pe(a,e.path,n.path).path});else{let t=h({},e.params);for(let e in t)t[e]??delete t[e];r=h({},e,{params:b(t)}),n.params=b(n.params)}let i=t.resolve(r,n),c=e.hash||``;i.params=y(ee(i.params));let l=me(o,h({},e,{hash:ce(c),path:i.path})),u=s.createHref(l);return h({fullPath:l,hash:c,query:o===we?Te(e.query):e.query||{}},i,{redirectedFrom:void 0,href:u})}function S(e){return typeof e==`string`?pe(a,e,p.value.path):h({},e)}function C(e,t){if(m!==e)return K(G.NAVIGATION_CANCELLED,{from:t,to:e})}function w(e){return T(e)}function ae(e){return w(h(S(e),{replace:!0}))}function oe(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=S(i):{path:i},i.params={}),h({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=m=x(e),r=p.value,i=e.state,a=e.force,s=e.replace===!0,c=oe(n,r);if(c)return T(h(S(c),{state:typeof c==`object`?h({},i,c.state):i,force:a,replace:s}),t||n);let l=n;l.redirectedFrom=t;let u;return!a&&he(o,r,n)&&(u=K(G.NAVIGATION_DUPLICATED,{to:l,from:r}),R(r,r,!0,!1)),(u?Promise.resolve(u):D(l,r)).catch(e=>q(e)?q(e,G.NAVIGATION_GUARD_REDIRECT)?e:F(e):N(e,l,r)).then(e=>{if(e){if(q(e,G.NAVIGATION_GUARD_REDIRECT))return T(h({replace:s},S(e.to),{state:typeof e.to==`object`?h({},i,e.to.state):i,force:a}),t||l)}else e=ue(l,r,!0,s,i);return le(l,r,e),e})}function se(e,t){let n=C(e,t);return n?Promise.reject(n):Promise.resolve()}function E(e){let t=V.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function D(e,t){let n,[r,i,a]=je(e,t);n=Ae(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(X(r,e,t))});let o=se.bind(null,e,t);return n.push(o),W(n).then(()=>{n=[];for(let r of c.list())n.push(X(r,e,t));return n.push(o),W(n)}).then(()=>{n=Ae(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(X(r,e,t))});return n.push(o),W(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(v(r.beforeEnter))for(let i of r.beforeEnter)n.push(X(i,e,t));else n.push(X(r.beforeEnter,e,t));return n.push(o),W(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ae(a,`beforeRouteEnter`,e,t,E),n.push(o),W(n))).then(()=>{n=[];for(let r of l.list())n.push(X(r,e,t));return n.push(o),W(n)}).catch(e=>q(e,G.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function le(e,t,n){d.list().forEach(r=>E(()=>r(e,t,n)))}function ue(e,t,n,r,i){let a=C(e,t);if(a)return a;let o=t===I,c=f?history.state:{};n&&(r||o?s.replace(e.fullPath,h({scroll:o&&c&&c.scroll},i)):s.push(e.fullPath,i)),p.value=e,R(e,t,n,o),F()}let k;function fe(){k||=s.listen((e,t,n)=>{if(!H.listening)return;let r=x(e),i=oe(r,H.currentRoute.value);if(i){T(h(i,{replace:!0,force:!0}),r).catch(_);return}m=r;let a=p.value;f&&ve(_e(a.fullPath,n.delta),U()),D(r,a).catch(e=>q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_CANCELLED)?e:q(e,G.NAVIGATION_GUARD_REDIRECT)?(T(h(S(e.to),{force:!0}),r).then(e=>{q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===L.pop&&s.go(-1,!1)}).catch(_),Promise.reject()):(n.delta&&s.go(-n.delta,!1),N(e,r,a))).then(e=>{e||=ue(r,a,!1),e&&(n.delta&&!q(e,G.NAVIGATION_CANCELLED)?s.go(-n.delta,!1):n.type===L.pop&&q(e,G.NAVIGATION_ABORTED|G.NAVIGATION_DUPLICATED)&&s.go(-1,!1)),le(r,a,e)}).catch(_)})}let A=Y(),j=Y(),M;function N(e,t,n){F(e);let r=j.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function P(){return M&&p.value!==I?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function F(e){return M||(M=!e,fe(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function R(t,n,i,a){let{scrollBehavior:o}=e;if(!f||!o)return Promise.resolve();let s=!i&&ye(_e(t.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return r().then(()=>o(t,n,s)).then(e=>e&&ge(e)).catch(e=>N(e,t,n))}let z=e=>s.go(e),B,V=new Set,H={currentRoute:p,listening:!0,addRoute:te,removeRoute:ne,clearRoutes:t.clearRoutes,hasRoute:ie,getRoutes:re,resolve:x,options:e,push:w,replace:ae,go:z,back:()=>z(-1),forward:()=>z(1),beforeEach:c.add,beforeResolve:l.add,afterEach:d.add,onError:j.add,isReady:P,install(e){e.component(`RouterLink`,ct),e.component(`RouterView`,ht),e.config.globalProperties.$router=H,Object.defineProperty(e.config.globalProperties,`$route`,{enumerable:!0,get:()=>u(p)}),f&&!B&&p.value===I&&(B=!0,w(s.location).catch(e=>{}));let t={};for(let e in I)Object.defineProperty(t,e,{get:()=>p.value[e],enumerable:!0});e.provide(J,H),e.provide(Oe,i(t)),e.provide(ke,p);let n=e.unmount;V.add(e),e.unmount=function(){V.delete(e),V.size<1&&(m=I,k&&k(),k=null,p.value=I,B=!1,M=!1),n()}}};function W(e){return e.reduce((e,t)=>e.then(()=>E(t)),Promise.resolve())}return H}function _t(){return d(J)}function vt(e){return d(Oe)}export{vt as a,Re as i,ht as n,_t as o,gt as r,ct as t}; \ No newline at end of file diff --git a/docs/assets/vendor-vueuse-Djj-oRw9.js b/docs/assets/vendor-vueuse-Djj-oRw9.js deleted file mode 100644 index 58076a1..0000000 --- a/docs/assets/vendor-vueuse-Djj-oRw9.js +++ /dev/null @@ -1 +0,0 @@ -import{Fn as e,In as t,Qn as n,Sn as r,Yn as i,_n as a,mn as o,nr as s,on as c,rr as l,wn as u}from"./game-logic-BBFCPVtv.js";import{a as d,c as f,d as p,i as m,o as h,s as g,u as _}from"./vendor-others-Bce0hM6h.js";var v=d?window:void 0,y=d?window.document:void 0;d&&window.navigator,d&&window.location;function b(e){let t=s(e);return t?.$el??t}function x(...e){let t=(e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)),n=c(()=>{let t=_(s(e[0])).filter(e=>e!=null);return t.every(e=>typeof e!=`string`)?t:void 0});return p(()=>[n.value?.map(e=>b(e))??[v].filter(e=>e!=null),_(s(n.value?e[1]:e[0])),_(l(n.value?e[2]:e[1])),s(n.value?e[3]:e[2])],([e,n,r,i],a,o)=>{if(!e?.length||!n?.length||!r?.length)return;let s=g(i)?{...i}:i,c=e.flatMap(e=>n.flatMap(n=>r.map(r=>t(e,n,r,s))));o(()=>{c.forEach(e=>e())})},{flush:`post`})}function S(){let e=n(!1),t=o();return t&&u(()=>{e.value=!0},t),e}function C(e){let t=S();return c(()=>(t.value,!!e()))}var w=Symbol(`vueuse-ssr-width`);function T(){let e=a()?m(w,null):null;return typeof e==`number`?e:void 0}function E(e,r={}){let{window:i=v,ssrWidth:a=T()}=r,o=C(()=>i&&`matchMedia`in i&&typeof i.matchMedia==`function`),l=n(typeof a==`number`),u=n(),d=n(!1);return t(()=>{if(l.value){l.value=!o.value,d.value=s(e).split(`,`).some(e=>{let t=e.includes(`not all`),n=e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),r=e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),i=!!(n||r);return n&&i&&(i=a>=f(n[1])),r&&i&&(i=a<=f(r[1])),t?!i:i});return}o.value&&(u.value=i.matchMedia(s(e)),d.value=u.value.matches)}),x(u,`change`,e=>{d.value=e.matches},{passive:!0}),c(()=>d.value)}function D(e){return JSON.parse(JSON.stringify(e))}function O(t,n,a,s={}){var l,u;let{clone:d=!1,passive:f=!1,eventName:p,deep:m=!1,defaultValue:g,shouldEmit:_}=s,v=o(),y=a||v?.emit||(v==null||(l=v.$emit)==null?void 0:l.bind(v))||(v==null||(u=v.proxy)==null||(u=u.$emit)==null?void 0:u.bind(v?.proxy)),b=p;n||=`modelValue`,b||=`update:${n.toString()}`;let x=e=>d?typeof d==`function`?d(e):D(e):e,S=()=>h(t[n])?x(t[n]):g,C=e=>{_?_(e)&&y(b,e):y(b,e)};if(f){let a=i(S()),o=!1;return e(()=>t[n],e=>{o||(o=!0,a.value=x(e),r(()=>o=!1))}),e(a,e=>{!o&&(e!==t[n]||m)&&C(e)},{deep:m}),a}else return c({get(){return S()},set(e){C(e)}})}export{O as i,x as n,E as r,y as t}; \ No newline at end of file diff --git a/docs/favicon.ico b/docs/favicon.ico deleted file mode 100644 index 6b3ead2f4408fecc1aefc222f50d33d0eca7e08c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 232564 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

    KB1sfWpOw4ZZ&{jV?4f<~Yl|U+<_b44ozStS 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 diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index 3724619..0000000 --- a/docs/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - OGame-Vue-Ts - - - - - - - - - - - - - - - - - - -

    - - - - - - \ No newline at end of file diff --git a/docs/logo.svg b/docs/logo.svg deleted file mode 100644 index 4e5393d..0000000 --- a/docs/logo.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file From b6fcad0a654c8b4d4174a1c17e07c99a34593042 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:34:51 +0800 Subject: [PATCH 08/14] =?UTF-8?q?chore(electron):=20=E7=A7=BB=E9=99=A4Elec?= =?UTF-8?q?tron=E7=9B=B8=E5=85=B3=E9=85=8D=E7=BD=AE=E5=92=8C=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E4=BA=A7=E7=89=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了Electron主进程文件 dist-electron/main.js - 在.gitignore中添加了dist-electron和docs目录的忽略规则 - 清理了Electron相关的构建配置和开发资源引用 - 移除了Electron应用的窗口创建和路由加载逻辑 - 删除了对VITE开发服务器URL的条件判断和处理 - 去除了Electron菜单栏设置及相关图标引用 --- .gitignore | 2 ++ dist-electron/main.js | 15 --------------- 2 files changed, 2 insertions(+), 15 deletions(-) delete mode 100644 dist-electron/main.js diff --git a/.gitignore b/.gitignore index 73f996e..45cac7b 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,8 @@ CLAUDE.md node_modules dist dist-ssr +dist-electron +docs *.local # Editor directories and files diff --git a/dist-electron/main.js b/dist-electron/main.js deleted file mode 100644 index 43cbc84..0000000 --- a/dist-electron/main.js +++ /dev/null @@ -1,15 +0,0 @@ -import { BrowserWindow, app } from "electron"; -import path, { dirname } from "node:path"; -import { fileURLToPath } from "node:url"; -app.whenReady().then(() => { - const __dirname = dirname(fileURLToPath(import.meta.url)); - const win = new BrowserWindow({ - title: "OGame", - icon: path.join(__dirname, "../public/favicon.ico"), - width: 1200, - height: 800 - }); - win.setMenu(null); - if (process.env.VITE_DEV_SERVER_URL) win.loadURL(process.env.VITE_DEV_SERVER_URL); - else win.loadFile("docs/index.html"); -}); From ec6b9cee075483ba7e5882f209ae32610288c535 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:47:08 +0800 Subject: [PATCH 09/14] =?UTF-8?q?chore(pages):=20=E6=9B=B4=E6=96=B0=20GitH?= =?UTF-8?q?ub=20Pages=20=E9=83=A8=E7=BD=B2=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 permissions 配置以支持 GitHub Pages 部署 - 使用 actions/setup-node 安装 Node.js 环境 - 添加缓存配置以加速依赖安装 - 使用 actions/configure-pages 跳过 Jekyll 处理 - 使用 actions/upload-pages-artifact 上传构建产物 - 使用 actions/deploy-pages 部署到 GitHub Pages - 更新构建命令以确保正确执行 - 修改路径配置以匹配项目结构 --- .github/workflows/github-pages.yml | 42 +++++++++++++++++++++--------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index 79f8c6f..b66721e 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -1,23 +1,41 @@ -name: 部署到GitHub Pages +name: Deploy Vue Project on: push: - branches: [ main ] + branches: [ main ] # 如果你的主分支叫 master,请改为 master + +permissions: + contents: read + pages: write + id-token: write jobs: build-and-deploy: runs-on: ubuntu-latest steps: - - name: 代码检出 + - name: 检出代码 uses: actions/checkout@v6 - - name: 构建前端页面 - run: | - npm install -g pnpm && pnpm install - pnpm run build - - - name: 推送到 Github - uses: JamesIves/github-pages-deploy-action@v4 + - name: 安装 Nodejs + uses: actions/setup-node@v6 with: - folder: docs - branch: gh-pages \ No newline at end of file + node-version: 20 # 建议使用 LTS 版本 + cache: 'npm' + + - name: 安装 pnpm + run: npm install -g pnpm && pnpm install + + - name: 构建前端项目 + run: pnpm install && pnpm run build + + # 关键步骤:告诉 GitHub Actions 跳过 Jekyll 检查 + - name: 配置 Github Pages + uses: actions/configure-pages@v5 + + - name: 上传构建版 + uses: actions/upload-pages-artifact@v4 + with: + path: './docs' + + - name: 部署到 GitHub Pages + uses: actions/deploy-pages@v4 \ No newline at end of file From a592713623acc348ca0986d0f8c162548d7782c3 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 21:52:32 +0800 Subject: [PATCH 10/14] =?UTF-8?q?chore(github-pages):=20=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=20GitHub=20Pages=20=E7=8E=AF=E5=A2=83=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 environment 字段以指定部署环境 - 设置页面 URL 输出变量以便后续使用 - 确保工作流能够正确识别和部署到 GitHub Pages --- .github/workflows/github-pages.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index b66721e..9f823a9 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -12,6 +12,9 @@ permissions: jobs: build-and-deploy: runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} steps: - name: 检出代码 uses: actions/checkout@v6 From 84b090d51d35709e194a6dc27a8a5c90ae36ec8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=85=B7=E6=9B=A6=E7=A7=91=E6=8A=80?= Date: Mon, 15 Dec 2025 22:02:29 +0800 Subject: [PATCH 11/14] Update .github/workflows/github-pages.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> --- .github/workflows/github-pages.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index 9f823a9..aea6665 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -23,13 +23,19 @@ jobs: uses: actions/setup-node@v6 with: node-version: 20 # 建议使用 LTS 版本 - cache: 'npm' - - name: 安装 pnpm - run: npm install -g pnpm && pnpm install + - name: 设置 pnpm(启用 pnpm 缓存) + uses: pnpm/action-setup@v4 + with: + version: 9 + run_install: false + cache: true + + - name: 安装依赖 + run: pnpm install - name: 构建前端项目 - run: pnpm install && pnpm run build + run: pnpm run build # 关键步骤:告诉 GitHub Actions 跳过 Jekyll 检查 - name: 配置 Github Pages From 1aac97dfeed44c94cb642e8d402a1750741d7ae9 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 22:02:56 +0800 Subject: [PATCH 12/14] =?UTF-8?q?perf(workbox):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E8=B5=84=E6=BA=90=E7=BC=93=E5=AD=98=E5=8C=B9=E9=85=8D=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改 globPatterns 配置以递归匹配所有静态资源 - 确保深层嵌套的文档目录资源被正确缓存 - 提升离线访问性能和资源加载速度 --- vite.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vite.config.ts b/vite.config.ts index 2ce43b7..5487b59 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -33,8 +33,8 @@ export default defineConfig(async () => { }, workbox: { - // 关键:确保缓存了 dist 目录下所有的 JS, CSS, HTML 和 媒体文件 - globPatterns: ['docs/*.{js,css,html,ico,png,svg,mp3,wav,json}'], + // 关键:确保缓存了 docs 目录下所有的 JS, CSS, HTML 和 媒体文件 + globPatterns: ['**/*.{js,css,html,ico,png,svg,mp3,wav,json}'], // 如果你的游戏资源(如音效或贴图)较大,请根据需要调大这个阈值(默认 2MB) // 这里设置为 5MB From 2bac87cd39fbb0588107422c85346fe277406685 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 22:04:28 +0800 Subject: [PATCH 13/14] =?UTF-8?q?chore(ci):=20=E6=9B=B4=E6=96=B0=20pnpm=20?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E8=87=B3=20v10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 GitHub Actions 中的 pnpm 版本从 v9 升级到 v10 - 保持缓存配置不变以提高构建性能 --- .github/workflows/github-pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index aea6665..38a51a5 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -27,7 +27,7 @@ jobs: - name: 设置 pnpm(启用 pnpm 缓存) uses: pnpm/action-setup@v4 with: - version: 9 + version: 10 run_install: false cache: true From 4340450d7811f6308e79380b22f18fb35294d1d5 Mon Sep 17 00:00:00 2001 From: coolxitech Date: Mon, 15 Dec 2025 22:07:23 +0800 Subject: [PATCH 14/14] =?UTF-8?q?chore(ci):=20=E4=BC=98=E5=8C=96=20GitHub?= =?UTF-8?q?=20Pages=20=E9=83=A8=E7=BD=B2=E5=B7=A5=E4=BD=9C=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 合并 pnpm 安装与构建步骤 - 移除冗余的 node-version 配置 - 简化工作流中的缓存逻辑 - 更新 pnpm 版本管理方式 - 减少不必要的 workflow 执行时间 --- .github/workflows/github-pages.yml | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index 38a51a5..7911543 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -24,15 +24,10 @@ jobs: with: node-version: 20 # 建议使用 LTS 版本 - - name: 设置 pnpm(启用 pnpm 缓存) + - name: 安装 pnpm 并构建前端 uses: pnpm/action-setup@v4 with: - version: 10 - run_install: false - cache: true - - - name: 安装依赖 - run: pnpm install + run_install: true - name: 构建前端项目 run: pnpm run build