Refactor user and theme management to use BLoC pattern; remove provider classes and integrate new services for user and group functionalities
This commit is contained in:
@@ -13,6 +13,7 @@ class TripBloc extends Bloc<TripEvent, TripState> {
|
||||
: _tripRepository = tripRepository,
|
||||
super(TripInitial()) {
|
||||
on<TripLoadRequested>(_onLoadRequested);
|
||||
on<_TripUpdated>(_onTripUpdated);
|
||||
on<TripCreateRequested>(_onCreateRequested);
|
||||
on<TripUpdateRequested>(_onUpdateRequested);
|
||||
on<TripDeleteRequested>(_onDeleteRequested);
|
||||
@@ -29,11 +30,18 @@ class TripBloc extends Bloc<TripEvent, TripState> {
|
||||
await _tripsSubscription?.cancel();
|
||||
|
||||
_tripsSubscription = _tripRepository.getUserTrips(event.userId).listen(
|
||||
(trips) => add(const _TripUpdated(trips: [])), // Sera géré par un événement interne
|
||||
(trips) => add(_TripUpdated(trips: trips)),
|
||||
onError: (error) => emit(TripError(message: error.toString())),
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _onTripUpdated(
|
||||
_TripUpdated event,
|
||||
Emitter<TripState> emit,
|
||||
) async {
|
||||
emit(TripLoaded(trips: event.trips));
|
||||
}
|
||||
|
||||
Future<void> _onCreateRequested(
|
||||
TripCreateRequested event,
|
||||
Emitter<TripState> emit,
|
||||
|
||||
Reference in New Issue
Block a user