Vue 3 + TypeScript + Vite 单页应用,构建产物由 Gradle 打包进模组
jar(gitparcel/web/),在游戏内执行 /parcel web start 后由模组内置 HTTP 服务托管。
前置:Node.js 20.19+(建议 22+)。
npm install
npm run devVite 开发服务器默认运行在 5173 端口,/api 请求代理到本机 5639 端口——先在游戏内执行
/parcel web start,再从其输出的链接中取出 token 访问 http://localhost:5173/?token=<token>。
npm run build
npm run mocknpm run mock 启动一个内存 mock 服务器(5640 端口),实现与真实控制台相同的令牌语义与全部 /api
端点(含分支快照历史、失效游标、异步操作进度),并伺服 dist/。打开其输出的带 token URL
即可在浏览器中走查全部页面。
npm test # vitest 单元测试(纯逻辑:格式化、操作跟踪、快照树重建)
npm run check-i18n # 中英键位对齐 + 代码引用键存在性审计
npm run check-errors # 错误码契约审计(Java 发射点 vs 语言包 vs DESIGN 清单)
npm run smoke # 对运行中的控制台(mock 或真实)做 API 与静态资源冒烟
npm run build # vue-tsc 类型检查 + 打包类型检查(vue-tsc)通过后输出到 dist/。Gradle 的 buildWebUi 任务会自动执行这一步并把 dist/
打进 jar,无需手动构建。
src/api/:类型化 API 客户端(client.ts传输与令牌、types.ts后端 DTO;错误码约定见docs/DESIGN.md)src/views/:总览、Parcel 列表、Parcel 详情、操作记录、共享仓库五个页面;详情页是薄壳,内容拆在src/components/parcel/的信息、配置、快照、管理卡片与创建/导入对话框中src/components/:通用组件(复制、维度/状态标签、进度、坐标输入、快照树)与parcel/子目录src/composables/:apiData(加载/失败/刷新样板)、polling(可见性感知轮询)、operationsFeed(共享操作轮询源 + 完成通知跟踪)、dimensions、errorToast、trackedOperationssrc/locales/:zh-CN / en-US 语言包;后端只返回稳定错误码,文案全部在前端渲染src/i18n.ts:语言检测(浏览器语言优先,手动切换持久化)与后端 id(操作类型、维度)的本地化回退scripts/:mock 服务器、i18n 审计、错误码契约审计、API 冒烟脚本
界面刷新采用轮询(页面可见时),不使用 WebSocket/SSE。src/components.d.ts 为
unplugin-vue-components 生成文件,随构建更新。