Skip to main content

Cancellation of actions

Long-running asynchronous actions (such as loading single stories, onboardings, and in-app messages) can be aborted using a standard JavaScript AbortController.

Usage

Pass abortController.signal into any cancelable SDK method:

import { storyManager, appearanceManager } from './StoryService';

const abortController = new AbortController();

// 1. Single story
storyManager.showStory('story_123', abortController.signal, appearanceManager);

// 2. Single story once
storyManager.showStoryOnce('story_123', abortController.signal);

// 3. Onboarding stories
storyManager.showOnboardings('onboarding', 10, ['tag1', 'tag2'], abortController.signal);

// 4. In-App Messages
storyManager.showIAMById('iam_welcome', false, abortController.signal);
storyManager.showIAMByEvent('user_signup', false, abortController.signal);

// Cancel the pending operation if needed (e.g. user leaves screen)
abortController.abort();

Supported Cancelable Methods

MethodDescription
showStory(storyId, signal?, appearanceManager?)Opens a single story reader
showStoryOnce(storyId, signal?)Opens a story reader if the story hasn't been shown before
showOnboardings(feed?, limit?, tags?, signal?)Opens onboarding stories
showIAMById(id, onlyPreloaded, signal?)Opens an in-app message by ID
showIAMByEvent(event, onlyPreloaded, signal?)Opens an in-app message triggered by an event