File tree Expand file tree Collapse file tree 3 files changed +35
-8
lines changed
demos/supabase-todolist-drift/lib Expand file tree Collapse file tree 3 files changed +35
-8
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ import 'package:logging/logging.dart';
88
99import 'navigation.dart' ;
1010import 'supabase.dart' ;
11+ import 'utils/provider_observer.dart' ;
1112
1213void main () async {
1314 Logger .root.level = Level .INFO ;
@@ -29,7 +30,10 @@ void main() async {
2930 WidgetsFlutterBinding .ensureInitialized ();
3031 await loadSupabase ();
3132
32- runApp (const ProviderScope (child: MyApp ()));
33+ runApp (const ProviderScope (
34+ observers: [LoggingProviderObserver ()],
35+ child: MyApp (),
36+ ));
3337}
3438
3539class MyApp extends HookConsumerWidget {
Original file line number Diff line number Diff line change @@ -46,14 +46,15 @@ final class SqlConsolePage extends HookConsumerWidget {
4646 ),
4747 ),
4848 ),
49- Expanded (
49+ if (rows case AsyncData (: final value))
50+ Expanded (
51+ child: SingleChildScrollView (
52+ scrollDirection: Axis .horizontal,
5053 child: SingleChildScrollView (
51- scrollDirection: Axis .horizontal,
52- child: SingleChildScrollView (
53- scrollDirection: Axis .vertical,
54- child: ResultSetTable (data: rows.value),
55- ),
56- ))
54+ scrollDirection: Axis .vertical,
55+ child: ResultSetTable (data: value),
56+ ),
57+ ))
5758 ],
5859 ),
5960 );
Original file line number Diff line number Diff line change 1+ import 'package:logging/logging.dart' ;
2+ import 'package:riverpod/riverpod.dart' ;
3+
4+ final class LoggingProviderObserver extends ProviderObserver {
5+ static final _log = Logger ('provider' );
6+
7+ const LoggingProviderObserver ();
8+
9+ @override
10+ void didUpdateProvider (ProviderBase <Object ?> provider, Object ? previousValue,
11+ Object ? newValue, ProviderContainer container) {
12+ if (newValue case AsyncError (: final error, : final stackTrace)) {
13+ _log.warning ('$provider emitted async error' , error, stackTrace);
14+ }
15+ }
16+
17+ @override
18+ void providerDidFail (ProviderBase <Object ?> provider, Object error,
19+ StackTrace stackTrace, ProviderContainer container) {
20+ _log.warning ('$provider threw exception' , error, stackTrace);
21+ }
22+ }
You can’t perform that action at this time.
0 commit comments