init method

  1. @override
  2. @protected
Future<PaginatedViewState<T, V>> init()
override

Implementation

@override
@protected
Future<PaginatedViewState<T, V>> init() async {
  pageFetchJob.reset();

  final page = await pageFetcher(initialOffset);

  final nextOffset = page.nextOffset;

  if (verboseLogs) {
    if (kDebugMode) {
      Logger.log(
          'currentOffset: $initialOffset isLastPage: ${page.isLastPage} nextOffset: ${page.nextOffset} items: ${page.items.length}');
    }
  }

  return PaginatedViewState(
    page.items
        .map(
          (e) => PageListItem<T>(
              data: e.data, height: e.height, isSliver: e.isSliver),
        )
        .toList(growable: false)
        .splitIntoChunks(),
    nextOffset: page.isLastPage ? null : nextOffset,
  );
}