getGroupMembers method

Future<UserCommunityRelationshipList> getGroupMembers(
  1. int pageNumber,
  2. String? communityId,
  3. bool isAdmin
)

Implementation

Future<UserCommunityRelationshipList> getGroupMembers(final int pageNumber,
    final String? communityId, final bool isAdmin) async {
  try {
    /* final client = Sigv4Client(
      accessKey: ApiConfig.secretKey,
      keyId: ApiConfig.accessKey,
      region: ApiConfig.region,
      serviceName: ApiConfig.service,
    );*/

    const pageSize = 25;
    var query = {
      "page": pageNumber.toString(),
      "size": pageSize.toString(),
      "communityId": communityId,
      "expandUser": true,
      "fieldNameToInclude": "user.media.proImg",
      "keyMembers": true
    };
    if (isAdmin) {
      query = {
        "page": pageNumber.toString(),
        "size": pageSize.toString(),
        "communityId": communityId,
        "expandUser": true,
        "fieldNameToInclude": "user.media.proImg",
      };
    }

    /*  final url = Uri.parse(ApiConfig.appInfoPath);
    final request = client.request(
        "https://api-sg.collabdeen.com/post-api/posts",
        query: query);

    request.headers.addAll(<String, String>{
      "x-api-key": ApiConfig.apiKey,
      "cdauthtoken": "Bearer ${ApiConfig.idToken}"
    });
    final value = await http.get(request.url, headers: request.headers);*/
    final SharedPreferences prefs = await _prefs;
    final String? userId = prefs.getString(ApiConfig.kcUserId); // To Do
    final String? apiKey = prefs.getString(ApiConfig.kcAPIKey);
    // final request = client.request(ApiConfig.postsPath, query: query);

    /*  request.headers.addAll(<String, String>{
      "x-api-key": apiKey!,
      "content-type": "application/json",
      "kcuserid": userId!
    });
    final value = await http.get(request.url, headers: request.headers);*/

    final Dio dio = Dio();
    final value = await dio.get(
      ApiConfig.kcGetMembershipPath,
      options: Options(
        headers: {
          "x-api-key": apiKey,
          "content-type": "application/json",
          "kcuserid": userId
        },
      ),
      queryParameters: query,
    );

    final jsonData = value.data;
    final UserCommunityRelationshipList membership =
    UserCommunityRelationshipList.fromJson(
        jsonData as Map<String, dynamic>);

    return membership;
    // ignore: avoid_dynamic_calls
  } catch (error) {
    rethrow;
  }
}