UNPKG

@atlaskit/editor-plugin-block-menu

Version:

BlockMenu plugin for @atlaskit/editor-core

38 lines • 1.76 kB
import React from 'react'; import { useIntl } from 'react-intl'; import { messages as blockMenuMessages } from '@atlaskit/editor-common/messages/block-menu'; import { ToolbarDropdownItem } from '@atlaskit/editor-toolbar/toolbar-dropdown-item'; import { ToolbarDropdownItemSection } from '@atlaskit/editor-toolbar/toolbar-dropdown-item-section'; import { ToolbarNestedDropdownMenu } from '@atlaskit/editor-toolbar/toolbar-nested-dropdown-menu'; import ChevronRightIcon from '@atlaskit/icon/core/chevron-right'; import { useBlockMenuTargetVisibility } from '../block-menu-target-visibility-context'; var FallbackNestedMenu = function FallbackNestedMenu(_ref) { var children = _ref.children; var _useIntl = useIntl(), formatMessage = _useIntl.formatMessage; var targetVisible = useBlockMenuTargetVisibility(); return /*#__PURE__*/React.createElement(ToolbarNestedDropdownMenu, { isPopupVisible: targetVisible, elemBefore: undefined, elemAfter: /*#__PURE__*/React.createElement(ChevronRightIcon, { label: "", size: "small" }), text: formatMessage(blockMenuMessages.fallbackNestedMenu), enableMaxHeight: true, shouldFitContainer: true }, children); }; var FallbackMenuItem = function FallbackMenuItem() { var _useIntl2 = useIntl(), formatMessage = _useIntl2.formatMessage; return /*#__PURE__*/React.createElement(ToolbarDropdownItem, null, formatMessage(blockMenuMessages.fallbackMenuItem)); }; export var BLOCK_MENU_FALLBACKS = { 'block-menu-nested': FallbackNestedMenu, 'block-menu-section': function blockMenuSection(_ref2) { var children = _ref2.children; return /*#__PURE__*/React.createElement(ToolbarDropdownItemSection, null, children); }, 'block-menu-item': FallbackMenuItem };