mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-11 23:45:11 +08:00
添加了docs目录及其静态资源文件,支持前端文档和演示页面部署。新增dist-electron/main.js,实现Electron主进程窗口加载本地docs或开发服务器。更新.gitignore,允许docs目录纳入版本控制。
1 line
9.9 KiB
JavaScript
1 line
9.9 KiB
JavaScript
import{At as e,Cn as t,Dt as n,En as r,Ft as i,Kt as a,Mt as o,Nt as s,On as c,Ot as l,Tn as u,Vt as d,Xt as ee,Yt as f,hn as p,in as m,jt as h,kt as te}from"./game-logic-CfBcTF_c.js";import"./vendor-pinia-DP9x75p8.js";import"./vendor-crypto-Ce_BCn-h.js";import"./game-i18n-DEf7ySVe.js";import{c as g,n as _}from"./vendor-others-CUjrprN5.js";import{A as v,D as y,E as b,H as x,M as S,N as C,O as w,j as T,k as E}from"./vendor-reka-ui-CZQh7FLl.js";import{t as D}from"./vendor-utils-Dg-HLkEU.js";import"./vendor-vueuse-C7EbLx--.js";import{L as O,R as k,T as A,b as j,i as M,s as N,y as P}from"./vendor-icons-W6Ny__75.js";import{t as F}from"./CardDescription-D2AN1hhX.js";import{I as ne,L as I,M as L,N as R,P as z,c as B,j as V,l as H,s as U,u as W}from"./index-DWmvUlvu.js";var G=s({__name:`AlertDialog`,props:{open:{type:Boolean},defaultOpen:{type:Boolean}},emits:[`update:open`],setup(e,{emit:n}){let o=x(e,n);return(e,n)=>(a(),l(t(y),d({"data-slot":`alert-dialog`},t(o)),{default:m(t=>[f(e.$slots,`default`,r(i(t)))]),_:3},16))}}),K=s({__name:`AlertDialogAction`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(C),d(t(r),{class:t(R)(t(V)(),n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),q=s({__name:`AlertDialogCancel`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(T),d(t(r),{class:t(R)(t(V)({variant:`outline`}),`mt-2 sm:mt-0`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),J=s({inheritAttrs:!1,__name:`AlertDialogContent`,props:{forceMount:{type:Boolean},disableOutsidePointerEvents:{type:Boolean},asChild:{type:Boolean},as:{},class:{}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:n}){let r=e,i=n,s=x(g(r,`class`),i);return(e,n)=>(a(),l(t(w),null,{default:m(()=>[o(t(E),{"data-slot":`alert-dialog-overlay`,class:`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80`}),o(t(S),d({"data-slot":`alert-dialog-content`},{...e.$attrs,...t(s)},{class:t(R)(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,r.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`])]),_:3}))}}),Y=s({__name:`AlertDialogDescription`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(v),d({"data-slot":`alert-dialog-description`},t(r),{class:t(R)(`text-muted-foreground text-sm`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),X=s({__name:`AlertDialogFooter`,props:{class:{}},setup(n){let r=n;return(n,i)=>(a(),e(`div`,{"data-slot":`alert-dialog-footer`,class:u(t(R)(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,r.class))},[f(n.$slots,`default`)],2))}}),Z=s({__name:`AlertDialogHeader`,props:{class:{}},setup(n){let r=n;return(n,i)=>(a(),e(`div`,{"data-slot":`alert-dialog-header`,class:u(t(R)(`flex flex-col gap-2 text-center sm:text-left`,r.class))},[f(n.$slots,`default`)],2))}}),re=s({__name:`AlertDialogTitle`,props:{asChild:{type:Boolean},as:{},class:{}},setup(e){let n=e,r=g(n,`class`);return(e,i)=>(a(),l(t(b),d({"data-slot":`alert-dialog-title`},t(r),{class:t(R)(`text-lg font-semibold`,n.class)}),{default:m(()=>[f(e.$slots,`default`)]),_:3},16,[`class`]))}}),ie=D(),ae={class:`container mx-auto p-4 sm:p-6 space-y-6`},oe={class:`flex items-center justify-between`},se={class:`text-2xl font-bold`},ce={class:`flex items-center justify-between p-4 border rounded-lg`},le={class:`space-y-1`},ue={class:`font-medium`},de={class:`text-sm text-muted-foreground`},fe={class:`flex items-center justify-between p-4 border rounded-lg`},pe={class:`space-y-1`},me={class:`font-medium`},he={class:`text-sm text-muted-foreground`},ge={class:`flex gap-2`},_e={class:`flex items-center justify-between p-4 border rounded-lg border-destructive/50`},ve={class:`space-y-1`},ye={class:`font-medium text-destructive`},be={class:`text-sm text-muted-foreground`},xe={class:`flex items-center justify-between p-4 border rounded-lg`},Se={class:`space-y-1`},Ce={class:`font-medium`},we={class:`text-sm text-muted-foreground`},Te={class:`space-y-2`},Ee={class:`flex items-center justify-between text-sm`},De={class:`text-muted-foreground`},Oe={class:`font-medium`},Q={class:`flex items-center justify-between text-sm`},ke={class:`text-muted-foreground`},Ae={class:`font-medium`},je={class:`pt-2 border-t space-y-2`},Me={class:`text-sm font-medium`},Ne={class:`flex flex-col gap-2`},Pe={class:`ml-auto text-xs text-muted-foreground`},$=s({__name:`SettingsView`,setup(r){let{t:i}=z(),s=ne(),u=p(),d=p(!1),f=p(!1),g=p(``),v=p(``),y=null,b=()=>{window.open(`https://github.com/${I.author}/${I.name}`,`_blank`)},x=()=>{window.open(`https://qm.qq.com/q/${I.id}`,`_blank`)},S=async()=>{try{d.value=!0;let e=localStorage.getItem(I.name),t=localStorage.getItem(`${I.name}-universe`);if(!e){_.error(i(`settings.exportFailed`));return}let n={game:e,universe:t||null},r=`${I.name}-${new Date().toISOString().slice(0,10)}-${Date.now()}.json`,a=JSON.stringify(n,null,2);(0,ie.saveAs)(new Blob([a],{type:`application/json`}),r),_.success(i(`settings.exportSuccess`))}catch(e){console.error(`Export failed:`,e),_.error(i(`settings.exportFailed`))}finally{d.value=!1}},C=()=>{u.value?.click()},w=e=>{let t=e.target.files?.[0];t&&(g.value=i(`settings.importConfirmTitle`),v.value=i(`settings.importConfirmMessage`),f.value=!0,s.isPaused=!0,y=()=>T(t))},T=async e=>{try{let t=new FileReader;t.onload=e=>{try{let t=e.target?.result;if(typeof t==`string`){let e=JSON.parse(t);if(typeof e==`string`||!e.game){localStorage.setItem(I.name,t),_.success(i(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3);return}e.game&&localStorage.setItem(I.name,e.game),e.universe&&localStorage.setItem(`${I.name}-universe`,e.universe),_.success(i(`settings.importSuccess`)),setTimeout(()=>window.location.reload(),1e3)}else _.error(i(`settings.importFailed`))}catch(e){let t=e instanceof Error?e.message:String(e);_.error(i(`settings.importFailed`)+`: `+t)}},t.readAsText(e)}catch(e){console.error(`Import failed:`,e),_.error(i(`settings.importFailed`))}},E=()=>{g.value=i(`settings.clearConfirmTitle`),v.value=i(`settings.clearConfirmMessage`),f.value=!0,y=D},D=()=>{localStorage.clear(),window.location.reload()},R=()=>{s.isPaused=!s.isPaused,s.isPaused?_.info(i(`settings.gamePaused`)):_.success(i(`settings.gameResumed`))},V=()=>{y&&=(y(),null),f.value=!1},$=()=>{s.isPaused=!1,y=null,f.value=!1,u.value&&(u.value.value=``)};return(r,p)=>(a(),e(`div`,ae,[n(`div`,oe,[n(`h1`,se,c(t(i)(`nav.settings`)),1)]),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.dataManagement`)),1)]),_:1}),o(t(F),null,{default:m(()=>[h(c(t(i)(`settings.dataManagementDesc`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,ce,[n(`div`,le,[n(`h3`,ue,c(t(i)(`settings.exportData`)),1),n(`p`,de,c(t(i)(`settings.exportDataDesc`)),1)]),o(t(L),{onClick:S,disabled:d.value},{default:m(()=>[o(t(k),{class:`mr-2 h-4 w-4`}),h(` `+c(d.value?t(i)(`settings.exporting`):t(i)(`settings.export`)),1)]),_:1},8,[`disabled`])]),n(`div`,fe,[n(`div`,pe,[n(`h3`,me,c(t(i)(`settings.importData`)),1),n(`p`,he,c(t(i)(`settings.importDataDesc`)),1)]),n(`div`,ge,[n(`input`,{ref_key:`fileInputRef`,ref:u,type:`file`,accept:`.json`,class:`hidden`,onChange:w},null,544),o(t(L),{onClick:C,variant:`outline`},{default:m(()=>[o(t(M),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.selectFile`)),1)]),_:1})])]),n(`div`,_e,[n(`div`,ve,[n(`h3`,ye,c(t(i)(`settings.clearData`)),1),n(`p`,be,c(t(i)(`settings.clearDataDesc`)),1)]),o(t(L),{onClick:E,variant:`destructive`},{default:m(()=>[o(t(N),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.clear`)),1)]),_:1})])]),_:1})]),_:1}),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.gameSettings`)),1)]),_:1}),o(t(F),null,{default:m(()=>[h(c(t(i)(`settings.gameSettingsDesc`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,xe,[n(`div`,Se,[n(`h3`,Ce,c(t(i)(`settings.gamePause`)),1),n(`p`,we,c(t(i)(`settings.gamePauseDesc`)),1)]),o(t(L),{onClick:R,variant:t(s).isPaused?`default`:`outline`},{default:m(()=>[(a(),l(ee(t(s).isPaused?t(P):t(j)),{class:`mr-2 h-4 w-4`})),h(` `+c(t(s).isPaused?t(i)(`settings.resume`):t(i)(`settings.pause`)),1)]),_:1},8,[`variant`])])]),_:1})]),_:1}),o(t(W),null,{default:m(()=>[o(t(B),null,{default:m(()=>[o(t(U),null,{default:m(()=>[h(c(t(i)(`settings.about`)),1)]),_:1})]),_:1}),o(t(H),{class:`space-y-4`},{default:m(()=>[n(`div`,Te,[n(`div`,Ee,[n(`span`,De,c(t(i)(`settings.version`))+`:`,1),n(`span`,Oe,c(t(I).version),1)]),n(`div`,Q,[n(`span`,ke,c(t(i)(`settings.buildDate`))+`:`,1),n(`span`,Ae,c(t(I).buildDate),1)])]),n(`div`,je,[n(`h3`,Me,c(t(i)(`settings.community`)),1),n(`div`,Ne,[o(t(L),{variant:`outline`,class:`w-full justify-start`,onClick:b},{default:m(()=>[o(t(O),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.github`)),1)]),_:1}),t(s).locale===`zh-CN`||t(s).locale===`zh-TW`?(a(),l(t(L),{key:0,variant:`outline`,class:`w-full justify-start`,onClick:x},{default:m(()=>[o(t(A),{class:`mr-2 h-4 w-4`}),h(` `+c(t(i)(`settings.qqGroup`))+` `,1),n(`span`,Pe,c(t(I).qq),1)]),_:1})):te(``,!0)])])]),_:1})]),_:1}),o(t(G),{open:f.value,"onUpdate:open":p[0]||=e=>f.value=e},{default:m(()=>[o(t(J),null,{default:m(()=>[o(t(Z),null,{default:m(()=>[o(t(re),null,{default:m(()=>[h(c(g.value),1)]),_:1}),o(t(Y),null,{default:m(()=>[h(c(v.value),1)]),_:1})]),_:1}),o(t(X),null,{default:m(()=>[o(t(q),{onClick:$},{default:m(()=>[h(c(t(i)(`common.cancel`)),1)]),_:1}),o(t(K),{onClick:V},{default:m(()=>[h(c(t(i)(`common.confirm`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{$ as default}; |