feat: M3 weighted shuffle v1 — real /api/radio with scoring #21
@@ -8,20 +8,20 @@ import retrofit2.http.Path
|
||||
import retrofit2.http.Query
|
||||
|
||||
/**
|
||||
* Retrofit interface for the server's native /api/* library surface.
|
||||
* Retrofit interface for the server's native `/api/...` library surface.
|
||||
* Mirrors `flutter_client/lib/api/endpoints/library.dart` 1:1.
|
||||
*
|
||||
* Notes on shapes:
|
||||
* - GET /api/artists/{id} returns ArtistDetailWire (ArtistRef fields
|
||||
* + embedded "albums" array)
|
||||
* - GET /api/artists/{id}/tracks returns a bare JSON array, not an
|
||||
* - `GET /api/artists/{id}` returns ArtistDetailWire (ArtistRef fields
|
||||
* plus embedded "albums" array)
|
||||
* - `GET /api/artists/{id}/tracks` returns a bare JSON array, not an
|
||||
* enveloped object — Retrofit's `List<TrackWire>` return type
|
||||
* handles that.
|
||||
* - GET /api/albums/{id} returns AlbumDetailWire (AlbumRef fields
|
||||
* + embedded "tracks" array)
|
||||
* - GET /api/library/shuffle returns a bare JSON array.
|
||||
* - `GET /api/albums/{id}` returns AlbumDetailWire (AlbumRef fields
|
||||
* plus embedded "tracks" array)
|
||||
* - `GET /api/library/shuffle` returns a bare JSON array.
|
||||
*
|
||||
* Home endpoints (/api/home, /api/home/index) live in a separate
|
||||
* Home endpoints (`/api/home`, `/api/home/index`) live in a separate
|
||||
* `HomeApi` because they have their own wire types (HomePayload,
|
||||
* HomeIndex) that are larger and only used by the Home screen.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user