UNPKG

@atlaskit/editor-plugin-card

Version:

Card plugin for @atlaskit/editor-core

32 lines 1.42 kB
import React, { useCallback } from 'react'; import { useIntl } from 'react-intl'; import { cardMessages as messages } from '@atlaskit/editor-common/messages'; import { IconDatasourceAssetsObjects, IconDatasourceJiraIssue } from '@atlaskit/editor-common/quick-insert'; import { QuickInsertMenuItem } from '@atlaskit/editor-common/quick-insert/menu-item'; import { useQuickInsertContext } from '@atlaskit/editor-common/quick-insert/use-quick-insert-context'; import { fg } from '@atlaskit/platform-feature-flags/fg'; import { showDatasourceModal } from '../../pm-plugins/actions'; export const DatasourceQuickInsertMenuItem = ({ type }) => { const { formatMessage } = useIntl(); const { isOffline } = useQuickInsertContext(); const isJira = type === 'jira'; const onSelect = useCallback(({ insert }) => { const tr = insert(undefined); showDatasourceModal(type)(tr); return tr; }, [type]); return /*#__PURE__*/React.createElement(QuickInsertMenuItem, { iconBefore: isJira ? /*#__PURE__*/React.createElement(IconDatasourceJiraIssue, null) : /*#__PURE__*/React.createElement(IconDatasourceAssetsObjects, null), isDisabled: isOffline, onSelect: onSelect, title: formatMessage(isJira ? fg('confluence-issue-terminology-refresh') ? messages.datasourceJiraIssueIssueTermRefresh : messages.datasourceJiraIssue : messages.datasourceAssetsObjectsGeneralAvailability) }); };