FastThemeBloc class

Manages the theme related logic and state for the application.

Inheritance

Constructors

FastThemeBloc({FastThemeBlocState? initialState})
Factory constructor to ensure that only a single instance of FastThemeBloc is used throughout the application.
factory

Properties

addEvent → dynamic Function(BlocEvent)
Notifies the BloC of a new event which triggers mapEventToState. If dispose has already been called, any calls to dispatchEvent will be ignored and will not result in any state changes.
no setterinherited
analyticsEventController → BehaviorSubject<BlocAnalyticsEvent>
finalinherited
blocState ↔ FastThemeBlocState
The current BloC's state.
getter/setter pairinherited
cancelableOperations ↔ List<CancelableOperation>
The list of cancelable operations.
getter/setter pairinherited
canInitialize → bool
Whether the BloC can be initialized.
no setterinherited
closed ↔ bool
Whether the BloC is closed.
getter/setter pairinherited
currentState → FastThemeBlocState
The current BloC's state.
no setterinherited
dispatchState → dynamic Function(FastThemeBlocState)
Notifies the BloC of a new state which triggers onData.
no setterinherited
enableForceBuildEvents → bool
Enable force build events, if you want to force the rendering of the bloc builder. Indicates if the event-state history should be saved.
finalinherited
errorController → PublishSubject<BlocError>
The error controller.
finalinherited
eventStateHistory → Map<FastThemeBlocEvent, List<String>>
The history map that stores the event-state history.
finalinherited
eventStateHistorySize → int
The maximum size of the history. Set it to null to disable the limit.
finalinherited
eventSubscriptions ↔ StreamSubscription<FastThemeBlocState>
The event subscriptions.
getter/setter pairinherited
externalEventController → PublishSubject<FastThemeBlocEvent>
The external event controller which is used to control the event stream.
finalinherited
hashCode → int
The hash code for this object.
no setterinherited
initialState → FastThemeBlocState?
The initial state of the BloC.
finalinherited
initialStateBuilder → BlocStateBuilder<FastThemeBlocState>?
The initial state BloC builder.
finalinherited
internalEventController → PublishSubject<BlocEvent>
The internal event controller which is used to control the event stream.
finalinherited
isClosed → bool
Whether the BloC is closed for dispatching more events.
no setterinherited
isInitialized ↔ bool
Whether the BloC is initializing.
getter/setter pairinherited
isInitializing ↔ bool
Whether the BloC is initializing.
getter/setter pairinherited
onAnalyticsEvents → Stream<BlocAnalyticsEvent>
no setterinherited
onData → Stream<FastThemeBlocState>
Called whenever the BloC's state is updated.
no setterinherited
onError → Stream<BlocError>
Called whenever the BloC's state is updated.
no setterinherited
onEvent → Stream<FastThemeBlocEvent>
Called whenever an event is added to the BloC.
no setterinherited
publishers → List<PublishSubject>
The list of publishers.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
stateController → BehaviorSubject<FastThemeBlocState>
The state controller.
finalinherited
subxList → SubxList
finalinherited
subxMap → SubxMap
finalinherited

Methods

canClose() → bool
Indicates if the Bloc can be closed.
override
close() → void
Closes the BloC. This method should be called when the BloC is no longer needed.
inherited
debounce(BlocDebounceCallback<BlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocDebounceCallback<BlocEvent>
Creates a debounced function that only invokes function after a delay.
inherited
debounceEvent(BlocEventCallback<FastThemeBlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocEventCallback<FastThemeBlocEvent>
Debounces an event. The function will not be invoked until delay.
inherited
getEventForState(FastThemeBlocState state) → FastThemeBlocEvent?
Returns the event related to the given state.
inherited
getInitialState() → FastThemeBlocState
Tries to retreive the initial BloC's state.
inherited
handleDarkEvent() → Stream<FastThemeBlocState>
Handles the event to set the dark theme.
handleInitEvent(ThemeMode? mode) → Stream<FastThemeBlocState>
Handles the initialization event with an optional mode.
handleInitializedEvent() → Stream<FastThemeBlocState>
Handles the event after initialization is done.
handleInternalError(dynamic error, StackTrace stackTrace) → void
Handles internal errors.
inherited
handleLightEvent() → Stream<FastThemeBlocState>
Handles the event to set the light theme.
handleSystemEvent() → Stream<FastThemeBlocState>
Handles the event to set the system theme.
handleThemeChangeEvent(FastThemeBlocEventType? type) → Stream<FastThemeBlocState>
Handles the theme change events.
initState() → FastThemeBlocState
Optional callback method to initialize the BloC's state.
inherited
mapEventToState(FastThemeBlocEvent event) → Stream<FastThemeBlocState>
Maps incoming events to output states.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onPlatformBrightnessChanged() → void
Callback for platform brightness change events.
performCancellableAsyncOperation<T>(Future<T> opreation) → Future<T?>
Performs an asynchronous operation and cancels it if the BloC is closed.
inherited
resetBloc() → void
inherited
sampleEvent(BlocEventCallback<FastThemeBlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocEventCallback<FastThemeBlocEvent>
inherited
setState(FastThemeBlocState nextState) → void
Set the BloC state.
inherited
shouldProcessEventInOrder() → bool
Determines whether a bloc ensures all events are processed in the order in which they are received.
inherited
throttle(BlocThrottleCallback<BlocEvent> function, {Duration duration = const Duration(milliseconds: 300)}) → BlocThrottleCallback<BlocEvent>
Creates a throttled function that only invokes function at most once per every duration.
inherited
throttleEvent(BlocEventCallback<FastThemeBlocEvent> function, {Duration duration = const Duration(milliseconds: 300)}) → BlocEventCallback<FastThemeBlocEvent>
Throttles an event. The event will be ignored if it is dispatched within the specified duration. The last event will be dispatched after the duration has passed.
inherited
toString() → String
A string representation of this object.
inherited
transformError(dynamic error, StackTrace stackTrace) → BlocError?
Transforms the error before it is emitted.
inherited
updateEventStateHistory(FastThemeBlocEvent event, FastThemeBlocState nextState) → void
Updates the event-state history. The event-state history is used to determine the event related to a given state.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Properties

hasBeenInstantiated → bool
Keeps track if a singleton instance has been created.
no setter
instance → FastThemeBloc
no setter

Static Methods

reset() → void

Constants

debugLabel → const String