feat(ui): enhance model select modal UX and modal traffic lights (#1111)
* feat(model-select-modal): highlight added models and support bulk selection - Add addedModelValues prop to highlight already-added models with primary color - Sort models alphabetically per provider, with added models floated to top - Replace green highlight with primary brand color (orange #E56A4A) - Use check icon (10px) inline with model name instead of check_circle - Replace Done button with info bar explaining click-to-toggle behavior - Add ProviderIcon to provider group headers replacing colored dot - Import ProviderIcon, remove unused Button import * feat(cli-tools): wire addedModelValues, onDeselect, and auto-save to model select modals - Pass selectedModels as addedModelValues to ModelSelectModal in OpenCode and Copilot cards - Add onDeselect handler to remove model from list on second click - Set closeOnSelect=false to allow bulk model selection - Remove manual setModalOpen(false) from onSelect callbacks - Add saveModels() silent auto-save triggered on modal close (OpenCodeToolCard) - Use useRef to track latest selectedModels in closure-safe way * feat(modal): functional traffic light close button with hover icon and tooltip - Make red dot a clickable button that closes the modal - Show ✕ icon inside red dot on hover via group-hover opacity transition - Gray out yellow and green dots (cursor-not-allowed, no tooltip) - Increase dot size from w-3 h-3 to w-4 h-4 - Add Tooltip with brand-matched color #FF5F56 on red dot - Remove X close button from modal header * feat(tooltip): add color prop for themed tooltip backgrounds * feat(i18n): add translations for model select info bar and close tooltip - Add 'Click to add, click again to remove. Changes are saved automatically.' to all 32 locales - Add 'Close' translation to all 32 locales * fix(ui): address code review feedback on modal UX and auto-save - Modal: remove showCloseButton prop, use showTrafficLights for header condition, hide traffic lights on mobile (hidden md:flex), add mobile X button (md:hidden) with aria-label, add aria-label and title on traffic light close button - OpenCodeToolCard: validate activeModel membership before saving — fallback to models[0] or empty string; clear/reassign activeModel on deselect when removed model was the active one - CopilotToolCard: add useRef + selectedModelsRef, add saveModels() using /api/cli-tools/copilot-settings, wire auto-save on modal close - ModelSelectModal: fix JSX formatting — separate info bar closing div from Search comment onto its own line
This commit is contained in:
committed by
GitHub
parent
4098f91ac5
commit
1fd3132647
@@ -12,7 +12,7 @@
|
||||
"Logout": "Выход",
|
||||
"Login": "Вход",
|
||||
"Providers": "Провайдеры",
|
||||
"Usage": "Использование",
|
||||
"Usage": "Статистика",
|
||||
"API Key": "Ключ API",
|
||||
"Connected": "Подключено",
|
||||
"Disconnected": "Отключено",
|
||||
@@ -91,9 +91,7 @@
|
||||
"Dark": "Темная",
|
||||
"Auto": "Автоматически",
|
||||
"Endpoint": "Конечная точка",
|
||||
"Providers": "Провайдеры",
|
||||
"Combos": "Комбинации",
|
||||
"Usage": "Статистика",
|
||||
"Quota Tracker": "Отслеживание квоты",
|
||||
"MITM": "MITM",
|
||||
"CLI Tools": "Инструменты CLI",
|
||||
@@ -150,7 +148,6 @@
|
||||
"No Proxy": "Без прокси",
|
||||
"Comma-separated hostnames/domains to bypass the proxy.": "Разделенные запятыми имена хостов/домены для обхода прокси.",
|
||||
"Test proxy URL": "Протестировать URL прокси",
|
||||
"Apply": "Применить",
|
||||
"Proxy settings applied": "Параметры прокси применены",
|
||||
"Proxy enabled": "Прокси включен",
|
||||
"Proxy disabled": "Прокси отключен",
|
||||
@@ -178,7 +175,6 @@
|
||||
"Use Antigravity IDE & GitHub Copilot → with ANY provider/model from 9Router": "Используйте Antigravity IDE и GitHub Copilot → с ЛЮБЫМ провайдером/моделью от 9Router",
|
||||
"How it works:": "Как это работает:",
|
||||
"Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → 9Router → response to Antigravity/Copilot": "Запрос Antigravity/Copilot IDE → Перенаправление DNS на localhost:443 → Прокси MITM перехватывает → 9Router → ответ для Antigravity/Copilot",
|
||||
"API Key": "Ключ API",
|
||||
"No API keys — create one in Keys page": "Нет ключей API — создайте один на странице ключей",
|
||||
"sk_9router (default)": "sk_9router (по умолчанию)",
|
||||
"Server started": "Сервер запущен",
|
||||
@@ -192,5 +188,5 @@
|
||||
"Sudo Password Required": "Требуется пароль Sudo",
|
||||
"Enter your sudo password to start/stop MITM server": "Введите пароль sudo для запуска/остановки сервера MITM",
|
||||
"Sudo Password": "Пароль sudo",
|
||||
"Confirm": "Подтвердить"
|
||||
"Click to add, click again to remove. Changes are saved automatically.": "Нажмите, чтобы добавить, нажмите ещё раз, чтобы удалить. Изменения сохраняются автоматически."
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user