BlocGenericWidget<T>.withPagination constructor

BlocGenericWidget<T>.withPagination({
  1. void onRefresh()?,
  2. required void getNextPage(),
  3. required Widget loadedBuilder(
    1. BuildContext context,
    2. List<T> data,
    3. Future<void> onRefresh()?,
    4. ScrollController scrollController,
    ),
  4. required Widget fullLoadedBuilder(
    1. BuildContext context,
    2. List<T> data,
    3. Future<void> onRefresh()?
    ),
  5. required Widget loadingBuilder(
    1. BuildContext context
    ),
  6. required Widget errorBuilder(
    1. BuildContext context,
    2. String exception,
    3. Future<void> onRefresh()?
    ),
  7. GenericBloc<T>? bloc,
})

Implementation

factory BlocGenericWidget.withPagination({
  void Function()? onRefresh,
  required void Function() getNextPage,
  required Widget Function(
    BuildContext context,
    List<T> data,
    Future<void> Function()? onRefresh,
    ScrollController scrollController,
  )
      loadedBuilder,
  required Widget Function(
    BuildContext context,
    List<T> data,
    Future<void> Function()? onRefresh,
  )
      fullLoadedBuilder,
  required Widget Function(
    BuildContext context,
  )
      loadingBuilder,
  required Widget Function(
    BuildContext context,
    String exception,
    Future<void> Function()? onRefresh,
  )
      errorBuilder,
  GenericBloc<T>? bloc,
}) =>
    BlocGenericWidget<T>(
      bloc: bloc,
      onRefresh: onRefresh,
      errorBuilder: errorBuilder,
      fullLoadedBuilder: fullLoadedBuilder,
      loadingBuilder: loadingBuilder,
      loadedBuilder: (context, data, onRefresh, _) =>
          _GenericListBlocScrollPaginatedWidget(
        onScrollEnd: getNextPage,
        builder: (context, scrollController) => loadedBuilder(
          context,
          data,
          onRefresh,
          scrollController,
        ),
      ),
    );