SmartPaginationController<T>.of constructor

SmartPaginationController<T>.of({
  1. required PaginationRequest request,
  2. required PaginationProvider<T> provider,
  3. ListBuilder<T>? listBuilder,
  4. OnInsertionCallback<T>? onInsertionCallback,
  5. VoidCallback? onClear,
  6. bool isPublic = false,
  7. double estimatedItemHeight = 60,
  8. Duration animationDuration = const Duration(milliseconds: 500),
  9. Curve animationCurve = Curves.easeInOut,
  10. int maxRetries = 10,
  11. List<IPaginationRefreshedChangeListener>? refreshListeners,
  12. List<IPaginationFilterChangeListener<T>>? filterListeners,
  13. List<IPaginationOrderChangeListener<T>>? orderListeners,
})

Implementation

factory SmartPaginationController.of({
  required PaginationRequest request,
  required PaginationProvider<T> provider,
  ListBuilder<T>? listBuilder,
  OnInsertionCallback<T>? onInsertionCallback,
  VoidCallback? onClear,
  bool isPublic = false,
  double estimatedItemHeight = 60,
  Duration animationDuration = const Duration(milliseconds: 500),
  Curve animationCurve = Curves.easeInOut,
  int maxRetries = 10,
  List<IPaginationRefreshedChangeListener>? refreshListeners,
  List<IPaginationFilterChangeListener<T>>? filterListeners,
  List<IPaginationOrderChangeListener<T>>? orderListeners,
}) {
  final cubit = SmartPaginationCubit<T>(
    request: request,
    provider: provider,
    listBuilder: listBuilder,
    onInsertionCallback: onInsertionCallback,
    onClear: onClear,
  );

  return SmartPaginationController<T>(
    cubit: cubit,
    isPublic: isPublic,
    estimatedItemHeight: estimatedItemHeight,
    animationDuration: animationDuration,
    animationCurve: animationCurve,
    maxRetries: maxRetries,
    refreshListeners: refreshListeners,
    filterListeners: filterListeners,
    orderListeners: orderListeners,
  );
}