StartupCubit class
Drives the app startup sequence and exposes progress to the splash screen.
Delegates task execution to StartupOrchestrator and translates task progress and terminal outcomes into StartupState emissions. The splash screen observes this cubit to display progress and to detect jailbreak or failure states.
The GoRouter guard also observes this cubit: navigation to /home or
/login is held until StartupStatus.completed is reached.
- Inheritance
-
- Object
- BlocBase<
StartupState> - Cubit<
StartupState> - StartupCubit
Constructors
- StartupCubit({required StartupOrchestrator orchestrator, required AppLogger logger, required Duration progressAnimationDuration})
-
Creates a cubit that drives
orchestratorand waitsprogressAnimationDurationafter tasks complete before emitting StartupStatus.completed.
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 → StartupState
-
The current state.
no setterinherited
-
stream
→ Stream<
StartupState> -
The current stream of states.
no setterinherited
Methods
-
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
errorwhich triggers onError with an optional StackTrace.inherited -
close(
) → Future< void> -
Closes the instance.
This method should be called when the instance is no longer needed.
Once close is called, the instance can no longer be used.
inherited
-
emit(
StartupState state) → void -
Updates the
stateto the providedstate. emit does nothing if thestatebeing emitted is equal to the currentstate.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onChange(
Change< StartupState> change) → void -
Called whenever a
changeoccurs with the givenchange. Achangeoccurs when a newstateis emitted. onChange is called before thestateof thecubitis updated. onChange is a great spot to add logging/analytics for a specificcubit.inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
erroroccurs and notifies BlocObserver.onError.inherited -
start(
) → Future< void> - Begins the startup sequence.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited