Files
flutter-samples/chatty/lib/ui/sign_in/sign_in_cubit.dart
T
bd6bb66279 Stream Chatty added as example (#21)
* app updated

* readme updated

* rename base folder

* update chatty's readme

Co-authored-by: Neevash Ramdial <[email protected]>
2021-03-10 14:53:20 -04:00

31 lines
702 B
Dart

import 'package:stream_chatter/domain/exceptions/auth_exception.dart';
import 'package:stream_chatter/domain/usecases/login_usecase.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
enum SignInState {
none,
existing_user,
}
class SignInCubit extends Cubit<SignInState> {
SignInCubit(
this._loginUseCase,
) : super(SignInState.none);
final LoginUseCase _loginUseCase;
void signIn() async {
try {
final result = await _loginUseCase.validateLogin();
if (result) {
emit(SignInState.existing_user);
}
} catch (ex) {
final result = await _loginUseCase.signIn();
if (result != null) {
emit(SignInState.none);
}
}
}
}