cache_bloc.dart
772 Bytes
import 'package:flutter/cupertino.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:wow_english/models/user_entity.dart';
part 'cache_event.dart';
part 'cache_state.dart';
class CacheBloc extends Bloc<CacheEvent, CacheState> {
UserEntity? _userEntity;
UserEntity? get userEntity => _userEntity;
CacheBloc() : super(CacheInitial()) {
on<UserInfoChangeEvent>(_userInfoChange);
on<UserInfoClearEvent>(_userInfoClear);
}
void _userInfoChange(UserInfoChangeEvent event,Emitter<CacheState> emitter) async {
_userEntity = event.userEntity;
emitter(UserInfoChangeState());
}
void _userInfoClear(UserInfoClearEvent event,Emitter<CacheState> emitter) async {
_userEntity = null;
emitter(UserInfoClearState());
}
}