using DeepDrftModels.DTOs; using DeepDrftPublic.Client.Clients; using Models.Common; using NetBlocks.Models; namespace DeepDrftPublic.Client.Services; /// /// WASM-side that delegates to /// (HTTP to the DeepDrft.API backend). Used on the WASM interactive render pass; /// the server prerender pass swaps in a direct, in-process implementation. /// public class TrackClientDataService : ITrackDataService { private readonly TrackClient _trackClient; public TrackClientDataService(TrackClient trackClient) { _trackClient = trackClient; } public Task>> GetPage( int pageNumber, int pageSize, string? sortColumn = null, bool sortDescending = false, string? searchText = null, string? album = null, string? genre = null, long? releaseId = null) => _trackClient.GetPage(pageNumber, pageSize, sortColumn, sortDescending, searchText, album, genre, releaseId); public Task>> GetAlbums() => _trackClient.GetAlbums(); public Task>> GetGenres() => _trackClient.GetGenres(); public Task> GetTrack(string trackId) => _trackClient.GetTrack(trackId); public Task> GetRandomTrack() => _trackClient.GetRandom(); }