refresh method

Future<void> refresh(
  1. AbstractListRefreshEvent event,
  2. Emitter<S> emit
)

Implementation

Future<void> refresh(AbstractListRefreshEvent event, Emitter<S> emit) async {
  if (state is AbstractListFilterablePaginatedState) {
    (state as AbstractListFilterablePaginatedState).searchModel.reset();
  }

  await onBeforeRefresh(event, emit);

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