flutter-freaccess-hub/lib/features/home/presentation/blocs/home_bloc.dart

44 lines
1.2 KiB
Dart

import 'dart:async';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/features/local/index.dart';
import 'package:hub/features/storage/index.dart';
import 'index.dart';
class HomeBloc extends Bloc<HomeEvent, HomeState> {
late StreamSubscription<bool> _completer;
HomeBloc() : super(HomeState()) {
on<HomeEvent>(_onHomeEvent);
_completer = LocalsRepositoryImpl.license.stream.listen((v) {
add(HomeEvent());
});
}
Future<void> _onHomeEvent(HomeEvent event, Emitter<HomeState> emit) async {
final devUUID =
(await StorageRepositoryImpl().get(ProfileStorageKey.devUUID.key)) ??
'';
final userUUID =
(await StorageRepositoryImpl().get(ProfileStorageKey.userUUID.key)) ??
'';
final cliUUID =
(await StorageRepositoryImpl().get(ProfileStorageKey.clientUUID.key)) ??
'';
final userName =
(await StorageRepositoryImpl().get(ProfileStorageKey.userName.key)) ??
'';
final userEmail =
(await StorageRepositoryImpl().get(SecureStorageKey.email.value)) ?? '';
emit(state.copyWith(
devUUID: devUUID,
userUUID: userUUID,
cliUUID: cliUUID,
userName: userName,
userEmail: userEmail,
));
}
}