ITEM_KEY_PROVIDER_IDS,\r
ITEM_KEY_RUNTIME_TICKS,\r
ITEM_KEY_SORT_NAME,\r
+ ITEM_KEY_USER_DATA,\r
ITEM_TYPE_ALBUM,\r
ITEM_TYPE_ARTIST,\r
ITEM_TYPE_AUDIO,\r
MAX_IMAGE_WIDTH,\r
SUPPORTED_CONTAINER_FORMATS,\r
USER_APP_NAME,\r
+ USER_DATA_KEY_IS_FAVORITE,\r
)\r
\r
CONF_URL = "url"\r
artist_item[ITEM_KEY_NAME],\r
)\r
)\r
+ user_data = current_jellyfin_album.get(ITEM_KEY_USER_DATA, {})\r
+ album.favorite = user_data.get(USER_DATA_KEY_IS_FAVORITE, False)\r
return album\r
\r
async def _parse_artist(self, jellyfin_artist: dict[str, Any]) -> Artist:\r
remotely_accessible=False,\r
)\r
]\r
+ user_data = current_artist.get(ITEM_KEY_USER_DATA, {})\r
+ artist.favorite = user_data.get(USER_DATA_KEY_IS_FAVORITE, False)\r
return artist\r
\r
async def _parse_track(self, jellyfin_track: dict[str, Any]) -> Track:\r
track.name,\r
exc_info=error if self.logger.isEnabledFor(logging.DEBUG) else None,\r
)\r
+ user_data = current_jellyfin_track.get(ITEM_KEY_USER_DATA, {})\r
+ track.favorite = user_data.get(USER_DATA_KEY_IS_FAVORITE, False)\r
return track\r
\r
async def _parse_playlist(self, jellyfin_playlist: dict[str, Any]) -> Playlist:\r
remotely_accessible=False,\r
)\r
]\r
+ user_data = jellyfin_playlist.get(ITEM_KEY_USER_DATA, {})\r
+ playlist.favorite = user_data.get(USER_DATA_KEY_IS_FAVORITE, False)\r
playlist.is_editable = False\r
return playlist\r
\r
ITEM_KEY_CAN_DOWNLOAD: Final = "CanDownload"\r
ITEM_KEY_PARENT_INDEX_NUM: Final = "ParentIndexNumber"\r
ITEM_KEY_RUNTIME_TICKS: Final = "RunTimeTicks"\r
+ITEM_KEY_USER_DATA: Final = "UserData"\r
\r
ITEM_TYPE_ALBUM: Final = "MusicAlbum"\r
ITEM_TYPE_ARTIST: Final = "MusicArtist"\r
ITEM_TYPE_AUDIO: Final = "Audio"\r
ITEM_TYPE_LIBRARY: Final = "CollectionFolder"\r
\r
+USER_DATA_KEY_IS_FAVORITE: Final = "IsFavorite"\r
+\r
MAX_IMAGE_WIDTH: Final = 500\r
MAX_STREAMING_BITRATE: Final = "140000000"\r
\r