43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Dart
		
	
	
	
	
	
import 'package:flutter/foundation.dart';
 | 
						|
import 'package:hooks_riverpod/hooks_riverpod.dart';
 | 
						|
 | 
						|
/// A utility to observe Riverpod providers.
 | 
						|
class AppProviderObserver extends ProviderObserver {
 | 
						|
  @override
 | 
						|
  void didAddProvider(
 | 
						|
    ProviderBase<Object?> provider,
 | 
						|
    Object? value,
 | 
						|
    ProviderContainer container,
 | 
						|
  ) {
 | 
						|
    debugPrint('Provider $provider was initialized with $value');
 | 
						|
  }
 | 
						|
 | 
						|
  @override
 | 
						|
  void didDisposeProvider(
 | 
						|
    ProviderBase<Object?> provider,
 | 
						|
    ProviderContainer container,
 | 
						|
  ) {
 | 
						|
    debugPrint('Provider $provider was disposed');
 | 
						|
  }
 | 
						|
 | 
						|
  @override
 | 
						|
  void didUpdateProvider(
 | 
						|
    ProviderBase<Object?> provider,
 | 
						|
    Object? previousValue,
 | 
						|
    Object? newValue,
 | 
						|
    ProviderContainer container,
 | 
						|
  ) {
 | 
						|
    debugPrint('Provider $provider updated from $previousValue to $newValue');
 | 
						|
  }
 | 
						|
 | 
						|
  @override
 | 
						|
  void providerDidFail(
 | 
						|
    ProviderBase<Object?> provider,
 | 
						|
    Object error,
 | 
						|
    StackTrace stackTrace,
 | 
						|
    ProviderContainer container,
 | 
						|
  ) {
 | 
						|
    debugPrint('Provider $provider threw $error at $stackTrace');
 | 
						|
  }
 | 
						|
}
 |