Files
lobehub__lobehub/locales/ru-RU/file.json
Rdmclin2 ebe586289d ✨ feat(page-editor): align document comments beside their source text (#19659)
* ✨ feat(page-editor): align document comments beside their source text

Adds a gutter that positions comment threads next to the highlighted
text they annotate instead of stacking them in a flat list below the
document, with per-line quick-comment affordance and anchored/
unanchored thread partitioning in the comment list API.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* 🌐 i18n: sync generated locale translations

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* 🐛 fix(page-editor): hand failed anchored drafts back and bound the gutter's eager load

- A failed anchored submission stashed while a newer draft owned the
  shared slot was written under `anchored-failed:<clientId>` and never
  read again, so the toast was the last the reader saw of their text.
  The provider now moves the stash back into the slot whenever that
  slot frees (the newer draft sent or cancelled, or the next open) and
  republishes its anchor, remounting the gutter composer beside the
  original selection with the failed words and attachments, ready to
  retry. The inline composer, always mounted and already holding the
  slot's state, adopts the stash itself on mount instead.
- Anchored threads were drained to the last page whenever the document
  mounted, panel open or not, and every result mounted twice (gutter and
  list). Fetch ahead only while the gutter shows them, up to
  ANCHORED_EAGER_PAGE_LIMIT pages; a picked highlight past that fetches
  its thread on demand through the existing deep-link pin, and the list
  below the body now pages both caches so the rest stays reachable.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* 🐛 fix(page-editor): forward paging keys from gutter controls and clear the marker over root whitespace

- Keyboard focus usually enters the panel on a card's button or link,
  and the key forwarder skipped every key for any interactive target, so
  PageUp/PageDown from there did nothing: the control has no use for
  them and the browser default cannot scroll the sibling document pane.
  Decide ownership per key — a field or editable region keeps everything
  typed into it, a button or link keeps only Space (its activation).
- Over the body's own whitespace between or after blocks, `blockAt` is
  null and the move handler returned early, leaving the marker for the
  last crossed line actionable for text no longer under the pointer;
  the host-level handler never sees those moves either, since the body
  contains the target. Clear it there unless the pointer is on the
  bridge to (or over) the current marker, the one path meant to survive.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* 🐛 fix(page-editor): report a missing deep-linked reply once when the gutter duplicates the thread

An anchored thread shown in both the gutter and the flat list received
the same focus in both copies, so a deep link to a missing or failed
reply ran both copies' missing-focus effect: two toasts, and the focus
token advanced twice. The flat copy keeps the focus for its highlight
but no longer answers for a miss when the gutter shows the same thread.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* 🐛 fix(page-editor): partition thread pages client-side when the server ignores the scope

The `anchored` filter on listThreads is new in this change. A production
backend predating it strips the unknown key and answers the anchored and
document scopes with the same mixed pages — which is exactly what the
documented debug proxy (latest SPA against app.lobehub.com) produces —
so the two caches overlapped and the list below the body rendered every
such thread twice, with duplicate React keys. Filter each page to its
scope's own subset on the client; the cursor still walks the server's
order, so paging stays consistent.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-18 17:45:08 +08:00

333 lines
28 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"addFolder": "Создать папку",
"addLibrary": "Добавить",
"addPage": "Создать страницу",
"detail.basic.createdAt": "Время создания",
"detail.basic.filename": "Имя файла",
"detail.basic.size": "Размер файла",
"detail.basic.title": "Основная информация",
"detail.basic.type": "Формат",
"detail.basic.updatedAt": "Время обновления",
"detail.data.chunkCount": "Фрагменты",
"detail.data.embedding.default": "Не встраивается",
"detail.data.embedding.error": "Ошибка",
"detail.data.embedding.pending": "Ожидание запуска",
"detail.data.embedding.processing": "В процессе",
"detail.data.embedding.success": "Завершено",
"detail.data.embeddingStatus": "встраивание",
"detail.data.noChunk": "Нет фрагмента",
"empty": "Файлы или папки ещё не загружены.",
"header.actions.builtInBlockList.filtered": "Отфильтровано {{ignored}} файлов (из {{total}} всего)",
"header.actions.connect": "Подключиться...",
"header.actions.createFolderError": "Не удалось создать папку",
"header.actions.creatingFolder": "Создание папки...",
"header.actions.deleteLibrary": "Удалить библиотеку",
"header.actions.gitignore.apply": "Применить правила",
"header.actions.gitignore.cancel": "Игнорировать правила",
"header.actions.gitignore.content": "Обнаружен файл .gitignore (всего {{count}} файлов). Применить правила игнорирования?",
"header.actions.gitignore.filtered": "Отфильтровано {{ignored}} файлов (всего {{total}} файлов)",
"header.actions.gitignore.title": "Обнаружен .gitignore",
"header.actions.newFolder": "Новая папка",
"header.actions.newPage": "Новая страница",
"header.actions.notion.error": "Не удалось импортировать файлы из Notion",
"header.actions.notion.foundFiles": "найдено {{count}} файлов",
"header.actions.notion.importing": "Импорт содержимого из Notion...",
"header.actions.notion.noMarkdownFiles": "В ZIP-архиве не найдено файлов в формате Markdown",
"header.actions.notion.partial": "Успешно импортировано {{success}} файлов, {{failed}} с ошибками",
"header.actions.notion.success": "Успешно импортировано {{count}} файлов",
"header.actions.notionGuide.cancel": "Не сейчас",
"header.actions.notionGuide.desc": "Сначала экспортируйте содержимое из Notion в формате Markdown (ZIP). Затем нажмите «Продолжить», чтобы выбрать ZIP-файл и импортировать все страницы.",
"header.actions.notionGuide.ok": "Выбрать ZIP из Notion",
"header.actions.notionGuide.title": "Импорт из Notion",
"header.actions.uploadFile": "Загрузить файл",
"header.actions.uploadFolder": "Загрузить папку",
"header.actions.uploadFolder.creatingFolders": "Создание структуры папок...",
"header.newPageButton": "Новая страница",
"header.uploadButton": "Загрузить",
"home.libraries": "Библиотеки",
"home.recentFiles": "Недавние файлы",
"home.recentPages": "Недавние страницы",
"home.uploadEntries.library.title": "Создать новую библиотеку",
"home.viewAll": "Посмотреть все",
"library.backToResources": "Назад к ресурсам",
"library.hierarchy.empty.desc": "Добавьте файлы или создайте папку, чтобы начать",
"library.hierarchy.empty.title": "Здесь пока ничего нет",
"library.hierarchy.search.noResults": "Нет совпадающих файлов или страниц",
"library.hierarchy.search.placeholder": "Поиск",
"library.import.action": "Импортировать в рабочую область…",
"library.import.failed": "Не удалось импортировать базу знаний.",
"library.import.success": "База знаний импортирована в {{name}}.",
"library.import.tooltip": "Скопируйте эту базу знаний в рабочую область. Файлы будут ссылаться на оригинал, который останется в вашем личном пространстве.",
"library.list.confirmRemoveLibrary": "Вы собираетесь удалить эту библиотеку. Файлы из неё не будут удалены, а перемещены в раздел «Все файлы». Это действие необратимо, пожалуйста, будьте осторожны.",
"library.list.copyDescription": "Клонируйте эту библиотеку и все её содержимое в другую рабочую область.",
"library.list.copyFailed": "Не удалось скопировать библиотеку",
"library.list.copySuccess": "Библиотека скопирована",
"library.list.copyTitle": "Копировать библиотеку",
"library.list.copyTo": "Копировать в…",
"library.list.empty": "Нажмите <1>+</1>, чтобы создать новую библиотеку",
"library.list.transferDescription": "Переместите эту библиотеку и всё её содержимое в другую рабочую область.",
"library.list.transferFailed": "Не удалось переместить библиотеку",
"library.list.transferSuccess": "Библиотека перемещена",
"library.list.transferTitle": "Переместить библиотеку",
"library.list.transferTo": "Переместить в…",
"library.new": "Новая библиотека",
"library.privateEmpty": "Создать частную библиотеку",
"library.publish": "Опубликовать в рабочем пространстве",
"library.publishConfirm.title": "Опубликовать базу знаний в рабочем пространстве?",
"library.title": "Библиотека",
"library.workspaceEmpty": "Создать библиотеку рабочего пространства",
"listView.uploadedBy": "Загружено {{name}}",
"loadMore": "Загрузить ещё",
"menu.allFiles": "Все файлы",
"menu.allPages": "Все страницы",
"networkError": "Не удалось получить библиотеки. Проверьте подключение к сети и попробуйте снова.",
"notFound.desc": "Этот файл не существует или больше недоступен — возможно, он был удален или сделан приватным его владельцем.",
"notFound.title": "Файл недоступен",
"notSupportGuide.desc": "Текущий режим развертывания не поддерживает управление файлами. Переключитесь на <1>режим с серверной базой данных</1> или используйте <3>LobeHub Cloud</3>.",
"notSupportGuide.features.allKind.desc": "Поддержка популярных типов файлов, включая форматы Word, PPT, Excel, PDF, TXT, а также кода — JS и Python.",
"notSupportGuide.features.allKind.title": "Поддержка различных форматов",
"notSupportGuide.features.embeddings.desc": "Использует высокопроизводительные векторные модели для преобразования текста, обеспечивая семантический поиск по содержимому.",
"notSupportGuide.features.embeddings.title": "Семантический поиск",
"notSupportGuide.features.libraries.desc": "Создавайте библиотеки и добавляйте в них файлы, чтобы организовать своё хранилище.",
"notSupportGuide.features.libraries.title": "Библиотека",
"notSupportGuide.title": "Текущий режим развертывания не поддерживает управление файлами",
"pageEditor.addIcon": "Добавить иконку",
"pageEditor.autoSaveMessage": "Страница сохраняется автоматически. Сохранять вручную не требуется.",
"pageEditor.chooseIcon": "Выбрать иконку",
"pageEditor.comments.anchor.add": "Комментарий",
"pageEditor.comments.anchor.addToLine": "Комментировать эту строку",
"pageEditor.comments.anchor.label": "Цитируемый текст:",
"pageEditor.comments.anchor.missing": "Оригинал удален",
"pageEditor.comments.anchor.remove": "Удалить цитату",
"pageEditor.comments.attachments.add": "Добавить",
"pageEditor.comments.attachments.chooseLibrary": "Выбрать из библиотеки",
"pageEditor.comments.author.deactivated": "Деактивированный пользователь",
"pageEditor.comments.author.former": "Бывший участник",
"pageEditor.comments.cancel": "Отмена",
"pageEditor.comments.createFailed": "Не удалось опубликовать комментарий. Ваш черновик все еще здесь.",
"pageEditor.comments.deepLinkLoadFailed": "Не удалось загрузить связанный комментарий. Попробуйте еще раз.",
"pageEditor.comments.deepLinkMissing": "Этот комментарий больше недоступен.",
"pageEditor.comments.delete": "Удалить",
"pageEditor.comments.deleteConfirm.content": "Удалить этот комментарий? Ответы останутся видимыми, если у этого комментария есть ветка.",
"pageEditor.comments.deleteConfirm.title": "Удалить комментарий",
"pageEditor.comments.deleteFailed": "Не удалось удалить комментарий. Попробуйте снова.",
"pageEditor.comments.deleted": "Этот комментарий был удален.",
"pageEditor.comments.edit": "Редактировать",
"pageEditor.comments.edited": "(отредактировано)",
"pageEditor.comments.gutterEmpty": "Выберите текст в документе, чтобы прокомментировать его.",
"pageEditor.comments.gutterEmptyReadOnly": "Комментариев пока нет.",
"pageEditor.comments.hideReplies": "Скрыть ответы",
"pageEditor.comments.loadMore": "Загрузить больше комментариев",
"pageEditor.comments.loadMoreReplies": "Загрузить больше ответов",
"pageEditor.comments.moreActions": "Дополнительные действия",
"pageEditor.comments.placeholder": "Добавить комментарий…",
"pageEditor.comments.publish": "Комментировать",
"pageEditor.comments.replies_one": "{{count}} ответ",
"pageEditor.comments.replies_other": "{{count}} ответов",
"pageEditor.comments.replyAction": "Ответить",
"pageEditor.comments.replyPlaceholder": "Написать ответ…",
"pageEditor.comments.save": "Сохранить",
"pageEditor.comments.title": "Комментарии",
"pageEditor.comments.toggle": "Комментарии",
"pageEditor.comments.updateFailed": "Не удалось обновить комментарий. Попробуйте снова.",
"pageEditor.copilot.toggle": "Спросить Lobe AI",
"pageEditor.deleteConfirm.content": "Эта страница будет удалена без возможности восстановления. Пожалуйста, будьте осторожны.",
"pageEditor.deleteConfirm.title": "Удалить страницу",
"pageEditor.deleteError": "Не удалось удалить страницу",
"pageEditor.deleteSuccess": "Страница успешно удалена",
"pageEditor.duplicateError": "Не удалось дублировать страницу",
"pageEditor.duplicateSuccess": "Страница успешно дублирована",
"pageEditor.editMode.checking": "Проверка доступности редактирования…",
"pageEditor.editMode.draftRestoreCancel": "Отменить",
"pageEditor.editMode.draftRestoreContent": "Найдены несохраненные локальные изменения из последней сессии. Восстановить их?",
"pageEditor.editMode.draftRestoreOk": "Восстановить",
"pageEditor.editMode.draftRestoreTitle": "Восстановить несохраненный черновик",
"pageEditor.editMode.lockLostDescription": "Последние изменения еще не синхронизированы. Сохранение возобновится, как только соединение восстановится.",
"pageEditor.editMode.lockLostTitle": "Временная потеря блокировки редактирования",
"pageEditor.editMode.lockUnstable": "Повторное подключение блокировки редактирования…",
"pageEditor.editMode.lockedByOther": "{{name}} редактирует этот документ",
"pageEditor.editMode.lockedBySelf": "Вы редактируете этот документ в другой вкладке",
"pageEditor.editMode.lockedBySelfDescription": "Сохранение возобновится после закрытия другой сессии или истечения ее блокировки (~30 секунд).",
"pageEditor.editMode.lockedBySomeone": "Кто-то другой редактирует этот документ",
"pageEditor.editMode.lockedDescription": "Страница доступна только для чтения, пока они редактируют. Ваши изменения не будут сохранены, пока они не завершат.",
"pageEditor.editedAt": "Последнее редактирование: {{time}}",
"pageEditor.editedAtBy": "Последнее изменение {{time}} пользователем {{name}}",
"pageEditor.editedBy": "Последнее редактирование: {{name}}",
"pageEditor.editorPlaceholder": "Нажмите «/» для ИИ и команд",
"pageEditor.empty.createNewDocument": "Создать новую страницу",
"pageEditor.empty.importNotion": "Импорт из Notion",
"pageEditor.empty.title": "Выберите страницу для начала работы",
"pageEditor.empty.uploadFiles": "Загрузить файлы",
"pageEditor.exportActions.openFile": "Открыть",
"pageEditor.exportActions.showInFolder": "Показать в папке",
"pageEditor.exportDialogTitle": "Экспорт страницы",
"pageEditor.exportError": "Не удалось экспортировать страницу",
"pageEditor.exportSuccess": "Страница успешно экспортирована",
"pageEditor.history.backToCopilot": "Copilot",
"pageEditor.history.compare": "Сравнить",
"pageEditor.history.compareCurrentLabel": "Текущая",
"pageEditor.history.compareDescription": "Сравнение текущего содержимого с выбранной версией истории",
"pageEditor.history.compareError": "Не удалось загрузить предварительный просмотр изменений",
"pageEditor.history.compareModalTitle": "Сравнение",
"pageEditor.history.compareOldLabel": "Восстановить до",
"pageEditor.history.compareTitle": "Сравнение версий",
"pageEditor.history.current": "Текущая",
"pageEditor.history.dayLabel.today": "Сегодня",
"pageEditor.history.dayLabel.yesterday": "Вчера",
"pageEditor.history.empty": "История версий отсутствует",
"pageEditor.history.restore": "Восстановить",
"pageEditor.history.restoreConfirm.content": "Восстановить страницу в состояние на {{savedAt}}? Текущее содержимое будет заменено и сохранено.",
"pageEditor.history.restoreConfirm.title": "Восстановление из истории",
"pageEditor.history.restoreError": "Не удалось восстановить из истории",
"pageEditor.history.saveSource.autosave": "Автосохранение",
"pageEditor.history.saveSource.llm_call": "AI-редактирование",
"pageEditor.history.saveSource.manual": "Ручное сохранение",
"pageEditor.history.saveSource.restore": "Восстановление",
"pageEditor.history.saveSource.system": "Система",
"pageEditor.history.title": "История версий",
"pageEditor.history.versionCount_one": "{{count}} версия",
"pageEditor.history.versionCount_other": "{{count}} версий",
"pageEditor.likes.count": "{{count}} лайков",
"pageEditor.likes.count_one": "{{count}} отметка \"Нравится\"",
"pageEditor.likes.count_other": "{{count}} отметок \"Нравится\"",
"pageEditor.likes.failed": "Не удалось обновить ваш лайк. Попробуйте снова.",
"pageEditor.likes.like": "Эта страница полезна? Поставьте лайк",
"pageEditor.likes.liked": "Понравилось",
"pageEditor.likes.more": "+{{count}} ещё",
"pageEditor.linkCopied": "Ссылка скопирована",
"pageEditor.lock.editingByOther": "{{name}} редактирует эту страницу. Ваши изменения не могут быть сохранены прямо сейчас.",
"pageEditor.lock.editingBySomeone": "Кто-то другой редактирует эту страницу. Ваши изменения не могут быть сохранены прямо сейчас.",
"pageEditor.menu.copyLink": "Скопировать ссылку",
"pageEditor.menu.export": "Экспорт",
"pageEditor.menu.export.markdown": "Markdown",
"pageEditor.menu.exportDocument": "Экспорт страницы",
"pageEditor.menu.importDocument": "Импорт страницы",
"pageEditor.menu.move": "Переместить",
"pageEditor.menu.pin": "Закрепить страницу",
"pageEditor.saveFailed": "Не удалось сохранить страницу, попробуйте позже",
"pageEditor.saving": "Сохранение...",
"pageEditor.titlePlaceholder": "Без названия",
"pageEditor.wordCount": "{{wordCount}} слов",
"pageList.actions.openInNewTab": "Открыть в новой вкладке",
"pageList.copyConfirm": "Копировать",
"pageList.copyContent": "Скопировать весь текст",
"pageList.copyDescription": "Создайте копию этой страницы в другой рабочей области.",
"pageList.copyFailed": "Не удалось скопировать страницу",
"pageList.copySuccess": "Страница скопирована",
"pageList.copyTitle": "Копировать страницу",
"pageList.copyTo": "Копировать в…",
"pageList.duplicate": "Дублировать",
"pageList.empty": "Пока нет страниц. Нажмите кнопку выше, чтобы создать первую.",
"pageList.filter.all": "Все",
"pageList.filter.onlyInPages": "Только в страницах",
"pageList.noResults": "Совпадений не найдено",
"pageList.pageCount": "Всего {{count}} страниц",
"pageList.pageSizeItem": "{{count}} элементов",
"pageList.privateTitle": "Частное",
"pageList.publishConfirm.ok": "Опубликовать",
"pageList.publishConfirm.title": "Опубликовать в рабочем пространстве",
"pageList.publishError": "Не удалось опубликовать страницу",
"pageList.publishSuccess": "Страница опубликована в рабочем пространстве",
"pageList.publishToWorkspace": "Опубликовать в рабочем пространстве",
"pageList.title": "Страницы",
"pageList.transferConfirm": "Переместить",
"pageList.transferDescription": "Переместите эту страницу (и любые содержащиеся в ней папки) в другую рабочую область.",
"pageList.transferFailed": "Не удалось переместить страницу",
"pageList.transferSuccess": "Страница перемещена",
"pageList.transferTitle": "Переместить страницу",
"pageList.transferTo": "Переместить в…",
"pageList.transferWarning": "Это одностороннее перемещение; для отмены потребуется повторное перемещение.",
"pageList.untitled": "Без названия",
"pageList.workspaceTitle": "Рабочее пространство",
"portal.openInPageEditor": "Редактировать в странице",
"preview.downloadFile": "Скачать файл",
"preview.raw": "Исходный",
"preview.render": "Предпросмотр",
"preview.unsupportedFileAndContact": "Этот формат файла пока не поддерживается для онлайн-просмотра. Если у вас есть пожелания, <1>свяжитесь с нами</1>.",
"resource": "Ресурс",
"resourceList.batchCopyDescription": "Клонируйте выбранные ресурсы в другую рабочую область.",
"resourceList.batchCopyTitle": "Копировать ресурсы",
"resourceList.batchTransferDescription": "Переместите выбранные ресурсы в другую рабочую область.",
"resourceList.batchTransferTitle": "Переместить ресурсы",
"resourceList.copyConfirm": "Копировать",
"resourceList.copyDocumentDescription": "Клонируйте этот документ в другую рабочую область.",
"resourceList.copyDocumentTitle": "Копировать документ",
"resourceList.copyFailed": "Не удалось скопировать ресурс",
"resourceList.copyFileDescription": "Клонируйте этот файл в другую рабочую область.",
"resourceList.copyFileTitle": "Копировать файл",
"resourceList.copyFolderDescription": "Клонируйте эту папку (и её содержимое) в другую рабочую область.",
"resourceList.copyFolderTitle": "Копировать папку",
"resourceList.copySuccess": "Ресурс скопирован",
"resourceList.copyTo": "Копировать в…",
"resourceList.transferConfirm": "Переместить",
"resourceList.transferDocumentDescription": "Переместите этот документ в другую рабочую область.",
"resourceList.transferDocumentTitle": "Переместить документ",
"resourceList.transferFailed": "Не удалось переместить ресурс",
"resourceList.transferFileDescription": "Переместите этот файл в другую рабочую область.",
"resourceList.transferFileTitle": "Переместить файл",
"resourceList.transferFolderDescription": "Переместите эту папку (и её содержимое) в другую рабочую область.",
"resourceList.transferFolderTitle": "Переместить папку",
"resourceList.transferSuccess": "Ресурс перемещён",
"resourceList.transferTo": "Переместить в…",
"resourceList.viewTransferred": "Просмотреть",
"searchFilePlaceholder": "Поиск файлов",
"searchPagePlaceholder": "Поиск страниц",
"tab.all": "Все",
"tab.artifacts": "Артефакты",
"tab.audios": "Аудио",
"tab.documents": "Документы",
"tab.files": "Файлы",
"tab.home": "Главная",
"tab.images": "Изображения",
"tab.moreTypes": "Другие типы",
"tab.pages": "Страницы",
"tab.videos": "Видео",
"tab.websites": "Веб-сайты",
"title": "Ресурсы",
"toggleLeftPanel": "Показать/Скрыть левую панель",
"uploadDock.body.collapse": "Свернуть",
"uploadDock.body.item.cancel": "Отменить",
"uploadDock.body.item.cancelled": "Отменено",
"uploadDock.body.item.done": "Загружено",
"uploadDock.body.item.error": "Ошибка загрузки, попробуйте снова",
"uploadDock.body.item.pending": "Подготовка к загрузке...",
"uploadDock.body.item.processing": "Обработка файла...",
"uploadDock.body.item.restTime": "Осталось {{time}}",
"uploadDock.body.item.retry": "Повторить загрузку",
"uploadDock.fileQueueInfo": "Загружаются первые {{count}} файлов, {{remaining}} в очереди",
"uploadDock.header.cancelAll": "Отменить все",
"uploadDock.totalCount": "Всего {{count}} элементов",
"uploadDock.uploadStatus.cancelled": "Загрузка отменена",
"uploadDock.uploadStatus.error": "Ошибка загрузки",
"uploadDock.uploadStatus.pending": "Ожидание загрузки",
"uploadDock.uploadStatus.processing": "Загрузка",
"uploadDock.uploadStatus.success": "Загрузка завершена",
"uploadDock.uploadStatus.uploading": "Загрузка",
"work.agentEmpty.desc": "Выберите другого агента, чтобы увидеть его работу.",
"work.agentEmpty.title": "Нет работы от этого агента",
"work.agentFilter.all": "Все",
"work.count_one": "{{count}} работа",
"work.count_other": "{{count}} работ",
"work.createdAt": "Создано {{date}}",
"work.date.today": "Сегодня",
"work.date.yesterday": "Вчера",
"work.empty.desc": "Работы, которые выполняют ваши агенты — задачи, документы, элементы Linear и GitHub — будут собираться здесь.",
"work.empty.title": "Пока нет работ",
"work.fromTopic": "{{topic}}",
"work.group": "Работы",
"work.loadError": "Что-то пошло не так при загрузке работ.",
"work.loadErrorTitle": "Не удалось загрузить работы",
"work.loadMoreError": "Не удалось загрузить больше работ.",
"work.retry": "Повторить",
"work.topicGroup.other": "Другое",
"work.totalCost": "Общая стоимость {{cost}}",
"work.type.document": "Документ",
"work.type.file": "Файл",
"work.type.githubIssue": "GitHub задача",
"work.type.githubPullRequest": "GitHub запрос на слияние",
"work.type.linearDocument": "Linear документ",
"work.type.linearIssue": "Linear задача",
"work.type.task": "Задача",
"work.updatedAt": "Обновлено {{date}}"
}