AppRouterDelegate<S extends MadNavigationState> class

A custom RouterDelegate implementation for handling navigation in a Flutter app.

This delegate manages the app's navigation stack and integrates with the Flutter navigation system. It works with MadNavigationService to handle route changes and state management.

Example usage:

@override
Widget build(BuildContext context) {
  return MaterialApp.router(
    routerDelegate: AppRouterDelegate<NavigationState>(
      navigatorKey: navigatorKey,
      navigationService: navigationService,
      routeMapper: routeMapper,
    )
  );
}
Inheritance
Mixed-in types

Constructors

AppRouterDelegate({required GlobalKey<NavigatorState> navigatorKey, required MadNavigationService navigationService, required MadRouteMapper routeMapper})
Creates a new AppRouterDelegate with the given parameters.

Properties

appState → S
Gets the current navigation state.
no setter
currentConfiguration → S
Called by the Router when it detects a route information may have changed as a result of rebuild.
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
hasListeners → bool
Whether any listeners are currently registered.
no setterinherited
The navigation service that manages the app's navigation state.
final
The key used for retrieving the current navigator.
final
routeMapper → MadRouteMapper
The route mapper that converts navigation routes to pages.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
build(BuildContext context) → Widget
Called by the Router to obtain the widget tree that represents the current state.
override
dispose() → void
Discards any resources used by the object.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
popRoute() → Future<bool>
Called by the Router when the Router.backButtonDispatcher reports that the operating system is requesting that the current route be popped.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
setInitialRoutePath(S configuration) → Future<void>
Called by the Router at startup with the structure that the RouteInformationParser obtained from parsing the initial route.
inherited
setNewRoutePath(S path) → Future<void>
Called by the Router when the Router.routeInformationProvider reports that a new route has been pushed to the application by the operating system.
override
setRestoredRoutePath(S configuration) → Future<void>
Called by the Router during state restoration.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited