export const ru = {
  common: {
    loading: "Загрузка проекта...",
    noGraphLoaded: "Граф знаний не загружен",
    selectNode: "Выберите узел, чтобы увидеть подробности",
    back: "Назад",
    focus: "Фокус",
    unfocus: "Снять фокус",
    openCode: "Открыть код",
    file: "Файл",
    tags: "Теги",
    connections: "Связи",
    filter: "Фильтр",
    resetAll: "Сбросить всё",
    analyzed: "Проанализировано",
    startGuidedTour: "Начать обзор",
    truncated: "(сокращено)",
    preview: "Предпросмотр",
    doubleClickToOpen: "двойной клик, чтобы открыть",
    appName: "Understand Anything",
    pressKeyboard: "Нажмите ? для горячих клавиш",
    path: "Путь",
    theme: "Тема",
  },
  projectOverview: {
    nodes: "Узлы",
    edges: "Рёбра",
    layers: "Слои",
    types: "Типы",
    fileTypes: "Типы файлов",
    code: "Код",
    config: "Конфиг",
    docs: "Документация",
    infra: "Инфраструктура",
    data: "Данные",
    domain: "Домен",
    knowledge: "Знания",
    languages: "Языки",
    frameworks: "Фреймворки",
    nodeTypeDistribution: "Распределение типов узлов",
    complexityDistribution: "Распределение сложности",
    simple: "Простой",
    moderate: "Средний",
    complex: "Сложный",
    mostConnectedNodes: "Самые связанные узлы",
    avgConnectionsPerNode: "Среднее число связей на узел",
  },
  nodeInfo: {
    definedInThisFile: "Определено в этом файле",
    languageConcepts: "Концепции языка",
    category: "Категория",
    wikilinks: "Wiki-ссылки",
    backlinks: "Обратные ссылки",
    entities: "Сущности",
    businessRules: "Бизнес-правила",
    crossDomain: "Междоменные связи",
    flows: "Потоки",
    entryPoint: "Точка входа",
    steps: "Шаги",
    implementation: "Реализация",
  },
  fileExplorer: {
    analyzedFiles: "Проанализированные файлы",
    filesFromGraph: "файлы из текущего графа знаний",
    noFilePathsFound: "Пути файлов не найдены.",
  },
  filterPanel: {
    nodeTypes: "Типы узлов",
    complexity: "Сложность",
    layers: "Слои",
    edgeCategories: "Категории рёбер",
  },
  personaSelector: {
    overview: "Обзор",
    overviewDesc: "Высокоуровневый архитектурный вид",
    learn: "Обучение",
    learnDesc: "Полная панель с пошаговым обучением",
    deepDive: "Погружение",
    deepDiveDesc: "Фокус на коде с чатом",
  },
  sidebar: {
    info: "Информация",
    files: "Файлы",
  },
  mobile: {
    graph: "Граф",
    info: "Информация",
    files: "Файлы",
  },
  drawer: {
    controls: "Управление",
    dashboard: "Панель",
    role: "Роль",
    view: "Вид",
    diffOverlay: "Наложение изменений",
    nodeTypes: "Типы узлов",
    layers: "Слои",
    tools: "Инструменты",
    path: "Путь",
    help: "Помощь",
    structural: "Структура",
    domain: "Домен",
  },
  domainView: {
    backToDomains: "Назад к доменам",
  },
  detailLevel: {
    filesTitle: "Только файлы — зависимости архитектурного уровня (быстро)",
    classesTitle: "Файлы + классы — структура кода с наследованием",
    files: "Файлы",
    classes: "+Классы",
    fnTitle: "Переключить узлы функций (может замедлить отрисовку)",
    fn: "fn",
  },
  nodeTypeLabels: {
    all: "Все",
    code: "Код",
    config: "Конфиг",
    docs: "Документация",
    infra: "Инфраструктура",
    data: "Данные",
    domain: "Домен",
    knowledge: "Знания",
  },
  tokenGate: {
    validating: "Проверка...",
    continue: "Продолжить",
  },
  diffToggle: {
    hideOverlay: "Скрыть наложение изменений",
    showOverlay: "Показать наложение изменений",
    noData: "Данные об изменениях не загружены",
    changed: "Изменено",
    affected: "Затронуто",
  },
  learnPanel: {
    finish: "Завершить",
    next: "Далее",
    prev: "Назад",
    noTour: "Обзор недоступен",
    noTourHint: "Сгенерируйте обзор из графа знаний, чтобы получить пошаговое руководство по кодовой базе",
    projectTour: "Обзор проекта",
    steps: "шагов",
    stepsTitle: "Шаги",
    guidedWalkthrough: "Пошаговое знакомство с кодовой базой",
    startTour: "Начать обзор",
    tour: "Обзор",
    exitTour: "Завершить обзор",
  },
  layer: {
    defaultName: "Слой",
    label: "слои",
  },
  breadcrumb: {
    projectOverview: "Обзор проекта",
    project: "Проект",
    escBack: "Esc — назад",
  },
  warningBanner: {
    dropped: "Отброшено",
    fatal: "Критично",
  },
  themePicker: {
    changeTheme: "Сменить тему",
    theme: "Тема",
    accentColor: "Акцентный цвет",
    headingFont: "Шрифт заголовков",
    serif: "Серифный",
    sans: "Без засечек",
    mono: "Моноширинный",
  },
  codeViewer: {
    fullFile: "Весь файл",
    lines: "Строки",
    linesLabel: "строк",
    noFile: "Файл не выбран",
    loading: "Загрузка исходного кода...",
    openLarger: "Открыть увеличенный просмотрщик кода",
    closeExpanded: "Закрыть расширенный просмотрщик кода",
    closeViewer: "Закрыть просмотрщик кода",
    sourceUnavailable: "Исходный код недоступен",
  },
  customNode: {
    tested: "Покрыт тестами",
    hasTests: "Есть тесты",
  },
  ariaLabels: {
    openMenu: "Открыть меню",
    closeMenu: "Закрыть меню",
    settings: "Настройки",
    hideSearch: "Скрыть поиск",
    showSearch: "Показать поиск",
  },
  nodeTypeFilter: {
    hide: "Скрыть",
    show: "Показать",
    nodesLabel: "узлов",
  },
  keyboardShortcuts: {
    showHelp: "Показать горячие клавиши",
    general: "Общие",
    navigation: "Навигация",
    tour: "Обзор",
    view: "Вид",
    focusSearch: "Перейти к строке поиска",
    nextStep: "Следующий шаг обзора",
    prevStep: "Предыдущий шаг обзора",
    toggleDiff: "Переключить режим изменений",
    toggleFilter: "Переключить панель фильтров",
    toggleExport: "Переключить меню экспорта",
    openPathFinder: "Открыть поиск пути",
    title: "Горячие клавиши",
    toggleHint: "Нажмите ?, чтобы открыть или закрыть эту справку",
    closeHint: "Нажмите ESC, чтобы закрыть",
    escapeDesc: "Закрыть панели и модальные окна / вернуться к обзору",
  },
  search: {
    placeholder: "Поиск узлов по имени, описанию или тегам...",
    fuzzy: "Нечёткий",
    semantic: "Семантический",
    result: "результат",
  },
  export: {
    label: "Экспорт",
    title: "Экспортировать граф (E)",
    asPNG: "Экспортировать как PNG",
    asSVG: "Экспортировать как SVG",
    asJSON: "Экспортировать как JSON",
  },
  edgeLabels: {
    imports: { forward: "импортирует", backward: "импортируется" },
    exports: { forward: "экспортирует в", backward: "экспортируется" },
    contains: { forward: "содержит", backward: "содержится в" },
    inherits: { forward: "наследует от", backward: "наследуется" },
    implements: { forward: "реализует", backward: "реализуется" },
    calls: { forward: "вызывает", backward: "вызывается" },
    subscribes: { forward: "подписывается на", backward: "подписан" },
    publishes: { forward: "публикует в", backward: "получает события" },
    middleware: { forward: "middleware для", backward: "использует middleware" },
    reads_from: { forward: "читает из", backward: "читается" },
    writes_to: { forward: "пишет в", backward: "записывается" },
    transforms: { forward: "преобразует", backward: "преобразуется" },
    validates: { forward: "валидирует", backward: "валидируется" },
    depends_on: { forward: "зависит от", backward: "является зависимостью" },
    tested_by: { forward: "тестируется", backward: "тестирует" },
    configures: { forward: "конфигурирует", backward: "конфигурируется" },
    related: { forward: "связан с", backward: "связан с" },
    similar_to: { forward: "похож на", backward: "похож на" },
    deploys: { forward: "разворачивает", backward: "разворачивается" },
    serves: { forward: "обслуживает", backward: "обслуживается" },
    migrates: { forward: "мигрирует", backward: "мигрируется" },
    documents: { forward: "документирует", backward: "документируется" },
    provisions: { forward: "обеспечивает", backward: "обеспечивается" },
    routes: { forward: "маршрутизирует в", backward: "маршрутизируется из" },
    defines_schema: { forward: "определяет схему для", backward: "схема определена" },
    triggers: { forward: "запускает", backward: "запускается" },
    contains_flow: { forward: "содержит поток", backward: "поток в" },
    flow_step: { forward: "шаг потока", backward: "шаг" },
    cross_domain: { forward: "междоменно к", backward: "междоменно из" },
    cites: { forward: "цитирует", backward: "цитируется" },
    contradicts: { forward: "противоречит", backward: "опровергается" },
    builds_on: { forward: "основан на", backward: "основа для" },
    exemplifies: { forward: "иллюстрирует", backward: "иллюстрируется" },
    categorized_under: { forward: "относится к", backward: "категоризирует" },
    authored_by: { forward: "автор", backward: "автор" },
  },
  pathFinder: {
    title: "Найти путь между узлами (P)",
  },
  onboarding: {
    header: "UNDERSTAND-ANYTHING · НАЧАЛО РАБОТЫ",
    skipForever: "Больше не показывать",
    prev: "Назад",
    next: "Далее",
    finish: "Начать исследование",
    steps: [
      {
        title: "Добро пожаловать в граф знаний",
        body: "Точки и линии — это сущности и связи, извлечённые Understand-Anything из этого проекта. Узлом может быть файл, класс или функция из кода — либо концепция, сущность или утверждение из вики знаний.",
        hint: "Пять шагов охватят основные операции",
      },
      {
        title: "Три вида сверху",
        body: "Overview показывает общую картину (force-directed). Learn ведёт по заранее заданному учебному пути. Deep Dive показывает статистику по типам и сложности. Каждый вид отвечает на свой вопрос.",
        hint: "Перед переключением определитесь, о чём вы спрашиваете",
      },
      {
        title: "Поиск + клик по узлу",
        body: "Поисковая строка сверху делает нечёткое совпадение по имени узла, summary и тегам. Кликните по узлу — справа откроется панель с summary, соседями и кнопкой Open Article.",
        hint: "Поиск центрирует и подсвечивает; клик подсвечивает соседние рёбра",
      },
      {
        title: "Переключение Layer + Project Tour",
        body: "Вкладки layer рядом с All фильтруют граф по одной категории на основе index.md. Project Tour справа проводит вас по заранее заданной последовательности.",
        hint: "Используйте Layer, когда узлов слишком много; запустите Tour, если непонятно с чего начать",
      },
      {
        title: "Другие скрытые возможности",
        body: "В верхней панели также есть Filter (фильтр по типу / сложности), Export (экспорт графа), Path (поиск пути между двумя узлами) и Theme (смена темы). Нажмите Shift + ?, чтобы увидеть полный список горячих клавиш.",
        hint: "Открывайте их по мере необходимости — не нужно запоминать всё сразу",
      },
    ],
  },
};

export default ru;
