perf(web): improve dialog sizing and footer layout

- migrate frontend dialogs to the shared footer API so actions stay separated from scrollable body content.
- tune dialog dimensions for model analytics, prefill groups, billing history, channel model sync, and related workflows.
- update channel terminology and dialog action translations across supported locales.
This commit is contained in:
QuentinHsu
2026-06-06 21:49:33 +08:00
parent 7a5348caa3
commit 2eaa943d9f
80 changed files with 8137 additions and 8517 deletions
+9 -2
View File
@@ -645,7 +645,6 @@
"Channel Affinity": "Привязка к каналу",
"Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "Привязка к каналу повторно использует последний успешный канал на основе ключей, извлечённых из контекста запроса или тела JSON.",
"Channel Affinity: Upstream Cache Hit": "Привязка к каналу: попадание в кэш upstream",
"Keep affinity when channel is disabled": "Сохранять привязку при отключении канала",
"Channel copied successfully": "Канал успешно скопирован",
"Channel created successfully": "Канал успешно создан",
"Channel deleted successfully": "Канал успешно удалён",
@@ -964,6 +963,7 @@
"Copy to clipboard": "Копировать в буфер обмена",
"Copy token": "Копировать токен",
"Copy URL": "Скопировать URL",
"Copying...": "Копирование...",
"Copywriting, ad creative, SEO": "Копирайтинг, рекламные креативы, SEO",
"Core concepts": "Основные понятия",
"Core Configuration": "Основная конфигурация",
@@ -1739,6 +1739,7 @@
"Filter models by provider, group, type, endpoint, and tags.": "Фильтруйте модели по поставщику, группе, типу, endpoint и тегам.",
"Filter models by type, endpoint, vendor, group and tags": "Фильтровать модели по типу, точке доступа, поставщику, группе и тегам",
"Filter models...": "Фильтровать модели...",
"Filter the model analytics view by time range and user.": "Фильтруйте представление аналитики моделей по периоду и пользователю.",
"Filter...": "Фильтр...",
"Filters": "Фильтры",
"Filters active": "Фильтры активны",
@@ -1995,7 +1996,6 @@
"If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "При подключении к upstream One API или проектам-ретрансляторам New API используйте тип OpenAI, если только вы точно знаете, что делаете",
"If default auto group is enabled, newly created tokens start with auto instead of an empty group.": "Если группа auto включена по умолчанию, новые токены создаются с auto вместо пустой группы.",
"If the affinity channel fails and retry succeeds on another channel, update affinity to the successful channel.": "Если привязанный канал не работает и повторная попытка удалась через другой канал, привязка обновляется на успешный канал.",
"When enabled, keep the affinity entry even if the affinity channel is disabled or no longer usable for the current group/model. Leave it off to delete the entry and select another channel.": "Если включено, запись привязки сохраняется, даже когда привязанный канал отключён или больше не подходит для текущей группы/модели. Оставьте выключенным, чтобы удалять запись и выбирать другой канал.",
"If this keeps happening, please report it on GitHub Issues.": "Если проблема повторяется, сообщите о ней в GitHub Issues.",
"If you provide generative AI services to the public in mainland China, you will fulfill legal obligations including filing, security assessment, content safety, complaint handling, generated content labeling, log retention, and personal information protection.": "Если вы предоставляете услуги генеративного ИИ населению материкового Китая, вы будете выполнять юридические обязанности, включая регистрацию, оценку безопасности, безопасность контента, обработку жалоб, маркировку сгенерированного контента, хранение журналов и защиту персональных данных.",
"Ignored upstream models": "Игнорируемые upstream-модели",
@@ -2108,6 +2108,7 @@
"Just now": "Только что",
"JustSong": "JustSong",
"K": "K",
"Keep affinity when channel is disabled": "Сохранять привязку при отключении канала",
"Keep enabled if you need to proxy requests for different upstream accounts.": "Оставьте включённым, если нужно проксировать запросы для разных upstream-аккаунтов.",
"Keep enough balance before production traffic": "Поддерживайте достаточный баланс перед рабочим трафиком",
"Keep original value": "Сохранить исходное значение",
@@ -2326,6 +2327,8 @@
"Model": "Модель",
"Model Access": "Доступ к моделям",
"Model Analytics": "Аналитика моделей",
"Model Analytics Defaults": "Настройки аналитики моделей по умолчанию",
"Model Analytics Filters": "Фильтры аналитики моделей",
"model billing support": "поддержка биллинга моделей",
"Model Call Analytics": "Аналитика вызовов моделей",
"Model context usage": "Использование контекста модели",
@@ -3610,6 +3613,7 @@
"Set a tag for": "Установить тег для",
"Set API key access restrictions": "Настройте ограничения доступа API-ключа",
"Set API key basic information": "Настройте основные сведения API-ключа",
"Set default ranges and charts for model analytics.": "Настройте диапазоны и графики по умолчанию для аналитики моделей.",
"Set Field": "Установить поле",
"Set filters to customize your dashboard statistics and charts.": "Установите фильтры, чтобы настроить статистику и диаграммы вашей панели управления.",
"Set filters to narrow down your log search results.": "Установите фильтры, чтобы сузить результаты поиска по журналам.",
@@ -3811,11 +3815,13 @@
"Sync Endpoints": "Точки синхронизации",
"Sync Fields": "Синхронизировать поля",
"Sync from the public upstream metadata repository.": "Синхронизировать из публичного репозитория метаданных верхнего уровня.",
"Sync Now": "Синхронизировать сейчас",
"Sync this model with official upstream": "Синхронизировать эту модель с официальным upstream",
"Sync Upstream": "Синхронизировать Upstream",
"Sync Upstream Models": "Синхронизировать модели Upstream",
"Synchronize models and vendors from an upstream source": "Синхронизировать модели и поставщиков из upstream источника",
"Syncing prices, please wait...": "Синхронизация цен, подождите...",
"Syncing...": "Синхронизация...",
"System": "Система",
"System Administration": "Администрирование системы",
"System Announcements": "Системные объявления",
@@ -4453,6 +4459,7 @@
"When a token uses the auto group, the system tries groups from top to bottom until it finds an available group.": "Когда токен использует группу auto, система перебирает группы сверху вниз, пока не найдёт доступную.",
"When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "При совпадении условий итоговая цена умножается на X. Несколько совпадений умножаются вместе; значения < 1 действуют как скидки.",
"When enabled, if channels in the current group fail, it will try channels in the next group in order.": "Если включено, при сбое каналов в текущей группе система попробует каналы следующей группы по порядку.",
"When enabled, keep the affinity entry even if the affinity channel is disabled or no longer usable for the current group/model. Leave it off to delete the entry and select another channel.": "Если включено, запись привязки сохраняется, даже когда привязанный канал отключён или больше не подходит для текущей группы/модели. Оставьте выключенным, чтобы удалять запись и выбирать другой канал.",
"When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "При включении большие тела запросов временно сохраняются на диске, что значительно снижает использование памяти. Рекомендуется SSD.",
"When enabled, Midjourney callbacks are accepted (reveals server IP).": "При включении принимаются обратные вызовы Midjourney (раскрывает IP сервера).",
"When enabled, newly created tokens start in the first auto group.": "При включении вновь созданные токены начинаются в первой автогруппе.",