import 'package:flutter/foundation.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
class BlocLoggerObserver extends BlocObserver {
@override
void onCreate(BlocBase bloc) {
super.onCreate(bloc);
_log("bloc created: $bloc");
}
@override
void onClose(BlocBase bloc) {
super.onClose(bloc);
_log("bloc closed: $bloc");
}
@override
void onChange(BlocBase bloc, Change change) {
super.onChange(bloc, change);
_log("bloc changed: $bloc, $change");
}
@override
void onError(BlocBase bloc, Object error, StackTrace stackTrace) {
super.onError(bloc, error, stackTrace);
_log("bloc error: $bloc, $error, $stackTrace");
}
@override
void onEvent(Bloc bloc, Object? event) {
super.onEvent(bloc, event);
_log("bloc event: $bloc, $event");
}
void _log(message) {
if (kDebugMode) {
print(message);
}
}
}