fetchReactions method

Future<List<User>> fetchReactions(
  1. Snowflake id,
  2. ReactionBuilder emoji, {
  3. Snowflake? after,
  4. int? limit,
})

Get a list of users that reacted with a given emoji on a message.

Implementation

Future<List<User>> fetchReactions(Snowflake id, ReactionBuilder emoji, {Snowflake? after, int? limit}) async {
  final route = HttpRoute()
    ..channels(id: channelId.toString())
    ..messages(id: id.toString())
    ..reactions(emoji: emoji.build());
  final request = BasicRequest(
    route,
    queryParameters: {
      if (after != null) 'after': after.toString(),
      if (limit != null) 'limit': limit.toString(),
    },
  );

  final response = await client.httpHandler.executeSafe(request);
  final users = parseMany(response.jsonBody as List, client.users.parse);

  users.forEach(client.updateCacheWith);
  return users;
}