|
|
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 |
|