getSubSet<T> function
Implementation
MockResponse<T> getSubSet<T>(
{required final Iterable<T> items, final int? page, final int? size, final String? sorting}) {
final pageFilter = page == null || page < defaultPage ? defaultPage : page;
final pageSizeFilter = size ?? defaultPageSize;
final start = pageFilter == 1 ? 0 : (pageFilter - 1) * pageSizeFilter;
var end = start + pageSizeFilter;
if (start > items.length) {
return MockResponse.empty(
pageBuilder: _createPageBuilder(
page: pageFilter, size: pageSizeFilter, items: [], allItems: items.toList(growable: false)));
}
if (end > items.length) {
end = items.length;
}
final returnItems = items.toList(growable: false).sublist(start, end);
final listBuilder = returnItems.toBuiltList().toBuilder();
final pageBuilder =
_createPageBuilder(page: pageFilter, size: pageSizeFilter, items: returnItems, allItems: items.toList());
return MockResponse<T>.data(listBuilder: listBuilder, pageBuilder: pageBuilder);
}