AuthRoute constructor
AuthRoute({
- required AuthenticationStateNotifier authenticationStateNotifier,
- required FeatureNavigationConfiguration defaultUnauthorizedFeature,
- required String path,
- String? name,
- Widget builder()?,
- Page pageBuilder()?,
- ExitCallback? onExit,
- List<
RouteBase> routes = const <RouteBase>[],
Implementation
AuthRoute({
required AuthenticationStateNotifier authenticationStateNotifier,
required FeatureNavigationConfiguration defaultUnauthorizedFeature,
required super.path,
super.name,
Widget Function(BuildContext, GoRouterState)? builder,
Page<dynamic> Function(BuildContext, GoRouterState)? pageBuilder,
super.parentNavigatorKey,
super.onExit,
super.routes,
}) : super(
pageBuilder:
pageBuilder ??
(builder != null
? (context, state) => NoTransitionPage<void>(key: state.pageKey, child: builder(context, state))
: null),
redirect: (context, state) async {
final isAuthenticated = await authenticationStateNotifier.isAuthenticated;
if (!isAuthenticated) {
return defaultUnauthorizedFeature.defaultLevel2Path;
}
return null;
},
);