UNPKG

@wordpress/edit-post

Version:
58 lines (53 loc) 2.07 kB
import { createElement } from "@wordpress/element"; /** * External dependencies */ import { flow, noop } from 'lodash'; /** * WordPress dependencies */ import { __ } from '@wordpress/i18n'; import { MenuItem, withSpokenMessages } from '@wordpress/components'; import { withSelect, withDispatch } from '@wordpress/data'; import { compose } from '@wordpress/compose'; /** * Internal dependencies */ import shortcuts from '../../keyboard-shortcuts'; export function BlockInspectorButton(_ref) { var areAdvancedSettingsOpened = _ref.areAdvancedSettingsOpened, closeSidebar = _ref.closeSidebar, openEditorSidebar = _ref.openEditorSidebar, _ref$onClick = _ref.onClick, onClick = _ref$onClick === void 0 ? noop : _ref$onClick, _ref$small = _ref.small, small = _ref$small === void 0 ? false : _ref$small, speak = _ref.speak; var speakMessage = function speakMessage() { if (areAdvancedSettingsOpened) { speak(__('Block settings closed')); } else { speak(__('Additional settings are now available in the Editor block settings sidebar')); } }; var label = areAdvancedSettingsOpened ? __('Hide Block Settings') : __('Show Block Settings'); return createElement(MenuItem, { className: "editor-block-settings-menu__control block-editor-block-settings-menu__control", onClick: flow(areAdvancedSettingsOpened ? closeSidebar : openEditorSidebar, speakMessage, onClick), icon: "admin-generic", shortcut: shortcuts.toggleSidebar }, !small && label); } export default compose(withSelect(function (select) { return { areAdvancedSettingsOpened: select('core/edit-post').getActiveGeneralSidebarName() === 'edit-post/block' }; }), withDispatch(function (dispatch) { return { openEditorSidebar: function openEditorSidebar() { return dispatch('core/edit-post').openGeneralSidebar('edit-post/block'); }, closeSidebar: dispatch('core/edit-post').closeGeneralSidebar }; }), withSpokenMessages)(BlockInspectorButton); //# sourceMappingURL=block-inspector-button.js.map