UNPKG

@atlaskit/editor-plugin-help-dialog

Version:

Help Dialog plugin for @atlaskit/editor-core

31 lines 1.17 kB
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD } from '@atlaskit/editor-common/analytics'; import { bindKeymapWithCommand, openHelp } from '@atlaskit/editor-common/keymaps'; import { keymap } from '@atlaskit/editor-prosemirror/keymap'; import { openHelpCommand } from './commands'; import { pluginKey } from './plugin-key'; export const keymapPlugin = editorAnalyticsAPI => { const list = {}; bindKeymapWithCommand( // Ignored via go/ees005 // eslint-disable-next-line @typescript-eslint/no-non-null-assertion openHelp.common, (state, dispatch) => { const { tr } = state; const isVisible = tr.getMeta(pluginKey); if (!isVisible) { editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 ? void 0 : editorAnalyticsAPI.attachAnalyticsEvent({ action: ACTION.CLICKED, actionSubject: ACTION_SUBJECT.BUTTON, actionSubjectId: ACTION_SUBJECT_ID.BUTTON_HELP, attributes: { inputMethod: INPUT_METHOD.SHORTCUT }, eventType: EVENT_TYPE.UI })(tr); openHelpCommand(tr, dispatch); } return true; }, list); return keymap(list); };