File tree Expand file tree Collapse file tree 2 files changed +21
-6
lines changed Expand file tree Collapse file tree 2 files changed +21
-6
lines changed Original file line number Diff line number Diff line change @@ -115,18 +115,32 @@ abstract class RoutesManager {
115
115
}
116
116
}
117
117
118
+ /// Automatically dispose all listeners when no longer needed
119
+ void disposeAll () {
120
+ for (final refreshable in refreshables) {
121
+ refreshable.dispose ();
122
+ }
123
+ }
124
+
118
125
List <ChangeNotifier > get refreshables =>
119
126
[isLoading, authState, appFlowNotifier];
120
127
}
121
128
122
129
/// Provider function to create routes manager provider
123
130
Provider <T > routesManagerProvider <T extends RoutesManager >(
124
131
T Function (Ref ) create) {
125
- return Provider <T >((ref) => create (ref));
126
- }
132
+ return Provider <T >((ref) {
133
+ final manager = create (ref);
127
134
135
+ ref.onDispose (() {
136
+ manager.disposeAll ();
137
+ });
128
138
129
- /// Provider to handle loading of initial data
139
+ return manager;
140
+ });
141
+ }
142
+
143
+ /// Provider to load initial data before navigation
130
144
final initialLoadProvider = FutureProvider <bool >((ref) async {
131
145
final routesManager = ref.watch (activeRoutesManagerProvider);
132
146
@@ -170,4 +184,3 @@ final activeRoutesManagerProvider = Provider<RoutesManager>((ref) {
170
184
final routesManagerProviders = Provider <List <RoutesManager >>((ref) {
171
185
return [];
172
186
});
173
-
Original file line number Diff line number Diff line change 1
1
name : pod_router
2
2
description : " A Flutter navigation package that combines go_router with Riverpod for clean, testable routing with authentication support."
3
3
version : 0.0.1+4
4
- homepage : https://github.com/1farz1/pod_router
5
- repository : https://github.com/1farz1/pod_router
4
+ # homepage: https://github.com/1farz1/pod_router
5
+ repository : https://github.com/1farz1/pod_router/tree/main
6
+ issue_tracker : https://github.com/1farz1/pod_router/issues
7
+ documentation : https://github.com/1farz1/pod_router/blob/main/README.md
6
8
# issue_tracker: https://github.com/yourusername/pod_router/issues
7
9
# documentation: https://github.com/yourusername/pod_router#readme
8
10
license : MIT
You can’t perform that action at this time.
0 commit comments