Files
pipu-music/packages/i18n/locales/ru/admin.json
T
mrleo1nidandClaude Opus 5.5 eaedd1fc62
ci / contract / contract (сгенерированный код совпадает с openapi.yaml) (push) Successful in 41s
ci / mobile / mobile (Metro-бандл Android) (push) Successful in 1m13s
ci / ts / ts (packages + web) (push) Successful in 1m14s
ci / api / api (push) Successful in 36s
feat(web): My Wave button, mood picker and endless wave playback (M4)
- WaveButton: TypeScript port of the prototype's canvas animation
  (orb and liquid), breathing at rest, pulsing to the track's BPM and
  energy in the cover palette, following the cursor, pressing with a
  spring; reduced motion and hidden tabs slow or stop it
- home: the wave in the centre with activity and mood chips; changing
  them while playing rebuilds the upcoming tracks without stopping
- player wave mode: asks for the next batch when two tracks are left,
  sends complete / skip / early skip / like / dislike as feedback and
  refreshes the queue right after a reaction or an early skip
- tracks expose bpm, energy and loudness once analysed; library page
  shows analysis progress and 7-day wave metrics; wave style setting

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 12:29:38 +03:00

164 lines
8.2 KiB
JSON
Raw 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.
{
"users": {
"title": "Пользователи",
"subtitle": "Создание пользователей и модераторов, роли, сброс пароля, блокировка",
"create": "Создать пользователя",
"search": "Имя или логин",
"all": "Все",
"col_user": "Пользователь",
"col_role": "Роль",
"col_status": "Статус",
"col_last_login": "Был в сети",
"status_active": "Активен",
"status_blocked": "Заблокирован",
"status_must_change": "Ждёт смены пароля",
"never": "Ещё не входил",
"empty": "Никого не нашли",
"more": "Показать ещё",
"actions": "Действия с {{username}}",
"reset_password": "Сбросить пароль",
"block": "Заблокировать",
"unblock": "Разблокировать",
"make_role": "Сделать: {{role}}",
"delete": "Удалить",
"delete_confirm": "Удалить {{username}}? Его история и лайки пропадут.",
"block_confirm": "Заблокировать {{username}}? Все его сессии завершатся.",
"reset_confirm": "Сбросить пароль {{username}}? Все его сессии завершатся.",
"confirm": "Подтвердить",
"you": "вы"
},
"create": {
"title": "Новый пользователь",
"username": "Логин",
"username_hint": "Латинские буквы, цифры, «.», «_», «-»",
"display_name": "Имя",
"role": "Роль",
"password_note": "Пароль сгенерирует сервер и покажет один раз.",
"submit": "Создать"
},
"temp_password": {
"title": "Временный пароль",
"text": "Передайте пароль пользователю {{username}}. Он виден только сейчас; при входе его попросят сменить.",
"done": "Готово"
},
"audit": {
"title": "Журнал",
"subtitle": "Действия администраторов и модераторов",
"col_when": "Когда",
"col_who": "Кто",
"col_action": "Действие",
"col_details": "Подробности",
"system": "Система",
"empty": "Записей пока нет",
"more": "Показать ещё",
"actions": {
"user.bootstrap_create": "Создан стартовый администратор",
"user.bootstrap_credentials": "Заданы учётные данные администратора",
"user.create": "Создан пользователь",
"user.rename": "Изменено имя",
"user.role_change": "Изменена роль",
"user.block": "Пользователь заблокирован",
"user.unblock": "Пользователь разблокирован",
"user.password_reset": "Сброшен пароль",
"user.delete": "Пользователь удалён"
}
},
"sources": {
"title": "Хранилища",
"subtitle": "Откуда сервер берёт музыку: папка на диске сервера или NFS",
"add": "Подключить хранилище",
"empty": "Хранилищ пока нет. Подключите папку с музыкой, чтобы начать.",
"type_local": "Папка на сервере",
"type_nfs": "NFS",
"status_pending": "Подключается",
"status_mounted": "Подключено",
"status_error": "Ошибка",
"status_disabled": "Отключено",
"last_scan": "Последний скан: {{date}}",
"never_scanned": "Ещё не сканировалось",
"scan": "Сканировать",
"full_scan": "Полный скан",
"test": "Проверить",
"patterns": "Шаблоны путей",
"edit": "Изменить",
"delete": "Удалить",
"disable": "Отключить",
"enable": "Подключить",
"delete_confirm": "Удалить «{{name}}»? Треки, которые есть только в этом хранилище, пропадут из библиотеки вместе с лайками.",
"scanning": "Сканирование: {{processed}} из {{total}}",
"scan_walking": "Обход папок…",
"scan_done": "Найдено {{found}} · новых {{added}} · обновлено {{updated}} · перемещено {{moved}} · пропало {{missing}} · ошибок {{errors}}",
"scan_failed": "Скан прервался: {{error}}",
"test_ok": "Доступно, найдено аудиофайлов: {{count}}",
"test_fail": "Нет доступа: {{message}}",
"form_title_new": "Новое хранилище",
"form_title_edit": "Хранилище",
"name": "Название",
"type": "Тип",
"folder": "Папка",
"folder_root": "Весь каталог",
"folder_hint": "Подпапка каталога LIBRARY_HOST на сервере",
"up": "Вверх",
"nfs_server": "Сервер",
"nfs_server_hint": "Имя или IP, например nas.lan",
"nfs_export": "Экспорт",
"nfs_export_hint": "Путь на сервере, например /export/music",
"nfs_options": "Опции монтирования",
"nfs_options_hint": "Только чтение добавляется автоматически",
"tag_priority": "Что важнее",
"tags_first": "Теги файлов",
"path_first": "Шаблоны путей",
"interval": "Автоскан",
"interval_off": "Вручную",
"interval_hours": "Каждые {{count}} ч",
"save": "Сохранить"
},
"patterns": {
"title": "Шаблоны путей: {{name}}",
"intro": "Регулярные выражения RE2 с именованными группами применяются к пути файла относительно корня хранилища. Побеждает первое совпавшее.",
"groups": "Группы: artist, albumartist, album, year, disc, track, title, genre; skip — игнорировать файл.",
"add": "Добавить шаблон",
"regex": "Шаблон {{n}}",
"enabled": "Включён",
"up": "Выше",
"down": "Ниже",
"remove": "Удалить",
"preview": "Предпросмотр",
"save": "Сохранить",
"saved": "Сохранено. Запустите полный скан, чтобы применить к уже найденным файлам.",
"col_path": "Путь",
"col_pattern": "Шаблон",
"col_result": "Результат",
"no_match": "не совпал",
"skipped": "пропускается",
"unmatched": "Не совпал ни один шаблон: {{count}} из {{total}}",
"from_tags": "из тегов",
"error_at": "Ошибка в шаблоне {{n}}: {{reason}}",
"examples": "Примеры"
},
"library": {
"title": "Библиотека",
"subtitle": "Состояние каталога и сканирования",
"artists": "Исполнителей",
"albums": "Альбомов",
"tracks": "Треков",
"files": "Файлов",
"missing": "Пропавших файлов",
"errors": "Не прочитано",
"sources": "Хранилища",
"error_files": "Файлы с ошибками",
"reindex": "Переиндексировать поиск",
"reindex_started": "Переиндексация запущена",
"analysis": "Аудиоанализ",
"analysis_progress": "Проанализировано {{done}} из {{total}}",
"analysis_failed": "Не удалось проанализировать: {{count}}",
"analyzer": "Версия анализатора: {{ver}}",
"wave": "Моя волна за 7 дней",
"wave_served": "Выдано треков",
"wave_sessions": "Сессий",
"wave_listen": "Дослушано ≥ 50%",
"wave_early_skip": "Ранние скипы",
"wave_likes": "Лайков на 100"
}
}