288 lines
25 KiB
JSON
288 lines
25 KiB
JSON
{
|
||
"challenge.admin.common.success": "Успешно",
|
||
"challenge.admin.common.error": "Ошибка",
|
||
"challenge.admin.common.cancel": "Отмена",
|
||
"challenge.admin.common.loading.tasks": "Загрузка заданий...",
|
||
"challenge.admin.common.not.found": "Ничего не найдено",
|
||
"challenge.admin.common.validation.error": "Ошибка валидации",
|
||
"challenge.admin.tasks.updated": "Задание обновлено",
|
||
"challenge.admin.tasks.created": "Задание создано",
|
||
"challenge.admin.tasks.validation.fill.required.fields": "Заполните обязательные поля",
|
||
"challenge.admin.tasks.save.error": "Не удалось сохранить задание",
|
||
"challenge.admin.tasks.loading": "Загрузка задания...",
|
||
"challenge.admin.tasks.load.error": "Не удалось загрузить задание",
|
||
"challenge.admin.tasks.edit.title": "Редактировать задание",
|
||
"challenge.admin.tasks.create.title": "Создать задание",
|
||
"challenge.admin.tasks.field.title": "Название задания",
|
||
"challenge.admin.tasks.field.title.placeholder": "Введите название задания",
|
||
"challenge.admin.tasks.field.title.helper": "Максимум 255 символов",
|
||
"challenge.admin.tasks.field.description": "Описание (Markdown)",
|
||
"challenge.admin.tasks.field.description.placeholder": "# Заголовок задания\n\nОписание задания в формате Markdown...",
|
||
"challenge.admin.tasks.field.description.helper": "Используйте Markdown для форматирования текста",
|
||
"challenge.admin.tasks.tab.editor": "Редактор",
|
||
"challenge.admin.tasks.tab.preview": "Превью",
|
||
"challenge.admin.tasks.preview.empty": "Предпросмотр появится здесь...",
|
||
"challenge.admin.tasks.field.hidden.instructions": "🔒 Скрытые инструкции для LLM",
|
||
"challenge.admin.tasks.field.hidden.instructions.description": "Эти инструкции будут переданы LLM при проверке решений студентов. Студенты их не увидят.",
|
||
"challenge.admin.tasks.field.hidden.instructions.placeholder": "Например: Проверь, что сложность алгоритма O(n log n). Код должен обрабатывать edge cases...",
|
||
"challenge.admin.tasks.field.hidden.instructions.helper": "Опционально. Используйте для тонкой настройки проверки LLM.",
|
||
"challenge.admin.tasks.meta.created": "Создано:",
|
||
"challenge.admin.tasks.meta.author": "Автор:",
|
||
"challenge.admin.tasks.meta.updated": "Обновлено:",
|
||
"challenge.admin.tasks.button.save": "Сохранить изменения",
|
||
"challenge.admin.tasks.button.create": "Создать задание",
|
||
"challenge.admin.tasks.list.title": "Задания",
|
||
"challenge.admin.tasks.list.create.button": "+ Создать задание",
|
||
"challenge.admin.tasks.list.search.placeholder": "Поиск по названию...",
|
||
"challenge.admin.tasks.list.empty.title": "Нет заданий",
|
||
"challenge.admin.tasks.list.empty.description": "Создайте первое задание для начала работы",
|
||
"challenge.admin.tasks.list.empty.action": "Создать задание",
|
||
"challenge.admin.tasks.list.search.empty": "По запросу \"{query}\" ничего не найдено",
|
||
"challenge.admin.tasks.list.table.title": "Название",
|
||
"challenge.admin.tasks.list.table.creator": "Создатель",
|
||
"challenge.admin.tasks.list.table.created": "Дата создания",
|
||
"challenge.admin.tasks.list.table.hidden.instructions": "Скрытые инструкции",
|
||
"challenge.admin.tasks.list.table.actions": "Действия",
|
||
"challenge.admin.tasks.list.badge.has.instructions": "🔒 Есть",
|
||
"challenge.admin.tasks.list.button.edit": "Редактировать",
|
||
"challenge.admin.tasks.list.button.delete": "Удалить",
|
||
"challenge.admin.tasks.deleted": "Задание удалено",
|
||
"challenge.admin.tasks.delete.error": "Не удалось удалить задание",
|
||
"challenge.admin.tasks.list.loading": "Загрузка заданий...",
|
||
"challenge.admin.tasks.list.load.error": "Не удалось загрузить список заданий",
|
||
"challenge.admin.tasks.delete.confirm.title": "Удалить задание",
|
||
"challenge.admin.tasks.delete.confirm.message": "Вы уверены, что хотите удалить задание \"{title}\"? Это действие нельзя отменить.",
|
||
"challenge.admin.tasks.delete.confirm.button": "Удалить",
|
||
"challenge.admin.tasks.test.title": "Тестовая проверка ответа",
|
||
"challenge.admin.tasks.test.description": "Отправьте пример ответа, чтобы проверить, как LLM будет оценивать это задание с учётом скрытых инструкций. Эта проверка не попадает в статистику и историю попыток.",
|
||
"challenge.admin.tasks.test.field.answer": "Ответ для тестовой проверки",
|
||
"challenge.admin.tasks.test.field.answer.placeholder": "Введите пример решения так, как его написал бы студент...",
|
||
"challenge.admin.tasks.test.field.answer.helper": "Ответ отправляется в режиме тестовой проверки (isTest: true) — без создания попытки и постановки в очередь.",
|
||
"challenge.admin.tasks.test.button.run": "Проверить ответ",
|
||
"challenge.admin.tasks.test.success": "Тестовая проверка выполнена",
|
||
"challenge.admin.tasks.test.error": "Не удалось выполнить тестовую проверку",
|
||
"challenge.admin.tasks.test.forbidden": "Недостаточно прав для тестовой проверки. Нужна роль преподавателя или автора челленджа.",
|
||
"challenge.admin.tasks.test.validation.fill.answer": "Введите текст ответа для тестовой проверки",
|
||
"challenge.admin.tasks.test.status.accepted": "✅ Ответ принят (accepted)",
|
||
"challenge.admin.tasks.test.status.needs_revision": "⚠️ Ответ требует доработки (needs_revision)",
|
||
"challenge.admin.chains.updated": "Цепочка обновлена",
|
||
"challenge.admin.chains.created": "Цепочка создана",
|
||
"challenge.admin.chains.validation.enter.name": "Введите название цепочки",
|
||
"challenge.admin.chains.validation.add.task": "Добавьте хотя бы одно задание",
|
||
"challenge.admin.chains.save.error": "Не удалось сохранить цепочку",
|
||
"challenge.admin.chains.loading": "Загрузка цепочки...",
|
||
"challenge.admin.chains.load.error": "Не удалось загрузить цепочку",
|
||
"challenge.admin.chains.tasks.load.error": "Не удалось загрузить список заданий",
|
||
"challenge.admin.chains.edit.title": "Редактировать цепочку",
|
||
"challenge.admin.chains.create.title": "Создать цепочку",
|
||
"challenge.admin.chains.field.name": "Название цепочки",
|
||
"challenge.admin.chains.field.name.placeholder": "Введите название цепочки",
|
||
"challenge.admin.chains.selected.tasks": "Задания в цепочке",
|
||
"challenge.admin.chains.selected.tasks.empty": "Добавьте задания из списка ниже",
|
||
"challenge.admin.chains.available.tasks": "Доступные задания",
|
||
"challenge.admin.chains.search.placeholder": "Поиск заданий...",
|
||
"challenge.admin.chains.all.tasks.added": "Все задания уже добавлены",
|
||
"challenge.admin.chains.button.add": "+ Добавить",
|
||
"challenge.admin.chains.button.save": "Сохранить изменения",
|
||
"challenge.admin.chains.button.create": "Создать цепочку",
|
||
"challenge.admin.chains.field.isActive": "Активна для студентов",
|
||
"challenge.admin.chains.field.isActive.helper": "Если выключить, цепочка не будет отображаться в пользовательском списке.",
|
||
"challenge.admin.chains.list.title": "Цепочки заданий",
|
||
"challenge.admin.chains.list.create.button": "+ Создать цепочку",
|
||
"challenge.admin.chains.list.search.placeholder": "Поиск по названию...",
|
||
"challenge.admin.chains.list.empty.title": "Нет цепочек",
|
||
"challenge.admin.chains.list.empty.description": "Создайте первую цепочку заданий",
|
||
"challenge.admin.chains.list.empty.action": "Создать цепочку",
|
||
"challenge.admin.chains.list.search.empty": "По запросу \"{query}\" ничего не найдено",
|
||
"challenge.admin.chains.list.table.name": "Название",
|
||
"challenge.admin.chains.list.table.tasks.count": "Количество заданий",
|
||
"challenge.admin.chains.list.table.created": "Дата создания",
|
||
"challenge.admin.chains.list.table.status": "Статус",
|
||
"challenge.admin.chains.list.table.actions": "Действия",
|
||
"challenge.admin.chains.list.badge.tasks": "заданий",
|
||
"challenge.admin.chains.list.status.active": "Включена",
|
||
"challenge.admin.chains.list.status.inactive": "Выключена",
|
||
"challenge.admin.chains.list.button.edit": "Редактировать",
|
||
"challenge.admin.chains.list.button.delete": "Удалить",
|
||
"challenge.admin.chains.deleted": "Цепочка удалена",
|
||
"challenge.admin.chains.delete.error": "Не удалось удалить цепочку",
|
||
"challenge.admin.chains.list.loading": "Загрузка цепочек...",
|
||
"challenge.admin.chains.list.load.error": "Не удалось загрузить список цепочек",
|
||
"challenge.admin.chains.delete.confirm.title": "Удалить цепочку",
|
||
"challenge.admin.chains.delete.confirm.message": "Вы уверены, что хотите удалить цепочку \"{name}\"? Это действие нельзя отменить.",
|
||
"challenge.admin.chains.delete.confirm.button": "Удалить",
|
||
"challenge.admin.chains.duplicate.button": "Дублировать",
|
||
"challenge.admin.chains.duplicate.dialog.title": "Дублировать цепочку",
|
||
"challenge.admin.chains.duplicate.dialog.description": "Создать копию цепочки \"{name}\" с теми же заданиями. Новая цепочка будет создана неактивной.",
|
||
"challenge.admin.chains.duplicate.dialog.field.name": "Название новой цепочки",
|
||
"challenge.admin.chains.duplicate.dialog.field.name.placeholder": "Копия - {name}",
|
||
"challenge.admin.chains.duplicate.dialog.field.name.helper": "Оставьте пустым для автоматического названия",
|
||
"challenge.admin.chains.duplicate.dialog.button.confirm": "Создать копию",
|
||
"challenge.admin.chains.duplicate.success": "Цепочка успешно скопирована",
|
||
"challenge.admin.chains.duplicate.error": "Не удалось скопировать цепочку",
|
||
"challenge.admin.chains.clear.submissions.button": "Очистить попытки",
|
||
"challenge.admin.chains.clear.submissions.dialog.title": "Очистить попытки по цепочке",
|
||
"challenge.admin.chains.clear.submissions.dialog.message": "Вы уверены, что хотите удалить все попытки по цепочке \"{name}\"? Это действие необратимо. Все удаленные попытки невозможно восстановить.",
|
||
"challenge.admin.chains.clear.submissions.dialog.button.confirm": "Удалить все попытки",
|
||
"challenge.admin.chains.clear.submissions.success": "Попытки успешно удалены",
|
||
"challenge.admin.chains.clear.submissions.error": "Не удалось удалить попытки",
|
||
"challenge.admin.dashboard.title": "Dashboard",
|
||
"challenge.admin.dashboard.loading": "Загрузка статистики...",
|
||
"challenge.admin.dashboard.load.error": "Не удалось загрузить статистику системы",
|
||
"challenge.admin.dashboard.stats.users": "Всего пользователей",
|
||
"challenge.admin.dashboard.stats.tasks": "Всего заданий",
|
||
"challenge.admin.dashboard.stats.chains": "Всего цепочек",
|
||
"challenge.admin.dashboard.stats.submissions": "Всего проверок",
|
||
"challenge.admin.dashboard.submissions.title": "Статистика проверок",
|
||
"challenge.admin.dashboard.submissions.accepted": "Принято",
|
||
"challenge.admin.dashboard.submissions.rejected": "Отклонено",
|
||
"challenge.admin.dashboard.submissions.pending": "Ожидают",
|
||
"challenge.admin.dashboard.submissions.in.progress": "В процессе",
|
||
"challenge.admin.dashboard.queue.title": "Статус очереди",
|
||
"challenge.admin.dashboard.queue.processing": "В обработке",
|
||
"challenge.admin.dashboard.queue.waiting": "Ожидают в очереди",
|
||
"challenge.admin.dashboard.queue.total": "Всего в очереди",
|
||
"challenge.admin.dashboard.queue.utilization": "Загруженность очереди:",
|
||
"challenge.admin.dashboard.check.time.title": "Среднее время проверки",
|
||
"challenge.admin.dashboard.check.time.value": "{{time}} сек",
|
||
"challenge.admin.dashboard.check.time.description": "Время от отправки решения до получения результата",
|
||
"challenge.admin.users.title": "Пользователи",
|
||
"challenge.admin.users.loading": "Загрузка пользователей...",
|
||
"challenge.admin.users.load.error": "Не удалось загрузить список пользователей",
|
||
"challenge.admin.users.search.placeholder": "Поиск по nickname...",
|
||
"challenge.admin.users.empty.title": "Нет пользователей",
|
||
"challenge.admin.users.empty.description": "Пользователи появятся после регистрации",
|
||
"challenge.admin.users.search.empty": "По запросу \"{query}\" ничего не найдено",
|
||
"challenge.admin.users.table.nickname": "Nickname",
|
||
"challenge.admin.users.table.id": "ID",
|
||
"challenge.admin.users.table.registered": "Дата регистрации",
|
||
"challenge.admin.users.table.actions": "Действия",
|
||
"challenge.admin.users.button.stats": "Статистика",
|
||
"challenge.admin.users.stats.title": "Статистика пользователя",
|
||
"challenge.admin.users.stats.loading": "Загрузка статистики...",
|
||
"challenge.admin.users.stats.no.data": "Нет данных",
|
||
"challenge.admin.users.stats.completed": "Выполнено",
|
||
"challenge.admin.users.stats.total.submissions": "Всего попыток",
|
||
"challenge.admin.users.stats.in.progress": "В процессе",
|
||
"challenge.admin.users.stats.needs.revision": "Требует доработки",
|
||
"challenge.admin.users.stats.chains.progress": "Прогресс по цепочкам",
|
||
"challenge.admin.users.stats.tasks": "Задания",
|
||
"challenge.admin.users.stats.status.completed": "Завершено",
|
||
"challenge.admin.users.stats.status.accepted": "Принято",
|
||
"challenge.admin.users.stats.status.needs_revision": "Доработка",
|
||
"challenge.admin.users.stats.status.in_progress": "В процессе",
|
||
"challenge.admin.users.stats.status.pending": "Ожидает",
|
||
"challenge.admin.users.stats.status.not_started": "Не начато",
|
||
"challenge.admin.users.stats.status.not_attempted": "Не пытался",
|
||
"challenge.admin.users.stats.attempts": "Попыток:",
|
||
"challenge.admin.users.stats.avg.check.time": "Среднее время проверки",
|
||
"challenge.admin.users.stats.close": "Закрыть",
|
||
"challenge.admin.submissions.title": "Попытки решений",
|
||
"challenge.admin.submissions.loading": "Загрузка попыток...",
|
||
"challenge.admin.submissions.load.error": "Не удалось загрузить список попыток",
|
||
"challenge.admin.submissions.select.chain": "Выберите цепочку для просмотра попыток участников",
|
||
"challenge.admin.submissions.chain.tasks": "заданий",
|
||
"challenge.admin.submissions.chain.click": "Нажмите для просмотра попыток",
|
||
"challenge.admin.submissions.no.chains.title": "Нет цепочек",
|
||
"challenge.admin.submissions.no.chains.description": "Создайте цепочку заданий для начала работы",
|
||
"challenge.admin.submissions.back.to.chains": "Назад к выбору цепочки",
|
||
"challenge.admin.submissions.chain.description": "Всего заданий в цепочке: {{count}}",
|
||
"challenge.admin.submissions.participants.title": "Участники цепочки",
|
||
"challenge.admin.submissions.participants.description": "Выберите участника для просмотра его попыток в этой цепочке",
|
||
"challenge.admin.submissions.participants.empty.title": "Нет участников",
|
||
"challenge.admin.submissions.participants.empty.description": "Пока никто не отправил решения в этой цепочке",
|
||
"challenge.admin.submissions.participants.click.to.view": "→ посмотреть",
|
||
"challenge.admin.submissions.search.placeholder": "Поиск по пользователю или заданию...",
|
||
"challenge.admin.submissions.filter.user": "Выберите пользователя",
|
||
"challenge.admin.submissions.filter.user.clear": "← Все участники",
|
||
"challenge.admin.submissions.filter.status": "Статус",
|
||
"challenge.admin.submissions.status.all": "Все статусы",
|
||
"challenge.admin.submissions.status.accepted": "Принято",
|
||
"challenge.admin.submissions.status.needs_revision": "Доработка",
|
||
"challenge.admin.submissions.status.in_progress": "Проверяется",
|
||
"challenge.admin.submissions.status.pending": "Ожидает",
|
||
"challenge.admin.submissions.empty.title": "Нет попыток",
|
||
"challenge.admin.submissions.empty.description": "Попытки появятся после отправки решений",
|
||
"challenge.admin.submissions.search.empty.title": "Ничего не найдено",
|
||
"challenge.admin.submissions.search.empty.description": "Попробуйте изменить фильтры",
|
||
"challenge.admin.submissions.table.user": "Пользователь",
|
||
"challenge.admin.submissions.table.task": "Задание",
|
||
"challenge.admin.submissions.table.status": "Статус",
|
||
"challenge.admin.submissions.table.attempt": "Попытка",
|
||
"challenge.admin.submissions.table.submitted": "Дата отправки",
|
||
"challenge.admin.submissions.table.check.time": "Время проверки",
|
||
"challenge.admin.submissions.table.actions": "Действия",
|
||
"challenge.admin.submissions.button.details": "Детали",
|
||
"challenge.admin.submissions.check.time": "{{time}} сек",
|
||
"challenge.admin.submissions.details.title": "Детали попытки",
|
||
"challenge.admin.submissions.details.user": "Пользователь",
|
||
"challenge.admin.submissions.details.status": "Статус",
|
||
"challenge.admin.submissions.details.submitted": "Отправлено:",
|
||
"challenge.admin.submissions.details.checked": "Проверено:",
|
||
"challenge.admin.submissions.details.check.time": "Время проверки:",
|
||
"challenge.admin.submissions.details.task": "Задание:",
|
||
"challenge.admin.submissions.details.solution": "Решение пользователя:",
|
||
"challenge.admin.submissions.details.feedback": "Обратная связь от LLM:",
|
||
"challenge.admin.submissions.details.close": "Закрыть",
|
||
"challenge.admin.submissions.details.not.found": "Попытка не найдена",
|
||
"challenge.admin.submissions.overview.title": "Общий прогресс по участникам",
|
||
"challenge.admin.submissions.overview.description": "Ниже — сводка по прогрессу всех участников и цепочек. Выберите пользователя выше, чтобы просмотреть его отдельные попытки.",
|
||
"challenge.admin.submissions.overview.table.user": "Участник",
|
||
"challenge.admin.submissions.overview.table.chain": "Цепочка",
|
||
"challenge.admin.submissions.overview.table.progress": "Прогресс",
|
||
"challenge.admin.layout.title": "Challenge Admin",
|
||
"challenge.admin.layout.nav.dashboard": "Dashboard",
|
||
"challenge.admin.layout.nav.detailed.stats": "Детальная статистика",
|
||
"challenge.admin.layout.nav.tasks": "Задания",
|
||
"challenge.admin.layout.nav.chains": "Цепочки",
|
||
"challenge.admin.layout.nav.users": "Пользователи",
|
||
"challenge.admin.layout.nav.submissions": "Попытки",
|
||
"challenge.admin.layout.button.player": "Открыть проигрыватель",
|
||
"challenge.admin.layout.button.logout": "Выйти",
|
||
"challenge.admin.common.loading.default": "Загрузка...",
|
||
"challenge.admin.common.error.default": "Произошла ошибка при загрузке данных",
|
||
"challenge.admin.common.retry": "Попробовать снова",
|
||
"challenge.admin.common.confirm": "Подтвердить",
|
||
"challenge.admin.common.close": "Закрыть",
|
||
"challenge.admin.detailed.stats.title": "Детальная статистика",
|
||
"challenge.admin.detailed.stats.loading": "Загрузка детальной статистики...",
|
||
"challenge.admin.detailed.stats.load.error": "Не удалось загрузить детальную статистику",
|
||
"challenge.admin.detailed.stats.auto.refresh": "Обновляется автоматически каждые 5 секунд",
|
||
"challenge.admin.detailed.stats.select.chain": "Выберите цепочку для просмотра детальной статистики",
|
||
"challenge.admin.detailed.stats.no.chains": "Нет доступных цепочек",
|
||
"challenge.admin.detailed.stats.chain.card.click": "Нажмите для просмотра детальной статистики по этой цепочке",
|
||
"challenge.admin.detailed.stats.chain.card.tasks": "заданий",
|
||
"challenge.admin.detailed.stats.back.to.chains": "Назад к выбору цепочки",
|
||
"challenge.admin.detailed.stats.overview.title": "Общая статистика",
|
||
"challenge.admin.detailed.stats.overview.users": "Пользователей",
|
||
"challenge.admin.detailed.stats.overview.tasks": "Заданий",
|
||
"challenge.admin.detailed.stats.overview.chains": "Цепочек",
|
||
"challenge.admin.detailed.stats.overview.total.attempts": "Всего попыток",
|
||
"challenge.admin.detailed.stats.overview.successful": "Успешных",
|
||
"challenge.admin.detailed.stats.overview.in.progress.pending": "В процессе / Ожидают",
|
||
"challenge.admin.detailed.stats.overview.avg.check.time": "Среднее время проверки",
|
||
"challenge.admin.detailed.stats.tasks.table.title": "Статистика по заданиям",
|
||
"challenge.admin.detailed.stats.tasks.table.empty": "Нет данных для отображения",
|
||
"challenge.admin.detailed.stats.tasks.table.task.name": "Название задания",
|
||
"challenge.admin.detailed.stats.tasks.table.attempts": "Попыток",
|
||
"challenge.admin.detailed.stats.tasks.table.users": "Пользователей",
|
||
"challenge.admin.detailed.stats.tasks.table.completed": "Завершено",
|
||
"challenge.admin.detailed.stats.tasks.table.success.rate": "% успеха",
|
||
"challenge.admin.detailed.stats.tasks.table.avg.attempts": "Средние попытки",
|
||
"challenge.admin.detailed.stats.participants.title": "Активные участники",
|
||
"challenge.admin.detailed.stats.participants.empty": "Нет активных участников",
|
||
"challenge.admin.detailed.stats.participants.completed": "Завершено:",
|
||
"challenge.admin.detailed.stats.participants.attempts": "Попыток:",
|
||
"challenge.admin.detailed.stats.participants.no.progress": "Нет прогресса по цепочкам",
|
||
"challenge.admin.detailed.stats.chains.title": "Детальный прогресс по цепочкам",
|
||
"challenge.admin.detailed.stats.chains.empty": "Нет данных по цепочкам",
|
||
"challenge.admin.detailed.stats.chains.total.tasks": "Всего заданий:",
|
||
"challenge.admin.detailed.stats.chains.participant": "Участник",
|
||
"challenge.admin.detailed.stats.chains.progress": "Прогресс",
|
||
"challenge.admin.detailed.stats.chains.no.participants": "Нет участников в этой цепочке",
|
||
"challenge.admin.detailed.stats.status.not.started": "Не начато",
|
||
"challenge.admin.detailed.stats.status.pending": "Ожидает",
|
||
"challenge.admin.detailed.stats.status.in.progress": "В процессе",
|
||
"challenge.admin.detailed.stats.status.needs.revision": "Доработка",
|
||
"challenge.admin.detailed.stats.status.completed": "Завершено"
|
||
} |