6183047fd6
前端修复: - P0: App.vue http 未导入导致全局搜索崩溃 - P1: TOTP 登录流程断裂 (TotpRequiredError 非 ApiError 子类) - P1: ServersPage 编辑服务器 domain 被端口字符串污染 - P1: PushPage Set[0] 无效 → values().next().value - P1: SettingsPage API 返回字符串未转数字 - P2: api/index.ts getList 重复定义移除 - P2: LoginPage 锁定倒计时 now ref + watch 更新 - P2: TerminalPage 路径验证正则放松 (允许空格/中文) - P2: useWebSocket CONNECTING/CLOSING 状态关闭旧连接 后端修复: - P1: websocket.py redis.keys() → scan_iter() 避免阻塞 - P1: auth_service.py TTL 仅在 key 无 TTL 时设置 - P1: servers.py 批量操作加 asyncio.Lock 避免并发 session commit - P2: settings.py asyncio.get_event_loop() → get_running_loop() - P2: settings.py datetime.utcfromtimestamp() → datetime.fromtimestamp(tz=utc) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
frontend
Scaffolded with Vuetify CLI.
❗️ Documentation
- Primary docs: https://vuetifyjs.com/
- Getting started guide: https://vuetifyjs.com/en/getting-started/installation/
- Community support: https://community.vuetifyjs.com/
- Issue tracker: https://issues.vuetifyjs.com/
🧱 Stack
- Framework: Vue 3 + Vite
- UI Library: Vuetify
- Language: TypeScript
- Package manager: npm
🧭 Start Here
- Main entry:
src/main.ts - Main app component:
src/App.vue - Main styles:
src/styles/ - Plugin setup:
src/plugins/
📁 Project Structure
src/main.ts— application entry pointsrc/App.vue— root componentsrc/components/— reusable Vue componentssrc/plugins/— plugin registration and setupsrc/styles/— global styles and theme settingspublic/— static public files
✨ Enabled Features
- Base setup
💿 Install
Use your selected package manager (npm) to install dependencies:
npm install
🚀 Quick Start
npm install
npm run dev
🏗️ Build
npm run build
🧪 Available Scripts
npm run devnpm run buildnpm run previewnpm run build-onlynpm run type-check
💪 Support Vuetify Development
This project uses Vuetify - an MIT licensed Open Source project. We are glad to welcome contributors and any support for ongoing development:
- Contribute to Vuetify and ecosystem projects: https://github.com/vuetifyjs
- Request enterprise support: https://support.vuetifyjs.com/
- Sponsor on GitHub: https://github.com/sponsors/vuetifyjs
- Support on Open Collective: https://opencollective.com/vuetify