EmbedRouteManager class
Manages route-based activation for EmbedWidget.
One SDK integration = one agent (no multi-agent / flowName scoping). The
FAB shows on a flat set of enabledRoutes (or everywhere via
showOnAllRoutes). Optionally, a React-Native-parity
EmbedButtonVisibilityConfig carves the enabled routes into named
visibility groups, each with its own continuity / delay / policy;
activeGroup then reports the matched group's id so continuity and
delay-policy timing scope per group.
- Inheritance
-
- Object
- ChangeNotifier
- EmbedRouteManager
Constructors
- EmbedRouteManager()
-
factory
Properties
- activeGroup → String?
-
The identity of the active visibility group for the current route: a
matched group's
id, else the default sentinel when the route is enabled, elsenull. Drives group-entry / continuity / delay-policy timing, so moving between two groups registers as a real group change.no setter - continuity → EmbedButtonContinuity
-
The FAB-continuity policy for the current route: the matched visibility
group's value if any, else the widget-level EmbedButtonContinuity
(defaults to EmbedButtonContinuity.reset).
no setter
- currentRoute → String?
-
Current route name
no setter
- delayMs → int
-
The effective pre-show delay (ms) for the current route: matched group's
delayMs, elsebuttonDelay.delayMs, elsevisibility.defaultDelayMs, elseembedButtonDelayMs.no setter - delayPolicy → EmbedButtonDelayPolicy
-
The effective EmbedButtonDelayPolicy for the current route (matched
group's policy, else the widget-level one, else
perScreen).no setter -
disabledRoutes
→ List<
String> -
List of routes to explicitly disable (blacklist).
no setter
-
enabledRoutes
→ List<
String> -
The flat set of routes the FAB may show on.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
- isCurrentRouteDisabled → bool
-
Whether the current route sits on the host's fail-closed exclusion list.
no setter
- isEmbedActive → bool
-
Whether EmbedWidget should be visible on current route.
no setter
- matchMode → RouteMatchMode
-
Route matching mode.
no setter
- reportableScreen → String
-
The screen name to attach to anything leaving the device.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showOnAllRoutes → bool
-
Whether to show on all routes (overrides enabledRoutes).
no setter
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
configure(
{List< String> ? enabledRoutes, bool? showOnAllRoutes, List<String> ? disabledRoutes, RouteMatchMode? matchMode, EmbedButtonContinuity? continuity, EmbedButtonDelay? buttonDelay, int? defaultDelayMs, EmbedButtonVisibilityConfig? buttonVisibility}) → void - Configure the route manager with the flat enabled-route set.
-
dispose(
) → void -
Discards any resources used by the object.
inherited
-
groupForRoute(
String route) → String? -
The group identity for a given route: a matched visibility group's
id, else the default sentinel when the route is enabled, elsenull. -
isRouteDisabled(
String route) → bool - Public form of the exclusion test, for callers that need to check a name other than the current navigator route — the UI-graph cache files snapshots under the DETECTED screen, which can differ.
-
isRouteEnabled(
String route) → bool -
Whether the given route is in the enabled set (either enabledRoutes or a
visibility group's
screens— group screens are part of the allow-list). -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
) → void -
Call all the registered listeners.
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that are
notified when the object changes.
inherited
-
reset(
) → void - Reset to default state.
-
setCurrentScreen(
String screenName) → void - Manually override the current screen name.
-
toString(
) → String -
A string representation of this object.
inherited
-
updateRoute(
String? newRoute) → void - Update current route.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- defaultScreenName → const String
- Matches the peers' sentinel so a mixed-SDK tenant sees one bucket.