""" Contains all the artist(s) routes. """ import urllib from app import cache from app import helpers from app import instances from flask import Blueprint artist_bp = Blueprint("artist", __name__, url_prefix="/") # @artist_bp.route("/artist/") # @cache.cached() # def get_artist_data(artist: str): # """Returns the artist's data, tracks and albums""" # artist = urllib.parse.unquote(artist) # artist_obj = instances.artist_instance.get_artists_by_name(artist) # def get_artist_tracks(): # songs = instances.tracks_instance.find_songs_by_artist(artist) # return songs # artist_songs = get_artist_tracks() # songs = helpers.remove_duplicates(artist_songs) # def get_artist_albums(): # artist_albums = [] # albums_with_count = [] # albums = instances.tracks_instance.find_songs_by_albumartist(artist) # for song in albums: # if song["album"] not in artist_albums: # artist_albums.append(song["album"]) # for album in artist_albums: # count = 0 # length = 0 # for song in artist_songs: # if song["album"] == album: # count = count + 1 # length = length + song["length"] # album_ = {"title": album, "count": count, "length": length} # albums_with_count.append(album_) # return albums_with_count # return { # "artist": artist_obj, # "songs": songs, # "albums": get_artist_albums() # }