UNPKG

@wordpress/edit-post

Version:
63 lines (59 loc) 1.91 kB
import { createElement, Fragment } from "@wordpress/element"; /** * WordPress dependencies */ import { __ } from '@wordpress/i18n'; import { DropdownMenu, MenuGroup } from '@wordpress/components'; import { moreVertical } from '@wordpress/icons'; import { ActionItem, PinnedItems } from '@wordpress/interface'; import { useViewportMatch } from '@wordpress/compose'; /** * Internal dependencies */ import ModeSwitcher from '../mode-switcher'; import PreferencesMenuItem from '../preferences-menu-item'; import ToolsMoreMenuGroup from '../tools-more-menu-group'; import WritingMenu from '../writing-menu'; const POPOVER_PROPS = { className: 'edit-post-more-menu__content', position: 'bottom left' }; const TOGGLE_PROPS = { tooltipPosition: 'bottom' }; const MoreMenu = ({ showIconLabels }) => { const isLargeViewport = useViewportMatch('large'); return createElement(DropdownMenu, { className: "edit-post-more-menu", icon: moreVertical /* translators: button label text should, if possible, be under 16 characters. */ , label: __('Options'), popoverProps: POPOVER_PROPS, toggleProps: { showTooltip: !showIconLabels, isTertiary: showIconLabels, ...TOGGLE_PROPS } }, ({ onClose }) => createElement(Fragment, null, showIconLabels && !isLargeViewport && createElement(PinnedItems.Slot, { className: showIconLabels && 'show-icon-labels', scope: "core/edit-post" }), createElement(WritingMenu, null), createElement(ModeSwitcher, null), createElement(ActionItem.Slot, { name: "core/edit-post/plugin-more-menu", label: __('Plugins'), as: MenuGroup, fillProps: { onClick: onClose } }), createElement(ToolsMoreMenuGroup.Slot, { fillProps: { onClose } }), createElement(MenuGroup, null, createElement(PreferencesMenuItem, null)))); }; export default MoreMenu; //# sourceMappingURL=index.js.map