from tidalapi import Track from tidal_dl_ng.constants import MediaType def name_builder_artist(media: Track) -> str: return ", ".join(artist.name for artist in media.artists) def name_builder_title(media: Track) -> str: return media.name def name_builder_item(media: Track) -> str: return f"{name_builder_artist(media)} - {name_builder_title(media)}" def get_tidal_media_id(url_or_id_media: str) -> str: id_dirty = url_or_id_media.rsplit("/", 1)[-1] id_media = id_dirty.rsplit("?", 1)[0] return id_media def get_tidal_media_type(url_media: str) -> MediaType | bool: result: MediaType | bool = False url_split = url_media.split("/")[-2] if len(url_split) > 1: media_name = url_media.split("/")[-2] if media_name == "track": result = MediaType.TRACK elif media_name == "video": result = MediaType.VIDEO elif media_name == "album": result = MediaType.ALBUM elif media_name == "playlist": result = MediaType.PLAYLIST elif media_name == "mix": result = MediaType.MIX return result