ItemListBloc<I extends ItemClassWithAccessor, T extends ItemSourceState<ItemClassWithAccessor> > class
Attaches to the provided _filterConditionsBloc
, _searchQueryCubit
,
and _sourceBloc
and uses supplied _searchProperties
in order to generate a list of items that should be rendered to the UI.
The active conditions from the supplied _filterConditionsBloc
are additive, so items matching any of the active conditions will be
returned. Once the source items have been filtered, the search query
will be applied to any remaining items to generate the final list state.
There should be no need to ever manually construct an ItemListBloc.
It should, instead, be retrieved from within the ListManager
in order to render your list UI however you see fit.
Constructors
-
ItemListBloc({required FilterConditionsBloc<
ItemSourceState< filterConditionsBloc, required SearchQueryCubit searchQueryCubit, required Bloc sourceBloc, List<ItemClassWithAccessor> >String> searchProperties = const []}) -
Attaches to the provided
_filterConditionsBloc
,_searchQueryCubit
, and_sourceBloc
and uses supplied_searchProperties
in order to generate a list of items that should be rendered to the UI.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the bloc is closed.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- state → ItemListState
-
The current state.
no setterinherited
-
stream
→ Stream<
ItemListState> -
The current stream of states.
no setterinherited
Methods
-
add(
_ItemListEvent event) → void -
Notifies the
Bloc
of a newevent
which triggers all correspondingEventHandler
instances.inherited -
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
error
which triggers onError with an optional StackTrace.inherited -
close(
) → Future< void> -
Closes the
event
andstate
Streams
. This method should be called when aBloc
is no longer needed. Once close is called,events
that are added will not be processed. In addition, if close is called whileevents
are still being processed, theBloc
will finish processing the pendingevents
. -
emit(
ItemListState state) → void -
emit is only for internal use and should never be called directly
outside of tests. The
Emitter
instance provided to eachEventHandler
should be used instead.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
on<
E extends Event> (EventHandler< E, ItemListState> handler, {EventTransformer<E> ? transformer}) → void -
Register event handler for an event of type
E
. There should only ever be one event handler per event typeE
.inherited -
onChange(
Change< ItemListState> change) → void -
Called whenever a
change
occurs with the givenchange
. Achange
occurs when a newstate
is emitted. onChange is called before thestate
of thecubit
is updated. onChange is a great spot to add logging/analytics for a specificcubit
.inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
error
occurs and notifiesBlocObserver.onError
.inherited -
onEvent(
_ItemListEvent event) → void -
Called whenever an
event
is added to theBloc
. A great spot to add logging/analytics at the individualBloc
level.inherited -
onTransition(
Transition< _ItemListEvent, ItemListState> transition) → void -
Called whenever a
transition
occurs with the giventransition
. Atransition
occurs when a newevent
is added and a new state isemitted
from a correspondingEventHandler
.inherited -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited