channels method
List channels the authenticated user belongs to.
Implementation
Future<PaginatedResult<FirestackChannel>> channels({
required int projectId,
int perPage = 20,
int page = 1,
}) async {
final response = await _client.get('channels', queryParams: {
'project_id': projectId.toString(),
'per_page': perPage.toString(),
'page': page.toString(),
});
final items = (response['data'] as List)
.map((e) => FirestackChannel.fromJson(e as Map<String, dynamic>))
.toList();
final meta = response['meta'] as Map<String, dynamic>? ?? {};
return PaginatedResult<FirestackChannel>(
data: items,
currentPage: meta['current_page'] as int? ?? page,
perPage: meta['per_page'] as int? ?? perPage,
total: meta['total'] as int? ?? items.length,
lastPage: meta['last_page'] as int? ?? 1,
);
}