kaisel_core library
Pure-Dart navigation core for the kaisel router.
Sealed routes, a stack-as-state KaiselRouter, a guard pipeline, and URL
codecs — with no Flutter dependency. The Flutter widgets (delegate, shells,
modules, adaptive layouts) live in the kaisel package, which re-exports
everything here.
Classes
-
ConfigCodecWithModules<
R extends KaiselRoute> - A KaiselConfigCodec that composes a base codec with one or more module mounts.
-
KaiselActiveFlow<
R extends KaiselRoute> - A read-only view of one entry in the active modal flow stack.
-
KaiselCodec<
R extends KaiselRoute> - Bidirectional mapping between a route and a URL.
-
KaiselConfig<
R extends KaiselRoute> - The configuration that flows between the URL bar and the router.
-
KaiselConfigCodec<
R extends KaiselRoute> - Maps URLs to and from a full KaiselConfig.
-
KaiselModalRoute<
T> -
Marker interface for routes that present a modal sub-flow returning
a value of type
T. - KaiselModuleConfig
-
Configuration for a mounted
RouteModule. - Non-generic view of a KaiselRouter's navigation primitives.
- KaiselNestedConfig
- State of a nested router (shell, module, future kinds) at the moment a URL is captured. Sealed so KaiselConfig.nestedState can carry at most one kind, statically.
- KaiselRoute
- Base marker for application route types.
-
KaiselRouter<
R extends KaiselRoute> - The navigation stack as observable state.
- KaiselShellConfig
-
Configuration for a
BranchedShellRouter. Describes which branch is active and the active branch's stack only. -
KaiselSingleStackCodec<
R extends KaiselRoute> - Adapts a single-route KaiselCodec to the multi-route KaiselStackCodec interface. Useful for migrating without rewriting your codec.
-
KaiselStackCodec<
R extends KaiselRoute> - Maps URLs to and from full route stacks.
-
ModuleMount<
HostR extends KaiselRoute> - A module mount declaration: the host's marker route, the URL prefix the module answers to, and the module's URL codec.
-
ModuleStackCodec<
R extends KaiselRoute> - Codec for a module's URL structure, relative to whatever prefix the host mounts the module at.
-
StackToConfigCodec<
R extends KaiselRoute> - Adapter so a KaiselStackCodec (stack-only URLs) works wherever a KaiselConfigCodec is required.
- UntypedModuleStackCodec
-
Type-erased view of ModuleStackCodec. Module authors implement
the typed ModuleStackCodec subclass; the composer
(ConfigCodecWithModules) uses this untyped interface so a single
List<ModuleMount>can hold codecs for modules with different internal route types.
Typedefs
-
KaiselGuard<
R extends KaiselRoute> = FutureOr< List< Function(List<R> >R> current, List<R> proposed) - A guard transforms a proposed navigation stack before it is applied.