Files
ogame-vue-ts/docs/assets/SettingsView-VjOhq7qI.js
谦君 9754140cbf feat: 优化 README 及文档结构,新增英文说明
删除 README.zh-CN.md,新增英文版 README.EN.md,简体中文说明合并至 README.md 并补充内容。同步 docs/assets 下页面 JS/CSS 文件,优化文档资源命名与引用,提升多语言文档一致性。
2025-12-11 15:21:51 +08:00

1 line
13 KiB
JavaScript
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{t as e}from"./rolldown-runtime-CIDIeb-o.js";import{C as t,D as n,Dt as r,E as i,G as a,J as o,K as s,O as c,Ot as l,Q as u,R as d,S as f,St as p,T as m,X as h,Y as g,Z as _,jt as v,k as y,kt as b,n as x,pt as S,q as C,rt as w,st as T,ut as E,w as D}from"./vendor-ui-DBxeWLyT.js";import{t as O}from"./vendor-vue-Bqq1sBNf.js";import{t as k}from"./CardDescription-CRV0m8La.js";import{Bt as ee,G as A,Ht as j,K as te,Lt as M,Rt as N,Vt as ne,dt as P,ft as F,jt as I,lt as L,ut as R,zt as z}from"./index-Cch-Ig40.js";var B=I(`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`}]]),V=I(`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`}]]),H=I(`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`}]]),U=I(`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`}]]),W=I(`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`}]]),G=_({__name:`AlertDialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:n}){let i=d(e,n);return(e,n)=>(T(),s(r(t),w({"data-slot":`alert-dialog`},r(i)),{default:S(t=>[E(e.$slots,`default`,b(u(t)))]),_:3},16))}}),K=_({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=x(t,`class`);return(e,i)=>(T(),s(r(y),w(r(n),{class:r(z)(r(M)(),t.class)}),{default:S(()=>[E(e.$slots,`default`)]),_:3},16,[`class`]))}}),q=_({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,i=x(t,`class`);return(e,a)=>(T(),s(r(n),w(r(i),{class:r(z)(r(M)({variant:`outline`}),`mt-2 sm:mt-0`,t.class)}),{default:S(()=>[E(e.$slots,`default`)]),_:3},16,[`class`]))}}),J=_({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,i=t,a=d(x(n,`class`),i);return(e,t)=>(T(),s(r(D),null,{default:S(()=>[h(r(m),{"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`}),h(r(c),w({"data-slot":`alert-dialog-content`},{...e.$attrs,...r(a)},{class:r(z)(`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:S(()=>[E(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),Y=_({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=x(t,`class`);return(e,a)=>(T(),s(r(i),w({"data-slot":`alert-dialog-description`},r(n),{class:r(z)(`text-muted-foreground text-sm`,t.class)}),{default:S(()=>[E(e.$slots,`default`)]),_:3},16,[`class`]))}}),X=_({__name:`AlertDialogFooter`,props:{class:{}},setup(e){let t=e;return(e,n)=>(T(),o(`div`,{"data-slot":`alert-dialog-footer`,class:l(r(z)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,t.class))},[E(e.$slots,`default`)],2))}}),Z=_({__name:`AlertDialogHeader`,props:{class:{}},setup(e){let t=e;return(e,n)=>(T(),o(`div`,{"data-slot":`alert-dialog-header`,class:l(r(z)(`flex flex-col gap-2 text-center sm:text-left`,t.class))},[E(e.$slots,`default`)],2))}}),re=_({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let t=e,n=x(t,`class`);return(e,i)=>(T(),s(r(f),w({"data-slot":`alert-dialog-title`},r(n),{class:r(z)(`text-lg font-semibold`,t.class)}),{default:S(()=>[E(e.$slots,`default`)]),_:3},16,[`class`]))}}),ie=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)})}))(),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`},Se={class:`flex items-center justify-between`},Ce={class:`space-y-1`},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`},$=_({__name:`SettingsView`,setup(e){let{t}=ee(),n=ne(),i=p(),c=p(!1),l=p(n.player.name),u=p(!1),d=p(``),f=p(``),m=null,_=()=>{window.open(`https://github.com/${j.author}/${j.name}`,`_blank`)},y=()=>{window.open(`https://qm.qq.com/q/${j.id}`,`_blank`)},b=async()=>{try{c.value=!0;let e=localStorage.getItem(j.name);if(!e){O.error(t(`settings.exportFailed`));return}let n=`${j.name}-${new Date().toISOString().slice(0,10)}-${Date.now()}.json`;(0,ie.saveAs)(new Blob([e],{type:`application/json`}),n),O.success(t(`settings.exportSuccess`))}catch(e){console.error(`Export failed:`,e),O.error(t(`settings.exportFailed`))}finally{c.value=!1}},x=()=>{i.value?.click()},w=e=>{let n=e.target.files?.[0];n&&(d.value=t(`settings.importConfirmTitle`),f.value=t(`settings.importConfirmMessage`),u.value=!0,m=()=>E(n))},E=async e=>{try{let n=new FileReader;n.onload=e=>{try{let n=e.target?.result;typeof n==`string`?(localStorage.setItem(j.name,n),O.success(t(`settings.importSuccess`)),setTimeout(()=>location.reload(),500)):O.error(t(`settings.importFailed`))}catch(e){let n=e instanceof Error?e.message:String(e);O.error(t(`settings.importFailed`)+`: `+n)}},n.readAsText(e)}catch(e){console.error(`Import failed:`,e),O.error(t(`settings.importFailed`))}},D=()=>{d.value=t(`settings.clearConfirmTitle`),f.value=t(`settings.clearConfirmMessage`),u.value=!0,m=M},M=()=>{localStorage.clear(),window.location.reload()},I=()=>{l.value.trim()&&(n.player.name=l.value.trim())},z=()=>{m&&=(m(),null),u.value=!1},$=()=>{m=null,u.value=!1,i.value&&(i.value.value=``)};return(e,p)=>(T(),o(`div`,ae,[a(`div`,oe,[a(`h1`,se,v(r(t)(`nav.settings`)),1)]),h(r(F),null,{default:S(()=>[h(r(R),null,{default:S(()=>[h(r(L),null,{default:S(()=>[g(v(r(t)(`settings.dataManagement`)),1)]),_:1}),h(r(k),null,{default:S(()=>[g(v(r(t)(`settings.dataManagementDesc`)),1)]),_:1})]),_:1}),h(r(P),{class:`space-y-4`},{default:S(()=>[a(`div`,ce,[a(`div`,le,[a(`h3`,ue,v(r(t)(`settings.exportData`)),1),a(`p`,de,v(r(t)(`settings.exportDataDesc`)),1)]),h(r(N),{onClick:b,disabled:c.value},{default:S(()=>[h(r(B),{class:`mr-2 h-4 w-4`}),g(` `+v(c.value?r(t)(`settings.exporting`):r(t)(`settings.export`)),1)]),_:1},8,[`disabled`])]),a(`div`,fe,[a(`div`,pe,[a(`h3`,me,v(r(t)(`settings.importData`)),1),a(`p`,he,v(r(t)(`settings.importDataDesc`)),1)]),a(`div`,ge,[a(`input`,{ref_key:`fileInputRef`,ref:i,type:`file`,accept:`.json`,class:`hidden`,onChange:w},null,544),h(r(N),{onClick:x,variant:`outline`},{default:S(()=>[h(r(W),{class:`mr-2 h-4 w-4`}),g(` `+v(r(t)(`settings.selectFile`)),1)]),_:1})])]),a(`div`,_e,[a(`div`,ve,[a(`h3`,ye,v(r(t)(`settings.clearData`)),1),a(`p`,be,v(r(t)(`settings.clearDataDesc`)),1)]),h(r(N),{onClick:D,variant:`destructive`},{default:S(()=>[h(r(U),{class:`mr-2 h-4 w-4`}),g(` `+v(r(t)(`settings.clear`)),1)]),_:1})])]),_:1})]),_:1}),h(r(F),null,{default:S(()=>[h(r(R),null,{default:S(()=>[h(r(L),null,{default:S(()=>[g(v(r(t)(`settings.gameSettings`)),1)]),_:1}),h(r(k),null,{default:S(()=>[g(v(r(t)(`settings.gameSettingsDesc`)),1)]),_:1})]),_:1}),h(r(P),{class:`space-y-4`},{default:S(()=>[a(`div`,xe,[h(r(A),{for:`player-name`},{default:S(()=>[g(v(r(t)(`settings.playerName`)),1)]),_:1}),h(r(te),{id:`player-name`,modelValue:l.value,"onUpdate:modelValue":p[0]||=e=>l.value=e,onBlur:I,class:`max-w-xs`},null,8,[`modelValue`])]),a(`div`,Se,[a(`div`,Ce,[h(r(A),null,{default:S(()=>[g(v(r(t)(`settings.gameSpeed`)),1)]),_:1}),a(`p`,we,v(r(t)(`settings.gameSpeedDesc`)),1)]),p[2]||=a(`div`,{class:`text-2xl font-bold`},`1x`,-1)])]),_:1})]),_:1}),h(r(F),null,{default:S(()=>[h(r(R),null,{default:S(()=>[h(r(L),null,{default:S(()=>[g(v(r(t)(`settings.about`)),1)]),_:1})]),_:1}),h(r(P),{class:`space-y-4`},{default:S(()=>[a(`div`,Te,[a(`div`,Ee,[a(`span`,De,v(r(t)(`settings.version`))+`:`,1),a(`span`,Oe,v(r(j).version),1)]),a(`div`,Q,[a(`span`,ke,v(r(t)(`settings.buildDate`))+`:`,1),a(`span`,Ae,v(new Date().toLocaleDateString()),1)])]),a(`div`,je,[a(`h3`,Me,v(r(t)(`settings.community`)),1),a(`div`,Ne,[h(r(N),{variant:`outline`,class:`w-full justify-start`,onClick:_},{default:S(()=>[h(r(V),{class:`mr-2 h-4 w-4`}),g(` `+v(r(t)(`settings.github`)),1)]),_:1}),r(n).locale===`zh-CN`||r(n).locale===`zh-TW`?(T(),s(r(N),{key:0,variant:`outline`,class:`w-full justify-start`,onClick:y},{default:S(()=>[h(r(H),{class:`mr-2 h-4 w-4`}),g(` `+v(r(t)(`settings.qqGroup`))+` `,1),a(`span`,Pe,v(r(j).qq),1)]),_:1})):C(``,!0)])])]),_:1})]),_:1}),h(r(G),{open:u.value,"onUpdate:open":p[1]||=e=>u.value=e},{default:S(()=>[h(r(J),null,{default:S(()=>[h(r(Z),null,{default:S(()=>[h(r(re),null,{default:S(()=>[g(v(d.value),1)]),_:1}),h(r(Y),null,{default:S(()=>[g(v(f.value),1)]),_:1})]),_:1}),h(r(X),null,{default:S(()=>[h(r(q),{onClick:$},{default:S(()=>[g(v(r(t)(`common.cancel`)),1)]),_:1}),h(r(K),{onClick:z},{default:S(()=>[g(v(r(t)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{$ as default};