feat(playlists): improve smart playlist editing and localization

Open smart playlist editing from playlist cards, load rules via Navidrome single-playlist API with safer fallbacks, and keep edit visibility aligned with ownership rules.
Also add/clean smart playlist locale keys across all supported languages and preserve smarter autogenerated naming behavior.
This commit is contained in:
Maxim Isaev
2026-04-24 17:29:41 +03:00
parent da4e0189b9
commit 401fed8368
12 changed files with 519 additions and 56 deletions
+3 -6
View File
@@ -1383,8 +1383,6 @@ export const ruTranslation = {
csvImportDownloadError: 'Не удалось скачать отчёт',
},
smartPlaylists: {
title: 'Смарт-плейлисты',
empty: 'Смарт-плейлистов пока нет.',
sectionBasic: '1. База',
sectionGenres: '2. Жанры',
sectionYearsAndFilters: '3. Годы и фильтры',
@@ -1398,7 +1396,6 @@ export const ruTranslation = {
yearModeInclude: 'Включить диапазон',
yearModeExclude: 'Исключить диапазон',
name: 'Название (без префикса)',
anyGenre: 'Любой жанр',
limit: 'Лимит',
limitHint: 'Сколько треков включать в плейлист (1-{{max}}, обычно 50).',
artistContains: 'Исполнитель содержит…',
@@ -1412,13 +1409,13 @@ export const ruTranslation = {
excludeUnrated: 'Исключить треки без рейтинга',
compilationOnly: 'Только сборники',
create: 'Создать смарт-плейлист',
save: 'Сохранить смарт-плейлист',
created: 'Создан {{name}}',
updated: 'Обновлён {{name}}',
createFailed: 'Не удалось создать смарт-плейлист.',
deleted: 'Удалён {{name}}',
deleteFailed: 'Не удалось удалить смарт-плейлист.',
updateFailed: 'Не удалось обновить смарт-плейлист.',
navidromeOnly: 'Смарт-плейлисты можно создавать только на серверах Navidrome.',
loadFailed: 'Не удалось загрузить смарт-плейлисты из Navidrome.',
liveBadge: 'live',
sortRandom: 'Сортировка: случайно',
sortTitleAsc: 'Сортировка: название А-Я',
sortTitleDesc: 'Сортировка: название Я-А',