GuideShowcaseManager class
Bridges the GuideOrchestrator to the showcaseview engine.
Owns the single seam to the package: registers the ShowcaseView
controller, starts a showcase when a guide is routed, maps each step's flat
(RN-shaped) config into a ShowcasePresentation for DigiaAnchor, routes
button taps (next / back / dismiss / links) and emits lifecycle analytics.
Constructors
- GuideShowcaseManager({required GuideOrchestrator orchestrator, required AnchorRegistry registry, required EngageEventEmitter events(), required FrequencyManager? frequency(), required DwellTracker dwell, required String? screenName(), void onAnchorNotRendered(ActiveGuideState state)?, void onAnchorlessRenderFailed(ActiveGuideState state, String message)?, void onDropBeforeShown(CEPTriggerPayload payload, DropReason reason)?})
Properties
-
anchorlessStepIndex
→ ValueNotifier<
int> -
no setter
- anchorlessTargetCount → int
-
no setter
-
anchorlessVisible
→ ValueNotifier<
bool> -
no setter
- campaignKey → String?
-
no setter
- currentAnchorKey → String?
-
The
anchorKeyof the step currently on screen, or null when no guide is showing. Lets a DigiaAnchor tell whether it hosts the visible step as it leaves the tree, so navigating off that screen can tear the guide down.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- isCompleted → bool
-
Whether the guide on screen was already completed (its last-step CTA or
reaching the end), so a supersede reports
completed(R3-D12).no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
anchorlessPresentation(
BuildContext context, int stepIndex) → ShowcasePresentation? -
anchorlessTargetKeyAt(
int index) → GlobalKey< State< StatefulWidget> > -
dismiss(
{bool anchorLeft = false, DismissReason? reason}) → void -
Tears the guide down as a user-driven close — fired when the anchored
screen leaves the tree (the user navigated back or away), mirroring RN's
back_gesturedismissal. Goes through the showcaseviewonDismiss→_finishpath so the normal Dismissed analytics fire, unlike the orchestrator's silent invalidation.anchorLeftis true only fromDigiaAnchor.dispose: on the last step of a multi-step guide it reportsGuideCompletedinstead of a step dismissal (A62). Its reason is DismissReason.screenExit when the host changed screens and DismissReason.targetLost when the anchor unmounted in place. -
dismissAnchorlessFailure(
int guideToken, {DropReason dropReason = DropReason.error}) → void -
handleCanvasActions(
BuildContext context, CampaignCanvasActionRequest request) → Future< void> -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
presentationFor(
String anchorKey) → ShowcasePresentation? -
The presentation for
anchorKeyunder the active guide, ornullwhen no guide is active or no step targets this anchor. -
reportAnchorlessImageResult(
{required int stepIndex, required bool ready}) → void -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited