""" Spotify APIs and business logic. """ from flask import Blueprint import src.legacy.spotify.views as views blueprint = Blueprint("spotify_blueprint", __name__) blueprint.add_url_rule( "/personalized-playlists/", view_func=views.PersonalizedPlaylistsView.as_view("personalized-playlists") ) blueprint.add_url_rule( "/personalized-playlist-tracklist/", view_func=views.PersonalizedPlaylistTrackListView.as_view("personalized-playlist-tracklist"), ) blueprint.add_url_rule( "/tracks/playlists-stats/", view_func=views.TracksPlaylistsStatsView.as_view("tracks-playlists-stats") ) blueprint.add_url_rule("/nmf/available-dates/", view_func=views.NMFAvailableDates.as_view("nmf-available-dates")) blueprint.add_url_rule("/nmf/playlists/", view_func=views.NMFPlaylists.as_view("nmf-playlists")) blueprint.add_url_rule("/nmf/tracklist/", view_func=views.NMFTracklist.as_view("nmf-tracklist")) blueprint.add_url_rule("/nmf/track/", view_func=views.NMFTrackView.as_view("nmf-track")) blueprint.add_url_rule("/nmf/completeness/", view_func=views.NMFCompletenessView.as_view("nmf-completeness")) blueprint.add_url_rule("/markets/by-streams/", view_func=views.MarketsByStreamsView.as_view("markets-by-streams")) blueprint.add_url_rule("/playlist/track/", view_func=views.TrackInPlaylist.as_view("track-in-playlist")) blueprint.add_url_rule( "/playlist/track/position/", view_func=views.TrackPositionChangesInPlaylist.as_view("track-position-in-playlist") ) blueprint.add_url_rule( "/playlist/tracks/dates/", view_func=views.PlaylistTracksDatesView.as_view("tracks-dates-in-playlist") ) v1_blueprint = Blueprint("v1_spotify_blueprint", __name__) v1_blueprint.add_url_rule( "/track-playlists/trends/", view_func=views.TrackPlaylistsTrendsViewV1.as_view("track-playlists-trends-v1") ) v1_blueprint.add_url_rule("/track/playlists/", view_func=views.TrackPlaylistsViewV1.as_view("track-playlists-v1")) v1_blueprint.add_url_rule( "/track/previous-playlists/", view_func=views.TrackPreviousPlaylistsViewV1.as_view("track-previous-playlists-v1") ) v1_blueprint.add_url_rule("/playlists/markets/", view_func=views.PlaylistsMarketsViewV1.as_view("playlists-markets-v1")) v1_blueprint.add_url_rule("/playlists/data/", view_func=views.PlaylistsDataViewV1.as_view("playlists-data-v1")) v1_blueprint.add_url_rule( "/playlists/listeners/graph/", view_func=views.PlaylistsListenersGraphView.as_view("playlists-listeners-graph-v1") ) v1_blueprint.add_url_rule( "playlists/listeners/range//", view_func=views.PlaylistListenersDateRangeView.as_view("playlist-listeners-date-range-v1"), ) v1_blueprint.add_url_rule( "/playlists/followers/graph/", view_func=views.PlaylistsFollowersGraphView.as_view("playlists-followers-graph-v1") ) v1_blueprint.add_url_rule( "playlists/followers/range//", view_func=views.PlaylistFollowersDateRangeView.as_view("playlist-followers-date-range-v1"), ) v1_blueprint.add_url_rule( "/personalized-playlist-tracklist/", view_func=views.PersonalizedPlaylistTrackListViewV1.as_view("personalized-playlist-tracklist-v1"), ) v2_blueprint = Blueprint("v2_spotify_blueprint", __name__) v2_blueprint.add_url_rule("/track/playlists/", view_func=views.TrackPlaylistsViewV2.as_view("track-playlists-v2"))