public async Task <MaybeResult <IEnumerable <DLiveStreamItemDto>, StreamProviderError> > GetLiveStreams( int pageSize, int pageOffset, StreamSortOrder sortOrder) { var graphQuery = new { query = $"query {{ " + $"livestreams(input: {{ order: {sortOrder.GetAsString()} first: {pageSize} after: \"{pageOffset}\" }}) " + $"{{list {{ title watchingCount thumbnailUrl creator {{ username, displayname, avatar }}}} }} }}", }; var streams = await BuildRequest() .PostJsonAsync(graphQuery) .GetOrError <DLiveStreamDto>(); return(streams.Select(s => s.data.livestreams.list)); }
public static string GetAsString(this StreamSortOrder streamSortType) { return(streamSortType.ToString().ToUpper()); }