fromJson method

  1. @override
PaginatedResult<T> fromJson(
  1. Map<String, dynamic> jsonData, {
  2. Map<String, dynamic>? filter,
  3. int? limit,
  4. GraphQLRequest<PaginatedResult<T>>? requestForNextResult,
})

Implementation

@override
PaginatedResult<T> fromJson(Map<String, dynamic> jsonData,
    {Map<String, dynamic>? filter,
    int? limit,
    GraphQLRequest<PaginatedResult<T>>? requestForNextResult}) {
  final itemsJson = jsonData['items'] as List?;

  if (itemsJson == null || itemsJson.isEmpty) {
    return PaginatedResult<T>(
        [], limit, null, filter, modelType, requestForNextResult);
  }

  final items = itemsJson
      .cast<Map?>()
      .map(
        // ignore: implicit_dynamic_method
        (e) => e != null ? modelType.fromJson(e.cast()) : null,
      )
      .toList();

  return PaginatedResult<T>(items, limit, jsonData['nextToken'] as String?,
      filter, modelType, requestForNextResult);
}