Enhance localization support by integrating i18next for translations across various components and pages. Update UI elements to utilize translated strings for improved user experience in both English and Russian. Additionally, refactor the Toaster component to support a context-based approach for toast notifications.
This commit is contained in:
191
locales/en.json
191
locales/en.json
@@ -1,3 +1,192 @@
|
||||
{
|
||||
"challenge.title": "Challenge"
|
||||
"challenge.title": "Challenge",
|
||||
"challenge.admin.common.success": "Success",
|
||||
"challenge.admin.common.error": "Error",
|
||||
"challenge.admin.common.cancel": "Cancel",
|
||||
"challenge.admin.common.loading.tasks": "Loading tasks...",
|
||||
"challenge.admin.common.not.found": "Nothing found",
|
||||
"challenge.admin.common.validation.error": "Validation error",
|
||||
"challenge.admin.tasks.updated": "Task updated",
|
||||
"challenge.admin.tasks.created": "Task created",
|
||||
"challenge.admin.tasks.validation.fill.required.fields": "Fill in required fields",
|
||||
"challenge.admin.tasks.save.error": "Failed to save task",
|
||||
"challenge.admin.tasks.loading": "Loading task...",
|
||||
"challenge.admin.tasks.load.error": "Failed to load task",
|
||||
"challenge.admin.tasks.edit.title": "Edit task",
|
||||
"challenge.admin.tasks.create.title": "Create task",
|
||||
"challenge.admin.tasks.field.title": "Task title",
|
||||
"challenge.admin.tasks.field.title.placeholder": "Enter task title",
|
||||
"challenge.admin.tasks.field.title.helper": "Maximum 255 characters",
|
||||
"challenge.admin.tasks.field.description": "Description (Markdown)",
|
||||
"challenge.admin.tasks.field.description.placeholder": "# Task title\n\nTask description in Markdown format...",
|
||||
"challenge.admin.tasks.field.description.helper": "Use Markdown to format text",
|
||||
"challenge.admin.tasks.tab.editor": "Editor",
|
||||
"challenge.admin.tasks.tab.preview": "Preview",
|
||||
"challenge.admin.tasks.preview.empty": "Preview will appear here...",
|
||||
"challenge.admin.tasks.field.hidden.instructions": "🔒 Hidden instructions for LLM",
|
||||
"challenge.admin.tasks.field.hidden.instructions.description": "These instructions will be passed to the LLM when checking student solutions. Students will not see them.",
|
||||
"challenge.admin.tasks.field.hidden.instructions.placeholder": "Example: Check that algorithm complexity is O(n log n). Code should handle edge cases...",
|
||||
"challenge.admin.tasks.field.hidden.instructions.helper": "Optional. Use for fine-tuning LLM verification.",
|
||||
"challenge.admin.tasks.meta.created": "Created:",
|
||||
"challenge.admin.tasks.meta.author": "Author:",
|
||||
"challenge.admin.tasks.meta.updated": "Updated:",
|
||||
"challenge.admin.tasks.button.save": "Save changes",
|
||||
"challenge.admin.tasks.button.create": "Create task",
|
||||
"challenge.admin.tasks.list.title": "Tasks",
|
||||
"challenge.admin.tasks.list.create.button": "+ Create Task",
|
||||
"challenge.admin.tasks.list.search.placeholder": "Search by name...",
|
||||
"challenge.admin.tasks.list.empty.title": "No tasks",
|
||||
"challenge.admin.tasks.list.empty.description": "Create your first task to get started",
|
||||
"challenge.admin.tasks.list.empty.action": "Create task",
|
||||
"challenge.admin.tasks.list.search.empty": "Nothing found for \"{query}\"",
|
||||
"challenge.admin.tasks.list.table.title": "Title",
|
||||
"challenge.admin.tasks.list.table.creator": "Creator",
|
||||
"challenge.admin.tasks.list.table.created": "Created date",
|
||||
"challenge.admin.tasks.list.table.hidden.instructions": "Hidden instructions",
|
||||
"challenge.admin.tasks.list.table.actions": "Actions",
|
||||
"challenge.admin.tasks.list.badge.has.instructions": "🔒 Yes",
|
||||
"challenge.admin.tasks.list.button.edit": "Edit",
|
||||
"challenge.admin.tasks.list.button.delete": "Delete",
|
||||
"challenge.admin.tasks.deleted": "Task deleted",
|
||||
"challenge.admin.tasks.delete.error": "Failed to delete task",
|
||||
"challenge.admin.tasks.list.loading": "Loading tasks...",
|
||||
"challenge.admin.tasks.list.load.error": "Failed to load tasks list",
|
||||
"challenge.admin.tasks.delete.confirm.title": "Delete task",
|
||||
"challenge.admin.tasks.delete.confirm.message": "Are you sure you want to delete task \"{title}\"? This action cannot be undone.",
|
||||
"challenge.admin.tasks.delete.confirm.button": "Delete",
|
||||
"challenge.admin.chains.updated": "Chain updated",
|
||||
"challenge.admin.chains.created": "Chain created",
|
||||
"challenge.admin.chains.validation.enter.name": "Enter chain name",
|
||||
"challenge.admin.chains.validation.add.task": "Add at least one task",
|
||||
"challenge.admin.chains.save.error": "Failed to save chain",
|
||||
"challenge.admin.chains.loading": "Loading chain...",
|
||||
"challenge.admin.chains.load.error": "Failed to load chain",
|
||||
"challenge.admin.chains.tasks.load.error": "Failed to load task list",
|
||||
"challenge.admin.chains.edit.title": "Edit chain",
|
||||
"challenge.admin.chains.create.title": "Create chain",
|
||||
"challenge.admin.chains.field.name": "Chain name",
|
||||
"challenge.admin.chains.field.name.placeholder": "Enter chain name",
|
||||
"challenge.admin.chains.selected.tasks": "Tasks in chain",
|
||||
"challenge.admin.chains.selected.tasks.empty": "Add tasks from the list below",
|
||||
"challenge.admin.chains.available.tasks": "Available tasks",
|
||||
"challenge.admin.chains.search.placeholder": "Search tasks...",
|
||||
"challenge.admin.chains.all.tasks.added": "All tasks already added",
|
||||
"challenge.admin.chains.button.add": "+ Add",
|
||||
"challenge.admin.chains.button.save": "Save changes",
|
||||
"challenge.admin.chains.button.create": "Create chain",
|
||||
"challenge.admin.chains.list.title": "Task Chains",
|
||||
"challenge.admin.chains.list.create.button": "+ Create Chain",
|
||||
"challenge.admin.chains.list.search.placeholder": "Search by name...",
|
||||
"challenge.admin.chains.list.empty.title": "No chains",
|
||||
"challenge.admin.chains.list.empty.description": "Create your first task chain",
|
||||
"challenge.admin.chains.list.empty.action": "Create chain",
|
||||
"challenge.admin.chains.list.search.empty": "Nothing found for \"{query}\"",
|
||||
"challenge.admin.chains.list.table.name": "Name",
|
||||
"challenge.admin.chains.list.table.tasks.count": "Number of tasks",
|
||||
"challenge.admin.chains.list.table.created": "Created date",
|
||||
"challenge.admin.chains.list.table.actions": "Actions",
|
||||
"challenge.admin.chains.list.badge.tasks": "tasks",
|
||||
"challenge.admin.chains.list.button.edit": "Edit",
|
||||
"challenge.admin.chains.list.button.delete": "Delete",
|
||||
"challenge.admin.chains.deleted": "Chain deleted",
|
||||
"challenge.admin.chains.delete.error": "Failed to delete chain",
|
||||
"challenge.admin.chains.list.loading": "Loading chains...",
|
||||
"challenge.admin.chains.list.load.error": "Failed to load chains list",
|
||||
"challenge.admin.chains.delete.confirm.title": "Delete chain",
|
||||
"challenge.admin.chains.delete.confirm.message": "Are you sure you want to delete chain \"{name}\"? This action cannot be undone.",
|
||||
"challenge.admin.chains.delete.confirm.button": "Delete",
|
||||
"challenge.admin.dashboard.title": "Dashboard",
|
||||
"challenge.admin.dashboard.loading": "Loading statistics...",
|
||||
"challenge.admin.dashboard.load.error": "Failed to load system statistics",
|
||||
"challenge.admin.dashboard.stats.users": "Total users",
|
||||
"challenge.admin.dashboard.stats.tasks": "Total tasks",
|
||||
"challenge.admin.dashboard.stats.chains": "Total chains",
|
||||
"challenge.admin.dashboard.stats.submissions": "Total checks",
|
||||
"challenge.admin.dashboard.submissions.title": "Check statistics",
|
||||
"challenge.admin.dashboard.submissions.accepted": "Accepted",
|
||||
"challenge.admin.dashboard.submissions.rejected": "Rejected",
|
||||
"challenge.admin.dashboard.submissions.pending": "Pending",
|
||||
"challenge.admin.dashboard.submissions.in.progress": "In progress",
|
||||
"challenge.admin.dashboard.queue.title": "Queue status",
|
||||
"challenge.admin.dashboard.queue.processing": "Processing",
|
||||
"challenge.admin.dashboard.queue.waiting": "Waiting in queue",
|
||||
"challenge.admin.dashboard.queue.total": "Total in queue",
|
||||
"challenge.admin.dashboard.queue.utilization": "Queue utilization:",
|
||||
"challenge.admin.dashboard.check.time.title": "Average check time",
|
||||
"challenge.admin.dashboard.check.time.value": "{{time}} sec",
|
||||
"challenge.admin.dashboard.check.time.description": "Time from solution submission to result",
|
||||
"challenge.admin.users.title": "Users",
|
||||
"challenge.admin.users.loading": "Loading users...",
|
||||
"challenge.admin.users.load.error": "Failed to load users list",
|
||||
"challenge.admin.users.search.placeholder": "Search by nickname...",
|
||||
"challenge.admin.users.empty.title": "No users",
|
||||
"challenge.admin.users.empty.description": "Users will appear after registration",
|
||||
"challenge.admin.users.search.empty": "Nothing found for \"{query}\"",
|
||||
"challenge.admin.users.table.nickname": "Nickname",
|
||||
"challenge.admin.users.table.id": "ID",
|
||||
"challenge.admin.users.table.registered": "Registration date",
|
||||
"challenge.admin.users.table.actions": "Actions",
|
||||
"challenge.admin.users.button.stats": "Statistics",
|
||||
"challenge.admin.users.stats.title": "User statistics",
|
||||
"challenge.admin.users.stats.loading": "Loading statistics...",
|
||||
"challenge.admin.users.stats.no.data": "No data",
|
||||
"challenge.admin.users.stats.completed": "Completed",
|
||||
"challenge.admin.users.stats.total.submissions": "Total attempts",
|
||||
"challenge.admin.users.stats.in.progress": "In progress",
|
||||
"challenge.admin.users.stats.needs.revision": "Needs revision",
|
||||
"challenge.admin.users.stats.chains.progress": "Chain progress",
|
||||
"challenge.admin.users.stats.tasks": "Tasks",
|
||||
"challenge.admin.users.stats.status.completed": "Completed",
|
||||
"challenge.admin.users.stats.status.needs_revision": "Revision",
|
||||
"challenge.admin.users.stats.status.in_progress": "In progress",
|
||||
"challenge.admin.users.stats.status.not_started": "Not started",
|
||||
"challenge.admin.users.stats.attempts": "Attempts:",
|
||||
"challenge.admin.users.stats.avg.check.time": "Average check time",
|
||||
"challenge.admin.users.stats.close": "Close",
|
||||
"challenge.admin.submissions.title": "Solution attempts",
|
||||
"challenge.admin.submissions.loading": "Loading attempts...",
|
||||
"challenge.admin.submissions.load.error": "Failed to load attempts list",
|
||||
"challenge.admin.submissions.search.placeholder": "Search by user or task...",
|
||||
"challenge.admin.submissions.filter.status": "Status",
|
||||
"challenge.admin.submissions.status.all": "All statuses",
|
||||
"challenge.admin.submissions.status.accepted": "Accepted",
|
||||
"challenge.admin.submissions.status.needs_revision": "Needs revision",
|
||||
"challenge.admin.submissions.status.in_progress": "Checking",
|
||||
"challenge.admin.submissions.status.pending": "Pending",
|
||||
"challenge.admin.submissions.empty.title": "No attempts",
|
||||
"challenge.admin.submissions.empty.description": "Attempts will appear after solution submissions",
|
||||
"challenge.admin.submissions.search.empty.title": "Nothing found",
|
||||
"challenge.admin.submissions.search.empty.description": "Try changing filters",
|
||||
"challenge.admin.submissions.table.user": "User",
|
||||
"challenge.admin.submissions.table.task": "Task",
|
||||
"challenge.admin.submissions.table.status": "Status",
|
||||
"challenge.admin.submissions.table.attempt": "Attempt",
|
||||
"challenge.admin.submissions.table.submitted": "Submitted date",
|
||||
"challenge.admin.submissions.table.check.time": "Check time",
|
||||
"challenge.admin.submissions.table.actions": "Actions",
|
||||
"challenge.admin.submissions.button.details": "Details",
|
||||
"challenge.admin.submissions.check.time": "{{time}} sec",
|
||||
"challenge.admin.submissions.details.title": "Attempt details",
|
||||
"challenge.admin.submissions.details.user": "User",
|
||||
"challenge.admin.submissions.details.status": "Status",
|
||||
"challenge.admin.submissions.details.submitted": "Submitted:",
|
||||
"challenge.admin.submissions.details.checked": "Checked:",
|
||||
"challenge.admin.submissions.details.check.time": "Check time:",
|
||||
"challenge.admin.submissions.details.task": "Task:",
|
||||
"challenge.admin.submissions.details.solution": "User solution:",
|
||||
"challenge.admin.submissions.details.feedback": "LLM feedback:",
|
||||
"challenge.admin.submissions.details.close": "Close",
|
||||
"challenge.admin.layout.title": "Challenge Admin",
|
||||
"challenge.admin.layout.nav.dashboard": "Dashboard",
|
||||
"challenge.admin.layout.nav.tasks": "Tasks",
|
||||
"challenge.admin.layout.nav.chains": "Chains",
|
||||
"challenge.admin.layout.nav.users": "Users",
|
||||
"challenge.admin.layout.nav.submissions": "Attempts",
|
||||
"challenge.admin.layout.button.player": "Open Player",
|
||||
"challenge.admin.layout.button.logout": "Logout",
|
||||
"challenge.admin.common.loading.default": "Loading...",
|
||||
"challenge.admin.common.error.default": "An error occurred while loading data",
|
||||
"challenge.admin.common.retry": "Try again",
|
||||
"challenge.admin.common.confirm": "Confirm",
|
||||
"challenge.admin.common.close": "Close"
|
||||
}
|
||||
Reference in New Issue
Block a user