from aiohttp import web from server.apple import views URL_PREFIX: str = "/api/apple/v1" def init_routes(apple_app: web.Application) -> None: apple_app.add_routes( [ web.get(URL_PREFIX + r"/tracks/{track_id:\d+}", views.track_details_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/songs/{track_id:\d+}", views.track_details_view), web.get(URL_PREFIX + "/tracks", views.tracks_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/songs", views.tracks_view), web.get(URL_PREFIX + "/tracks-by-isrc", views.tracks_by_isrc_view), web.post(URL_PREFIX + "/tracks-images", views.tracks_images_view), web.get(URL_PREFIX + r"/playlists/{playlist_id:pl.\w+}", views.playlist_details_view), web.get( URL_PREFIX + r"/catalog/{storefront:\w+}/playlists/{playlist_id:pl.\w+}", views.playlist_details_view ), web.get(URL_PREFIX + "/playlists", views.playlists_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/playlists", views.playlists_view), web.post(URL_PREFIX + "/playlists-images", views.playlists_images_view), web.get(URL_PREFIX + r"/albums/{album_id:\w+}", views.album_details_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/albums/{album_id:\w+}", views.album_details_view), web.get(URL_PREFIX + r"/albums", views.albums_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/albums", views.albums_view), web.get(URL_PREFIX + "/search", views.search_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/search", views.search_view), web.get(URL_PREFIX + r"/stations/{station_id:ra.\w+}", views.station_details_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/stations/{station_id:ra.\w+}", views.station_details_view), web.get(URL_PREFIX + r"/stations", views.stations_view), web.get(URL_PREFIX + r"/catalog/{storefront:\w+}/stations", views.stations_view), web.post(URL_PREFIX + r"/stations", views.stations_post_view), web.get(URL_PREFIX + r"/storefronts", views.storefronts_view), ] )