/
/
/
1"""Constants for the Yandex Music provider."""
2
3from __future__ import annotations
4
5from typing import Final
6
7# Configuration Keys
8CONF_TOKEN = "token"
9CONF_QUALITY = "quality"
10
11# Actions
12CONF_ACTION_AUTH = "auth"
13CONF_ACTION_CLEAR_AUTH = "clear_auth"
14
15# Labels
16LABEL_TOKEN = "token_label"
17LABEL_AUTH_INSTRUCTIONS = "auth_instructions_label"
18
19# API defaults
20DEFAULT_LIMIT: Final[int] = 50
21
22# Quality options
23QUALITY_HIGH = "high"
24QUALITY_LOSSLESS = "lossless"
25
26# Image sizes
27IMAGE_SIZE_SMALL = "200x200"
28IMAGE_SIZE_MEDIUM = "400x400"
29IMAGE_SIZE_LARGE = "1000x1000"
30
31# ID separators
32PLAYLIST_ID_SPLITTER: Final[str] = ":"
33
34# Rotor (radio) station identifiers
35ROTOR_STATION_MY_WAVE: Final[str] = "user:onyourwave"
36
37# Virtual playlist ID for My Wave (used in get_playlist / get_playlist_tracks; not owner_id:kind)
38MY_WAVE_PLAYLIST_ID: Final[str] = "my_wave"
39
40# Composite item_id for My Wave tracks: track_id + separator + station_id (for rotor feedback)
41RADIO_TRACK_ID_SEP: Final[str] = "@"
42
43# Browse folder names by locale (item_id -> display name)
44BROWSE_NAMES_RU: Final[dict[str, str]] = {
45 "my_wave": "ÐÐ¾Ñ Ð²Ð¾Ð»Ð½Ð°",
46 "artists": "Ðои иÑполниÑели",
47 "albums": "Ðои алÑбомÑ",
48 "tracks": "Ðне нÑавиÑÑÑ",
49 "playlists": "Ðои плейлиÑÑÑ",
50}
51BROWSE_NAMES_EN: Final[dict[str, str]] = {
52 "my_wave": "My Wave",
53 "artists": "My Artists",
54 "albums": "My Albums",
55 "tracks": "My Favorites",
56 "playlists": "My Playlists",
57}
58