BlocGenericWidget<T>.refreshable constructor

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

Implementation

factory BlocGenericWidget.refreshable({
  required void Function() onRefresh,
  void Function()? getNextPage,
  required Widget Function(
    BuildContext context,
    List<T> data,
    void Function()? getNextPage,
  )
      loadedBuilder,
  required Widget Function(
    BuildContext context,
    List<T> data,
  )
      fullLoadedBuilder,
  required Widget Function(
    BuildContext context,
  )
      loadingBuilder,
  required Widget Function(
    BuildContext context,
    String exception,
  )
      errorBuilder,
  GenericBloc<T>? bloc,
}) =>
    BlocGenericWidget<T>(
      bloc: bloc,
      errorBuilder: (context, exception, onRefresh) => RefreshIndicator(
        onRefresh: onRefresh,
        child: errorBuilder(
          context,
          exception,
        ),
      ),
      fullLoadedBuilder: (context, data, onRefresh) => RefreshIndicator(
        onRefresh: onRefresh,
        child: fullLoadedBuilder(
          context,
          data,
        ),
      ),
      loadedBuilder: (context, data, onRefresh, getNextPage) =>
          RefreshIndicator(
        onRefresh: onRefresh,
        child: loadedBuilder(
          context,
          data,
          getNextPage,
        ),
      ),
      loadingBuilder: loadingBuilder,
      onRefresh: onRefresh,
      getNextPage: getNextPage,
    );