Commit Graph

10 Commits

Author SHA1 Message Date
b87fead2fd refactor: 优化代码质量,遵循 KISS 原则
- 移除自签证书回退逻辑,简化为仅使用 AnyIP 证书
- 删除 internal/tls/generate.go(不再需要)
- 重构 main.go:提取初始化逻辑,main() 从 156 行降至 13 行
- 重构 internal/ws/handler.go:提取消息处理,handleConn() 从 131 行降至 25 行
- 重构 internal/config/load.go:使用 map 驱动消除重复代码
- 优化前端 startRecording():使用标准 AbortController API
- 优化前端 showToast():预定义 DOM 元素,代码减少 50%

代码行数减少 90 行,复杂度显著降低,所有构建通过
2026-03-02 00:25:14 +08:00
ce1ff2d04d fix: 用 Pointer Events 替代 touch+mouse 事件,修复移动端双触发导致按钮卡死
- pointerdown/pointerup/pointerleave/pointercancel 统一处理所有输入
- 移除分离的 touchstart/touchend/mousedown/mouseup 事件绑定
- WS 断连时清理 pendingStart 状态,防止按钮永久卡死
- 添加 contextmenu 阻止长按弹出菜单
2026-03-01 05:49:07 +08:00
30e3271146 chore: 优化 package.json scripts 命名(check → lint/lint:fix) 2026-03-01 05:43:49 +08:00
d0be096165 feat: 前端迁移至 TypeScript,集成 Biome 格式化与代码检查
- app.js → app.ts:添加完整类型标注、接口定义
- audio-processor.js → audio-processor.ts:AudioWorklet 类型化
- vite.config.js → vite.config.ts
- 添加 tsconfig.json、vite-env.d.ts
- 集成 Biome 默认配置(lint + format),通过全部检查
- package.json 添加 check/typecheck 脚本
- index.html 修复无障碍问题(button type、SVG title)
2026-03-01 05:40:26 +08:00
b22b27db75 fix: 修复录音按钮快速按放导致按钮卡死的异步竞态问题 2026-03-01 05:30:47 +08:00
4b5903b6a1 feat: 引入 Vite 前端工程化,解决浏览器缓存问题;AudioWorklet 独立打包带 hash 2026-03-01 05:13:19 +08:00
5d17e2e9ac fix: 修复安卓 Chrome 无音频问题,移除强制 16kHz 采样率,添加 AudioContext resume 2026-03-01 04:35:06 +08:00
e1c1b2d9b2 fix: 修复 AudioWorklet 未收到 start 指令导致无音频数据发送 2026-03-01 04:13:10 +08:00
9420d43392 fix: token 改为配置文件读取,不再自动生成;UI 全部汉化 2026-03-01 04:09:55 +08:00
35d645a186 feat: add mobile web frontend with AudioWorklet recording 2026-03-01 03:03:24 +08:00