Commit Graph

7 Commits

Author SHA1 Message Date
f78c022f75 refactor: 使用 PartySocket 重构连接韧性并库化音频封包 2026-03-06 06:54:20 +08:00
df2cf549c9 refactor: 统一实时协议类型并扩展会话状态字段 2026-03-06 06:53:50 +08:00
669bfac722 refactor: 使用 @picovoice/web-voice-processor 替换手写音频采集管线
- 引入 WebVoiceProcessor 处理 getUserMedia、AudioContext 生命周期和 WASM 重采样
- 删除自定义 AudioWorklet (audio-processor.ts) 和线性插值重采样器 (resample.ts)
- 改善音频采集稳定性:自动检测 AudioContext suspended/closed 状态并重建
- 更精确的错误提示:区分权限拒绝、设备未找到、设备异常
2026-03-02 07:42:45 +08:00
fc34989eaa fix: 修复 iOS Safari 上历史记录列表无法滚动的问题
补全 html → body → #root 的高度链,使用 dvh 动态视口单位
适配 iOS Safari 地址栏动态收起/展开,添加 overscroll-contain
防止滚动穿透
2026-03-02 07:14:18 +08:00
ab60db0dc5 refactor: 使用 sonner、zustand persist、partysocket 替换手写实现 2026-03-02 06:57:45 +08:00
08e5abe165 style: 将 Unicode 转义序列替换为可读的中文字符 2026-03-02 06:48:32 +08:00
70344bcd98 refactor: 迁移前端到 React 19 + Zustand + Tailwind CSS v4
- 将 vanilla TS 单文件 (app.ts 395行) 拆分为 React 组件化架构
- 引入 Zustand 管理全局状态 (连接/录音/预览/历史/toast)
- 自定义 hooks 封装 WebSocket 连接和音频录制管线
- CSS 全面 Tailwind 化,style.css 从 234 行精简到 114 行 (仅保留 tokens + keyframes)
- 新增依赖: react, react-dom, zustand, @vitejs/plugin-react
- Go 后端 embed 路径 web/dist 不变,无需改动
2026-03-02 06:36:02 +08:00