append method

Future<void> append([
  1. F? filter
])

Implementation

Future<void> append([F? filter]) async {
  final f = filter ?? state.filter;

  emit(Data.loading(data: state.data, filter: f));
  try {
    final data = <T>[...state.data ?? [], ...await loader(f)];
    emit(
      data.isEmpty ? Data.empty(filter: f) : Data(data: data, filter: f),
    );
  } catch (e) {
    emit(Data.error(data: state.data, filter: state.filter, error: e));
    rethrow;
  }
}