Fix UI review issues: accessibility, i18n, duplicate IDs, URL overflow

- Rename duplicate id="settings-error" to "device-settings-error"
- Add missing i18n key value_source.scene_sensitivity.hint (en/ru/zh)
- Add accessible label to password-toggle and Stop All buttons
- Add aria-hidden toggle on connection overlay
- Fix static image URL overflow with ellipsis truncation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 14:37:56 +03:00
parent 6a22757755
commit bf910204a9
9 changed files with 23 additions and 12 deletions

View File

@@ -25,6 +25,7 @@
"auth.logout.success": "Logged out successfully",
"auth.please_login": "Please login to view",
"auth.session_expired": "Your session has expired or the API key is invalid. Please login again.",
"auth.toggle_password": "Toggle password visibility",
"displays.title": "Available Displays",
"displays.layout": "Displays",
"displays.information": "Display Information",
@@ -1162,6 +1163,7 @@
"value_source.auto_gain.enable": "Enable auto-gain",
"value_source.sensitivity": "Sensitivity:",
"value_source.sensitivity.hint": "Gain multiplier for the audio signal (higher = more reactive)",
"value_source.scene_sensitivity.hint": "Gain multiplier for the luminance signal (higher = more reactive to brightness changes)",
"value_source.smoothing": "Smoothing:",
"value_source.smoothing.hint": "Temporal smoothing (0 = instant response, 1 = very smooth/slow)",
"value_source.audio_min_value": "Min Value:",
@@ -1309,6 +1311,7 @@
"target.error.stop_failed": "Failed to stop target",
"target.error.clone_failed": "Failed to clone target",
"target.error.delete_failed": "Failed to delete target",
"targets.stop_all.button": "Stop All",
"targets.stop_all.none_running": "No targets are currently running",
"targets.stop_all.stopped": "Stopped {count} target(s)",
"targets.stop_all.error": "Failed to stop targets",

View File

@@ -25,6 +25,7 @@
"auth.logout.success": "Выход выполнен успешно",
"auth.please_login": "Пожалуйста, войдите для просмотра",
"auth.session_expired": "Ваша сессия истекла или API ключ недействителен. Пожалуйста, войдите снова.",
"auth.toggle_password": "Показать/скрыть пароль",
"displays.title": "Доступные Дисплеи",
"displays.layout": "Дисплеи",
"displays.information": "Информация о Дисплеях",
@@ -1162,6 +1163,7 @@
"value_source.auto_gain.enable": "Включить авто-усиление",
"value_source.sensitivity": "Чувствительность:",
"value_source.sensitivity.hint": "Множитель усиления аудиосигнала (выше = более реактивный)",
"value_source.scene_sensitivity.hint": "Множитель усиления сигнала яркости (выше = более чувствительный к изменениям яркости)",
"value_source.smoothing": "Сглаживание:",
"value_source.smoothing.hint": "Временное сглаживание (0 = мгновенный отклик, 1 = очень плавный/медленный)",
"value_source.audio_min_value": "Мин. значение:",
@@ -1309,6 +1311,7 @@
"target.error.stop_failed": "Не удалось остановить цель",
"target.error.clone_failed": "Не удалось клонировать цель",
"target.error.delete_failed": "Не удалось удалить цель",
"targets.stop_all.button": "Остановить все",
"targets.stop_all.none_running": "Нет запущенных целей",
"targets.stop_all.stopped": "Остановлено целей: {count}",
"targets.stop_all.error": "Не удалось остановить цели",

View File

@@ -25,6 +25,7 @@
"auth.logout.success": "已成功退出",
"auth.please_login": "请先登录",
"auth.session_expired": "会话已过期或 API 密钥无效,请重新登录。",
"auth.toggle_password": "切换密码可见性",
"displays.title": "可用显示器",
"displays.layout": "显示器",
"displays.information": "显示器信息",
@@ -1162,6 +1163,7 @@
"value_source.auto_gain.enable": "启用自动增益",
"value_source.sensitivity": "灵敏度:",
"value_source.sensitivity.hint": "音频信号的增益倍数(越高反应越灵敏)",
"value_source.scene_sensitivity.hint": "亮度信号的增益倍数(越高对亮度变化越敏感)",
"value_source.smoothing": "平滑:",
"value_source.smoothing.hint": "时间平滑0 = 即时响应1 = 非常平滑/缓慢)",
"value_source.audio_min_value": "最小值:",
@@ -1309,6 +1311,7 @@
"target.error.stop_failed": "停止目标失败",
"target.error.clone_failed": "克隆目标失败",
"target.error.delete_failed": "删除目标失败",
"targets.stop_all.button": "全部停止",
"targets.stop_all.none_running": "当前没有运行中的目标",
"targets.stop_all.stopped": "已停止 {count} 个目标",
"targets.stop_all.error": "停止目标失败",