handleInitEvent method

Implementation

Stream<FastAppLoaderBlocState> handleInitEvent(
  FastAppLoaderBlocEventPayload eventPayload,
) async* {
  if (canInitialize) {
    _logger.debug('Initializing...');
    isInitializing = true;

    final errorReporter = eventPayload.errorReporter;
    final jobs = eventPayload.jobs;

    yield currentState.copyWith(
      isLoading: isInitializing,
      isLoaded: false,
      progress: 0,
    );

    if (jobs != null && jobs.isNotEmpty) {
      yield* _runJobs(
        eventPayload.context!,
        jobs,
        errorReporter: errorReporter,
      );
    } else {
      addEvent(const FastAppLoaderBlocEvent.initialized());
    }
  }
}