welcome_bloc.dart 833 B

123456789101112131415161718192021222324252627
  1. import 'package:app_flowy/welcome/domain/auth_state.dart';
  2. import 'package:app_flowy/welcome/domain/deps.dart';
  3. import 'package:flutter_bloc/flutter_bloc.dart';
  4. import 'package:freezed_annotation/freezed_annotation.dart';
  5. part 'welcome_event.dart';
  6. part 'welcome_state.dart';
  7. part 'welcome_bloc.freezed.dart';
  8. class WelcomeBloc extends Bloc<WelcomeEvent, WelcomeState> {
  9. final IWelcomeAuth authCheck;
  10. WelcomeBloc(this.authCheck) : super(WelcomeState.initial());
  11. @override
  12. Stream<WelcomeState> mapEventToState(WelcomeEvent event) async* {
  13. yield* event.map(
  14. check: (val) async* {
  15. add(const WelcomeEvent.authCheck());
  16. yield state;
  17. },
  18. authCheck: (val) async* {
  19. final authState = await authCheck.getAuthState();
  20. yield state.copyWith(auth: authState);
  21. },
  22. );
  23. }
  24. }