riverpod_navigator_core library

Classes

AsyncHolder<T>
for async navigation: holds async opening or replacing result
Defer2NextTick
helper class that solves two problems:
IPathParser
PathParser
Path parser
RestorePath
for nested navigation: holds navigator initPath
RNavigatorCore
Helper singleton class for navigating to TypedPath
RRouteCore<T extends TypedSegment>
meta infos for given TypedSegment
RRouter
rroute's holder
TypedSegment
Ancestor for typed segments.

Mixins

AsyncSegment<T>

Extensions

UrlParsEx on UrlPars
helper for typed-segment <=> string-segment conversion

Properties

intendedPathProvider → StateProvider<TypedPath>
intended TypedPath provider
final
isNavigatingProvider → StateProvider<int>
isNavigatingProvider: navigation is running iff ref.read(isNavigatingProvider) > 0
final
navigationStackProvider
final
provider for app specific RNavigatorCore
final

Functions

map2Segment(UrlPars pars, String urlName) TypedSegment
path2String(TypedPath typedPath) String
riverpodNavigatorOverrides(TypedPath initPath, RNavigatorCore createNavigator(Ref<Object?> ref), {String? initPathStr, RestorePath? restorePath, List<AlwaysAliveProviderListenable> dependsOn = const []}) List<Override>
initialize providers
segment2String(TypedSegment s) String?
string2Path(String? path) TypedPath?

Typedefs

AsyncActionResult = dynamic
result for async action (opening, closing, replacing)
Closing<T extends TypedSegment> = Future? Function(T sOld)
closing
FromUrlPars<T extends TypedSegment> = T Function(UrlPars pars)
from URL TypedSegment creator
GetFuture = Future? Function()
InitAppWithRef = (Future Function()?)
Opening<T extends TypedSegment> = Future? Function(T sNew)
opening
Replacing<T extends TypedSegment> = Future? Function(T sOld, T sNew)
replacing
TypedPath = List<TypedSegment>
Typed variant of whole url path (which consists of TypedSegments)
UrlPars = Map<String, String>
parsed string-segment pars, e.g. for 'book;id=3' it is {'id':'3'}