loadMore method

Future<void> loadMore(
  1. AbstractListLoadMoreEvent event,
  2. Emitter<S> emit
)

Implementation

Future<void> loadMore(
    AbstractListLoadMoreEvent event, Emitter<S> emit) async {
  if (state is AbstractListFilterablePaginatedState) {
    (state as AbstractListFilterablePaginatedState).searchModel.increment();

    await onBeforeLoadMore(event, emit);

    try {
      updateState(
          await convertResultToStateAfterLoadMore(await resolveData()), emit);
    } catch (e) {
      await for (final result in resolveStreamData()) {
        updateState(await convertResultToStateAfterLoadMore(result), emit);
        await onAfterLoadMore(event, emit, result);
      }
    }
  }
}