@atlaskit/editor-plugin-card
Version:
Card plugin for @atlaskit/editor-core
28 lines • 1.57 kB
JavaScript
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 var DatasourceQuickInsertMenuItem = function DatasourceQuickInsertMenuItem(_ref) {
var type = _ref.type;
var _useIntl = useIntl(),
formatMessage = _useIntl.formatMessage;
var _useQuickInsertContex = useQuickInsertContext(),
isOffline = _useQuickInsertContex.isOffline;
var isJira = type === 'jira';
var onSelect = useCallback(function (_ref2) {
var insert = _ref2.insert;
var 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)
});
};