loadNext method Null safety

  1. @override
Future<List<User>> loadNext()
override

Load next items asynchronously

Implementation

@override
Future<List<User>> loadNext() async {
  if (loading) throw QueryInProgressError();
  if (!hasNext) return [];

  loading = true;

  final sdk = SendbirdSdk().getInternal();
  final res = await sdk.api.send<UserListQueryResponse>(
    GroupChannelMemberListRequest(
      channelUrl: channelUrl,
      token: token,
      limit: limit,
      nicknameStartsWith: nicknameStartsWith,
      operatorFilter: operatorFilter,
      mutedMemberFilter: mutedMemberFilter,
      memberStateFilter: memberStateFilter,
      order: order,
    ),
  );

  loading = false;
  token = res.next;
  hasNext = res.next != '';
  return res.users;
}