diff --git a/qwen3-tts-frontend/src/locales/en-US/audiobook.json b/qwen3-tts-frontend/src/locales/en-US/audiobook.json index 67ad904..37a6ccf 100644 --- a/qwen3-tts-frontend/src/locales/en-US/audiobook.json +++ b/qwen3-tts-frontend/src/locales/en-US/audiobook.json @@ -84,6 +84,7 @@ "descPlaceholder": "Character description", "voiceDesign": "Voice #{{id}}", "noVoice": "Unassigned", + "editTitle": "Edit Character: {{name}}", "savedSuccess": "Character saved" }, diff --git a/qwen3-tts-frontend/src/locales/ja-JP/audiobook.json b/qwen3-tts-frontend/src/locales/ja-JP/audiobook.json index b5d7fa7..d093977 100644 --- a/qwen3-tts-frontend/src/locales/ja-JP/audiobook.json +++ b/qwen3-tts-frontend/src/locales/ja-JP/audiobook.json @@ -83,6 +83,7 @@ "descPlaceholder": "キャラクター説明", "voiceDesign": "音声 #{{id}}", "noVoice": "未割り当て", + "editTitle": "キャラクターを編集:{{name}}", "savedSuccess": "キャラクターを保存しました" }, diff --git a/qwen3-tts-frontend/src/locales/ko-KR/audiobook.json b/qwen3-tts-frontend/src/locales/ko-KR/audiobook.json index 4a374cc..05eb5d1 100644 --- a/qwen3-tts-frontend/src/locales/ko-KR/audiobook.json +++ b/qwen3-tts-frontend/src/locales/ko-KR/audiobook.json @@ -83,6 +83,7 @@ "descPlaceholder": "캐릭터 설명", "voiceDesign": "음성 #{{id}}", "noVoice": "미할당", + "editTitle": "캐릭터 편집: {{name}}", "savedSuccess": "캐릭터가 저장되었습니다" }, diff --git a/qwen3-tts-frontend/src/locales/zh-CN/audiobook.json b/qwen3-tts-frontend/src/locales/zh-CN/audiobook.json index fe46df7..f6ed35a 100644 --- a/qwen3-tts-frontend/src/locales/zh-CN/audiobook.json +++ b/qwen3-tts-frontend/src/locales/zh-CN/audiobook.json @@ -84,6 +84,7 @@ "descPlaceholder": "角色描述", "voiceDesign": "音色 #{{id}}", "noVoice": "未分配", + "editTitle": "编辑角色:{{name}}", "savedSuccess": "角色已保存", "regeneratingPreview": "重新生成试听中...", "regeneratePreview": "重生试听", diff --git a/qwen3-tts-frontend/src/locales/zh-TW/audiobook.json b/qwen3-tts-frontend/src/locales/zh-TW/audiobook.json index a13f9ae..83466e9 100644 --- a/qwen3-tts-frontend/src/locales/zh-TW/audiobook.json +++ b/qwen3-tts-frontend/src/locales/zh-TW/audiobook.json @@ -83,6 +83,7 @@ "descPlaceholder": "角色描述", "voiceDesign": "音色 #{{id}}", "noVoice": "未分配", + "editTitle": "編輯角色:{{name}}", "savedSuccess": "角色已儲存" }, diff --git a/qwen3-tts-frontend/src/pages/Audiobook.tsx b/qwen3-tts-frontend/src/pages/Audiobook.tsx index 527f851..cf08b39 100644 --- a/qwen3-tts-frontend/src/pages/Audiobook.tsx +++ b/qwen3-tts-frontend/src/pages/Audiobook.tsx @@ -7,7 +7,7 @@ import { Input } from '@/components/ui/input' import { Textarea } from '@/components/ui/textarea' import { Badge } from '@/components/ui/badge' import { Progress } from '@/components/ui/progress' -import { Dialog, DialogContent, DialogHeader, DialogTitle } from '@/components/ui/dialog' +import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from '@/components/ui/dialog' import { Navbar } from '@/components/Navbar' import { AudioPlayer } from '@/components/AudioPlayer' import { ChapterPlayer } from '@/components/ChapterPlayer' @@ -1245,6 +1245,65 @@ function CharactersPanel({ + { if (!open) setEditingCharId(null) }}> + + + {t('projectCard.characters.editTitle', { name: detail?.characters.find(c => c.id === editingCharId)?.name ?? '' })} + +
+
+ + setEditFields(f => ({ ...f, name: e.target.value }))} + placeholder={t('projectCard.characters.namePlaceholder')} + /> +
+
+ + +
+
+ +