@atlaskit/editor-plugin-engagement-platform

中文文档
31.0.0发布于 2026/10/27Apache-2.0TypeScriptESM + CJS近 30 天下载 2.5万

Engagement platform plugin for @atlaskit/editor-core“

原始使用文档
文档目录10 节
  1. Overview
  2. Key features
  3. Install
  4. Usage
  5. Basic setup
  6. Checking message state
  7. Plugin configuration
  8. API
  9. Support
  10. License

Editor Plugin Engagement Platform

Engagement platform plugin for @atlaskit/editor-core

Note: This component is designed for internal Atlassian development. External contributors will be able to use this component but will not be able to submit issues.

Overview

The Engagement Platform plugin provides integration with the Atlassian Engagement Platform within the editor. It enables control of external messages by allowing you to start and stop engagement messages, as well as check the state of these messages. The plugin requires a coordination client to manage message lifecycle and state.

Key features

  • Start message - Start an engagement message with a given ID and optional variation ID
  • Stop message - Stop an engagement message with a given ID
  • Message state tracking - Check the active state of engagement messages
  • Promise-based API - Prevent duplicate requests with integrated promise management
  • Coordination client integration - Works with the Engagement Platform coordination client

Install


Usage


Internal use only

@atlaskit/editor-plugin-engagement-platform is intended for internal use by the @atlaskit/editor-core and as a plugin dependency of the Editor within your product.

Direct use of this component is not supported.

Basic setup

To use the plugin, import it and include it in your editor setup:

import { engagementPlatformPlugin } from '@atlaskit/editor-plugin-engagement-platform';

const coordinationClient = useCoordinationClient()

const { preset, editorApi } = usePreset(() => {
    return universalPreset.add([
        engagementPlatformPlugin,
        { coordinationClient },
    ]);
}, [universalPreset, coordinationClient]);

Checking message state

To get the current state of an engagement message, you can use the following code:

function isMessageActive(messageId: string): boolean {
    const messageStates = api.engagementPlatform.sharedState.currentState()?.messageStates ?? {};
    return !!messageStates[messageId];
}

Plugin configuration

The plugin requires a configuration object with the following structure:

interface EngagementPlatformPluginOptions {
    coordinationClient: CoordinationClientType;
}

API

api.engagementPlatform.actions.startMessage(messageId: string, variationId?: string): Promise<boolean>

Starts an engagement message with the given ID and optional variation ID.

Warning: You must call stopMessage when your message has finished being displayed to a user. If you do not call stopMessage, your message will prevent the user from seeing any other messages until the Expiry time for the message is reached.

api.engagementPlatform.actions.stopMessage(messageId: string): Promise<boolean>

Stops an engagement message with the given ID.

Please see Atlaskit - Editor Engagement Platform Plugin for documentation and examples for this package.

Support


For internal Atlassian, visit the slack channel #help-editor for support or visit go/editor-help to submit a bug.

License


Please see Atlassian Frontend - License for more licensing information.

版本与发布记录

@atlaskit/editor-plugin-engagement-platform 共发布 57 个版本,首次发布于 2024/10/08;过去 12 个月发布了 29 个版本。

版本发布日期距今
31.0.0latest2026/10/2711 天前
30.0.02026/10/2018 天前
29.0.02026/10/1622 天前
28.0.02026/10/1425 天前
27.0.02026/10/0830 天前
26.0.02026/10/071 个月前

关于 @atlaskit/editor-plugin-engagement-platform 的常见问题

@atlaskit/editor-plugin-engagement-platform 是什么?

Engagement platform plugin for @atlaskit/editor-core“

如何安装 @atlaskit/editor-plugin-engagement-platform?

在项目目录运行 npm install @atlaskit/editor-plugin-engagement-platform,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18.2.0 || ^19.2.0)、react-dom(^18.2.0 || ^19.2.0)、@atlaskit/editor-common(^134.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@atlaskit/editor-plugin-engagement-platform 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@atlaskit/editor-plugin-engagement-platform 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@atlaskit/editor-plugin-engagement-platform 可以商用吗?

@atlaskit/editor-plugin-engagement-platform 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@atlaskit/editor-plugin-engagement-platform 的下载量有多少?

根据 npm 官方下载统计,@atlaskit/editor-plugin-engagement-platform 在 2026/10/07 – 2026/11/05 这 30 天内被下载 24,742 次,日均约 825 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@atlaskit/editor-plugin-engagement-platform 还在维护吗?

最新版本 31.0.0 发布于 2026/10/27(11 天前);至今共发布 57 个版本,其中过去 12 个月发布了 29 个;首次发布于 2024/10/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。