mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-11 23:45:11 +08:00
引入项目基础目录结构,包含多语言支持、主要页面与组件、核心游戏逻辑、UI 组件库、加密与本地持久化、自动化 Docker 构建流程、GitHub issue 模板(中英文)、README(中英文)、LICENSE 及开发配置文件。实现 OGame 单机版主要功能模块,为后续开发和扩展奠定基础。
1 line
19 KiB
JavaScript
1 line
19 KiB
JavaScript
import{t as e}from"./CardDescription-Cb9v68Xa.js";import{$t as t,An as n,Bn as r,Bt as i,Fn as a,G as o,Gn as s,Gt as c,In as l,Jn as u,Jt as d,K as f,Kt as p,Lt as m,Mn as h,Nn as g,Pn as _,Qn as v,Qt as y,Rt as b,Sn as x,Tn as S,Un as C,Vn as w,Wt as T,an as E,ar as D,bn as ee,cr as O,dt as k,er as A,ft as j,ir as M,jn as N,jt as P,kn as F,ln as I,lt as L,qt as te,rr as R,sn as z,sr as B,ut as V,wt as ne,xn as re,yn as ie,zn as H,zt as U}from"./index-BpOElaf9.js";var W=a({__name:`AlertDialogAction`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;return z(),(e,r)=>(s(),n(R(y),D(l(t)),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),[G,K]=ie(`AlertDialogContent`),q=a({__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 i=e,a=I(t);z();let o=A();return K({onCancelElementChange:e=>{o.value=e}}),(e,t)=>(s(),n(R(d),r({...i,...R(a)},{role:`alertdialog`,onPointerDownOutside:t[0]||=S(()=>{},[`prevent`]),onInteractOutside:t[1]||=S(()=>{},[`prevent`]),onOpenAutoFocus:t[2]||=()=>{w(()=>{o.value?.focus({preventScroll:!0})})}}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),J=a({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,i=G(),{forwardRef:a,currentElement:o}=z();return C(()=>{i.onCancelElementChange(o.value)}),(e,i)=>(s(),n(R(y),r(t,{ref:R(a)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),Y=a({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;return z(),(e,r)=>(s(),n(R(te),D(l(t)),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),ae=a({__name:`AlertDialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return z(),(e,r)=>(s(),n(R(p),D(l(t)),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),oe=a({__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,r)=>(s(),n(R(c),D(l(t)),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),se=a({__name:`AlertDialogRoot`,props:{open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1}},emits:[`update:open`],setup(e,{emit:i}){let a=E(e,i);return z(),(e,i)=>(s(),n(R(t),r(R(a),{modal:!0}),{default:v(t=>[u(e.$slots,`default`,D(l(t)))]),_:3},16))}}),ce=a({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e;return z(),(e,r)=>(s(),n(R(T),D(l(t)),{default:v(()=>[u(e.$slots,`default`)]),_:3},16))}}),le=P(`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`}]]),ue=P(`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`}]]),de=P(`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`}]]),fe=P(`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`}]]),pe=a({__name:`AlertDialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let i=E(e,t);return(e,t)=>(s(),n(R(se),r({"data-slot":`alert-dialog`},R(i)),{default:v(t=>[u(e.$slots,`default`,D(l(t)))]),_:3},16))}}),me=a({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,a=m(t,`class`);return(e,o)=>(s(),n(R(W),r(R(a),{class:R(i)(R(b)(),t.class)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16,[`class`]))}}),he=a({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,a=m(t,`class`);return(e,o)=>(s(),n(R(J),r(R(a),{class:R(i)(R(b)({variant:`outline`}),`mt-2 sm:mt-0`,t.class)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16,[`class`]))}}),ge=a({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 a=e,o=t,c=E(m(a,`class`),o);return(e,t)=>(s(),n(R(oe),null,{default:v(()=>[_(R(ae),{"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`}),_(R(q),r({"data-slot":`alert-dialog-content`},{...e.$attrs,...R(c)},{class:R(i)(`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`,a.class)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),_e=a({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,a=m(t,`class`);return(e,o)=>(s(),n(R(Y),r({"data-slot":`alert-dialog-description`},R(a),{class:R(i)(`text-muted-foreground text-sm`,t.class)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16,[`class`]))}}),ve=a({__name:`AlertDialogFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(s(),h(`div`,{"data-slot":`alert-dialog-footer`,class:M(R(i)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,t.class))},[u(e.$slots,`default`)],2))}}),ye=a({__name:`AlertDialogHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(s(),h(`div`,{"data-slot":`alert-dialog-header`,class:M(R(i)(`flex flex-col gap-2 text-center sm:text-left`,t.class))},[u(e.$slots,`default`)],2))}}),be=a({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,a=m(t,`class`);return(e,o)=>(s(),n(R(ce),r({"data-slot":`alert-dialog-title`},R(a),{class:R(i)(`text-lg font-semibold`,t.class)}),{default:v(()=>[u(e.$slots,`default`)]),_:3},16,[`class`]))}}),xe=O(((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)})}))(),X=1,Z=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:X++,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],H(e))i=!1,this.create({id:n,type:`default`,message:e});else if(Ce(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`&&!H(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`&&!H(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`&&!H(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`&&!H(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||X++,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 Se(e,t){let n=t?.id||X++;return Z.create({message:e,id:n,type:`default`,...t}),n}var Ce=e=>e&&typeof e==`object`&&`ok`in e&&typeof e.ok==`boolean`&&`status`in e&&typeof e.status==`number`,we=Se,Q=Object.assign(we,{success:Z.success,info:Z.info,warning:Z.warning,error:Z.error,custom:Z.custom,message:Z.message,promise:Z.promise,dismiss:Z.dismiss,loading:Z.loading},{getHistory:()=>Z.toasts,getToasts:()=>Z.getActiveToasts()}),Te={class:`container mx-auto p-4 sm:p-6 space-y-6`},Ee={class:`flex items-center justify-between`},De={class:`text-2xl font-bold`},Oe={class:`flex items-center justify-between p-4 border rounded-lg`},ke={class:`space-y-1`},Ae={class:`font-medium`},je={class:`text-sm text-muted-foreground`},Me={class:`flex items-center justify-between p-4 border rounded-lg`},Ne={class:`space-y-1`},Pe={class:`font-medium`},Fe={class:`text-sm text-muted-foreground`},Ie={class:`flex gap-2`},Le={class:`flex items-center justify-between p-4 border rounded-lg border-destructive/50`},Re={class:`space-y-1`},ze={class:`font-medium text-destructive`},Be={class:`text-sm text-muted-foreground`},Ve={class:`flex items-center justify-between`},$={class:`flex items-center justify-between`},He={class:`space-y-1`},Ue={class:`text-sm text-muted-foreground`},We={class:`space-y-2`},Ge={class:`flex items-center justify-between text-sm`},Ke={class:`text-muted-foreground`},qe={class:`font-medium`},Je={class:`flex items-center justify-between text-sm`},Ye={class:`text-muted-foreground`},Xe={class:`font-medium`},Ze={class:`pt-2 border-t space-y-2`},Qe={class:`text-sm font-medium`},$e={class:`flex flex-col gap-2`},et={class:`ml-auto text-xs text-muted-foreground`},tt=a({__name:`SettingsView`,setup(t){let{t:r}=ee(),i=re(),a=A(),c=A(!1),l=A(i.player.name),u=A(!1),d=A(``),p=A(``),m=null,y=()=>{window.open(`https://github.com/${x.author}/${x.name}`,`_blank`)},b=()=>{window.open(`https://qm.qq.com/q/${x.id}`,`_blank`)},S=async()=>{try{c.value=!0;let e=localStorage.getItem(x.name);if(!e){Q.error(r(`settings.exportFailed`));return}let t=`${x.name}-${new Date().toISOString().slice(0,10)}-${Date.now()}.json`;(0,xe.saveAs)(new Blob([e],{type:`application/json`}),t),Q.success(r(`settings.exportSuccess`))}catch(e){console.error(`Export failed:`,e),Q.error(r(`settings.exportFailed`))}finally{c.value=!1}},C=()=>{a.value?.click()},w=e=>{let t=e.target.files?.[0];t&&(d.value=r(`settings.importConfirmTitle`),p.value=r(`settings.importConfirmMessage`),u.value=!0,m=()=>T(t))},T=async e=>{try{let t=new FileReader;t.onload=e=>{try{let t=e.target?.result;typeof t==`string`?(localStorage.setItem(x.name,t),Q.success(r(`settings.importSuccess`)),setTimeout(()=>location.reload(),500)):Q.error(r(`settings.importFailed`))}catch(e){let t=e instanceof Error?e.message:String(e);Q.error(r(`settings.importFailed`)+`: `+t)}},t.readAsText(e)}catch(e){console.error(`Import failed:`,e),Q.error(r(`settings.importFailed`))}},E=()=>{d.value=r(`settings.clearConfirmTitle`),p.value=r(`settings.clearConfirmMessage`),u.value=!0,m=D},D=()=>{localStorage.clear(),window.location.reload()},O=()=>{l.value.trim()&&(i.player.name=l.value.trim())},M=()=>{m&&=(m(),null),u.value=!1},P=()=>{m=null,u.value=!1,a.value&&(a.value.value=``)};return(t,m)=>(s(),h(`div`,Te,[F(`div`,Ee,[F(`h1`,De,B(R(r)(`nav.settings`)),1)]),_(R(j),null,{default:v(()=>[_(R(V),null,{default:v(()=>[_(R(L),null,{default:v(()=>[g(B(R(r)(`settings.dataManagement`)),1)]),_:1}),_(R(e),null,{default:v(()=>[g(B(R(r)(`settings.dataManagementDesc`)),1)]),_:1})]),_:1}),_(R(k),{class:`space-y-4`},{default:v(()=>[F(`div`,Oe,[F(`div`,ke,[F(`h3`,Ae,B(R(r)(`settings.exportData`)),1),F(`p`,je,B(R(r)(`settings.exportDataDesc`)),1)]),_(R(U),{onClick:S,disabled:c.value},{default:v(()=>[_(R(le),{class:`mr-2 h-4 w-4`}),g(` `+B(c.value?R(r)(`settings.exporting`):R(r)(`settings.export`)),1)]),_:1},8,[`disabled`])]),F(`div`,Me,[F(`div`,Ne,[F(`h3`,Pe,B(R(r)(`settings.importData`)),1),F(`p`,Fe,B(R(r)(`settings.importDataDesc`)),1)]),F(`div`,Ie,[F(`input`,{ref_key:`fileInputRef`,ref:a,type:`file`,accept:`.json`,class:`hidden`,onChange:w},null,544),_(R(U),{onClick:C,variant:`outline`},{default:v(()=>[_(R(fe),{class:`mr-2 h-4 w-4`}),g(` `+B(R(r)(`settings.selectFile`)),1)]),_:1})])]),F(`div`,Le,[F(`div`,Re,[F(`h3`,ze,B(R(r)(`settings.clearData`)),1),F(`p`,Be,B(R(r)(`settings.clearDataDesc`)),1)]),_(R(U),{onClick:E,variant:`destructive`},{default:v(()=>[_(R(de),{class:`mr-2 h-4 w-4`}),g(` `+B(R(r)(`settings.clear`)),1)]),_:1})])]),_:1})]),_:1}),_(R(j),null,{default:v(()=>[_(R(V),null,{default:v(()=>[_(R(L),null,{default:v(()=>[g(B(R(r)(`settings.gameSettings`)),1)]),_:1}),_(R(e),null,{default:v(()=>[g(B(R(r)(`settings.gameSettingsDesc`)),1)]),_:1})]),_:1}),_(R(k),{class:`space-y-4`},{default:v(()=>[F(`div`,Ve,[_(R(o),{for:`player-name`},{default:v(()=>[g(B(R(r)(`settings.playerName`)),1)]),_:1}),_(R(f),{id:`player-name`,modelValue:l.value,"onUpdate:modelValue":m[0]||=e=>l.value=e,onBlur:O,class:`max-w-xs`},null,8,[`modelValue`])]),F(`div`,$,[F(`div`,He,[_(R(o),null,{default:v(()=>[g(B(R(r)(`settings.gameSpeed`)),1)]),_:1}),F(`p`,Ue,B(R(r)(`settings.gameSpeedDesc`)),1)]),m[2]||=F(`div`,{class:`text-2xl font-bold`},`1x`,-1)])]),_:1})]),_:1}),_(R(j),null,{default:v(()=>[_(R(V),null,{default:v(()=>[_(R(L),null,{default:v(()=>[g(B(R(r)(`settings.about`)),1)]),_:1})]),_:1}),_(R(k),{class:`space-y-4`},{default:v(()=>[F(`div`,We,[F(`div`,Ge,[F(`span`,Ke,B(R(r)(`settings.version`))+`:`,1),F(`span`,qe,B(R(x).version),1)]),F(`div`,Je,[F(`span`,Ye,B(R(r)(`settings.buildDate`))+`:`,1),F(`span`,Xe,B(new Date().toLocaleDateString()),1)])]),F(`div`,Ze,[F(`h3`,Qe,B(R(r)(`settings.community`)),1),F(`div`,$e,[_(R(U),{variant:`outline`,class:`w-full justify-start`,onClick:y},{default:v(()=>[_(R(ue),{class:`mr-2 h-4 w-4`}),g(` `+B(R(r)(`settings.github`)),1)]),_:1}),R(i).locale===`zh-CN`||R(i).locale===`zh-TW`?(s(),n(R(U),{key:0,variant:`outline`,class:`w-full justify-start`,onClick:b},{default:v(()=>[_(R(ne),{class:`mr-2 h-4 w-4`}),g(` `+B(R(r)(`settings.qqGroup`))+` `,1),F(`span`,et,B(R(x).qq),1)]),_:1})):N(``,!0)])])]),_:1})]),_:1}),_(R(pe),{open:u.value,"onUpdate:open":m[1]||=e=>u.value=e},{default:v(()=>[_(R(ge),null,{default:v(()=>[_(R(ye),null,{default:v(()=>[_(R(be),null,{default:v(()=>[g(B(d.value),1)]),_:1}),_(R(_e),null,{default:v(()=>[g(B(p.value),1)]),_:1})]),_:1}),_(R(ve),null,{default:v(()=>[_(R(he),{onClick:P},{default:v(()=>[g(B(R(r)(`common.cancel`)),1)]),_:1}),_(R(me),{onClick:M},{default:v(()=>[g(B(R(r)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{tt as default}; |