getChannelStateByCid method

Future<ChannelState> getChannelStateByCid(
  1. String cid, {
  2. PaginationParams? messagePagination,
  3. PaginationParams? pinnedMessagePagination,
})

Get ChannelState data by providing channel cid

Implementation

Future<ChannelState> getChannelStateByCid(
  String cid, {
  PaginationParams? messagePagination,
  PaginationParams? pinnedMessagePagination,
}) async {
  final data = await Future.wait([
    getMembersByCid(cid),
    getReadsByCid(cid),
    getChannelByCid(cid),
    getMessagesByCid(cid, messagePagination: messagePagination),
    getPinnedMessagesByCid(cid, messagePagination: pinnedMessagePagination),
  ]);
  return ChannelState(
    // ignore: cast_nullable_to_non_nullable
    members: data[0] as List<Member>,
    // ignore: cast_nullable_to_non_nullable
    read: data[1] as List<Read>,
    channel: data[2] as ChannelModel?,
    // ignore: cast_nullable_to_non_nullable
    messages: data[3] as List<Message>,
    // ignore: cast_nullable_to_non_nullable
    pinnedMessages: data[4] as List<Message>,
  );
}