zenrouter_core library

Classes

ContinueRedirect<T extends RouteTarget>
Result indicating the next rule should be processed.
CoordinatorCore<T extends RouteUri>
The central hub for navigation state and operations in ZenRouter.
Delete<T>
Represents deleting an element at a specific index.
DiffOp<T>
Represents a diff operation between two lists.
Insert<T>
Represents inserting a new element at a specific index.
Keep<T>
Represents keeping an element at a specific index (no change).
RedirectResult<T extends RouteTarget>
Result of a redirect rule, determining the next action in the chain.
RedirectRule<T extends RouteTarget>
Base class for composable redirect logic.
RedirectTo<T extends RouteTarget>
Result indicating navigation to a different route.
RouteModule<T extends RouteUri>
Base class for route modules that handle a subset of application routes.
RouteTarget
The base class for all navigation destinations in the application.
RouteUri
Abstract base class for routes with URI representation.
StackPath<T extends RouteTarget>
A container managing a stack of RouteTargets for navigation.
StopRedirect<T extends RouteTarget>
Result indicating navigation should be cancelled.

Enums

DeeplinkStrategy
Strategy that determines how CoordinatorCore handles deep links.

Mixins

CoordinatorModular<T extends RouteUri>
Mixin that enables modular route management by delegating to multiple modules.
Mixin for routes that specify deep link handling behavior.
RouteGuard
Mixin for routes that can intercept and block pop operations.
RouteIdentity<T>
Mixin that provides route identification capability.
RouteLayoutChild
Mixin for routes that belong to a parent layout.
RouteLayoutParent<T extends RouteTarget>
Mixin for routes that act as layout parents (shell routes).
RouteRedirect<T extends RouteTarget>
Mixin that allows routes to redirect to different destinations.
RouteRedirectRule<T extends RouteTarget>
Mixin for routes that use a list of redirect rules.
StackMutatable<T extends RouteTarget>
Mixin for stack paths that support mutable navigation operations.
StackNavigatable<T extends RouteTarget>
Mixin for stack paths that support browser history navigation.

Extension Types

PathKey
A type-safe identifier for StackPath types.

Functions

applyDiff<T extends RouteTarget>(StackMutatable<T> path, List<DiffOp<T>> operations) → void
Apply diff operations to a NavigationPath.
myersDiff<T>(List<T> oldList, List<T> newList, {bool equals(T a, T b)?}) List<DiffOp<T>>
Myers diff algorithm implementation.

Typedefs

RouteLayoutParentConstructor<T extends RouteTarget> = RouteLayoutParent<T>? Function(Object key)
Function signature for creating RouteLayoutParent instances.