list method

Future<List<Issue>> list({
  1. IssueState? state,
  2. IssueOrderBy? orderBy,
  3. IssueSort? sort,
  4. String? milestone,
  5. List<String>? labels,
  6. int? page,
  7. int? perPage,
})

Implementation

Future<List<Issue>> list(
    {IssueState? state,
    IssueOrderBy? orderBy,
    IssueSort? sort,
    String? milestone,
    List<String>? labels,
    int? page,
    int? perPage}) async {
  final queryParameters = <String, dynamic>{};

  if (state != null) queryParameters['state'] = _enumToString(state);
  if (orderBy != null) queryParameters['order_by'] = _enumToString(orderBy);
  if (sort != null) queryParameters['sort'] = _enumToString(sort);
  if (milestone != null) queryParameters['milestone'] = milestone;
  if (labels != null) queryParameters['labels'] = labels.join(',');

  final uri = _project.buildUri(['issues'],
      queryParameters: queryParameters, page: page, perPage: perPage);

  final jsonList = _responseToList(await _gitLab.request(uri));

  return jsonList.map((json) => new Issue.fromJson(json)).toList();
}