getContinuations2025 function

Future<List> getContinuations2025(
  1. JsonMap results,
  2. int? limit,
  3. RequestFuncBodyType requestFunc,
  4. ParseFuncType parseFunc,
)

Get the continuations in the format of 2025.

Implementation

Future<List> getContinuations2025(
  JsonMap results,
  int? limit,
  RequestFuncBodyType requestFunc,
  ParseFuncType parseFunc,
) async {
  final List items = [];
  String? continuationToken = getContinuationToken(results['contents'] as List);

  while (continuationToken != null && (limit == null || items.length < limit)) {
    final JsonMap response = await requestFunc({
      'continuation': continuationToken,
    });
    final continuationItems = nav(
      response,
      CONTINUATION_ITEMS,
      nullIfAbsent: true,
    );
    if (continuationItems == null) break;

    final contents = await parseFunc(continuationItems as List<JsonMap>);
    if (contents.isEmpty) break;

    items.addAll(contents);
    continuationToken = getContinuationToken(continuationItems);
  }

  return items;
}