2323from .const import (
2424 ATTR_COMMAND ,
2525 ATTR_DATA ,
26+ ATTR_DURATION ,
2627 ATTR_FAVORITE ,
2728 ATTR_LIMIT ,
2829 ATTR_LIMIT_AFTER ,
@@ -410,7 +411,7 @@ async def get_playlist_tracks(self, playlist_uri: str, page: int | None = None):
410411 )
411412 return [self .format_track_item (item .to_dict ()) for item in resp ]
412413
413- def format_track_item (self , playlist_item : dict ) -> dict :
414+ def format_track_item (self , playlist_item : dict ) -> TRACK_ITEM_SCHEMA :
414415 """Processes the individual items in a playlist."""
415416 media_title = playlist_item .get ("name" ) or "N/A"
416417 media_album = playlist_item .get ("album" ) or "N/A"
@@ -419,6 +420,7 @@ def format_track_item(self, playlist_item: dict) -> dict:
419420 media_image = find_image (playlist_item ) or ""
420421 local_image_encoded = playlist_item .get (ATTR_LOCAL_IMAGE_ENCODED )
421422 favorite = playlist_item ["favorite" ]
423+ duration = playlist_item ["duration" ] or 0
422424
423425 artists = playlist_item ["artists" ]
424426 artist_names = [artist ["name" ] for artist in artists ]
@@ -429,6 +431,7 @@ def format_track_item(self, playlist_item: dict) -> dict:
429431 ATTR_MEDIA_ALBUM_NAME : media_album_name ,
430432 ATTR_MEDIA_ARTIST : media_artist ,
431433 ATTR_MEDIA_CONTENT_ID : media_content_id ,
434+ ATTR_DURATION : duration ,
432435 ATTR_MEDIA_IMAGE : media_image ,
433436 ATTR_FAVORITE : favorite ,
434437 },
0 commit comments