@wordpress/editor
Version:
Enhanced block editor for WordPress posts.
41 lines (37 loc) • 1.4 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import { createElement } from "@wordpress/element";
/**
* WordPress dependencies
*/
import { __, isRTL } from '@wordpress/i18n';
import { Button } from '@wordpress/components';
import { useSelect, useDispatch } from '@wordpress/data';
import { displayShortcut } from '@wordpress/keycodes';
import { redo as redoIcon, undo as undoIcon } from '@wordpress/icons';
import { forwardRef } from '@wordpress/element';
/**
* Internal dependencies
*/
import { store as editorStore } from '../../store';
function EditorHistoryRedo(props, ref) {
const hasRedo = useSelect(select => select(editorStore).hasEditorRedo(), []);
const {
redo
} = useDispatch(editorStore);
return createElement(Button, _extends({}, props, {
ref: ref,
icon: !isRTL() ? redoIcon : undoIcon
/* translators: button label text should, if possible, be under 16 characters. */
,
label: __('Redo'),
shortcut: displayShortcut.primaryShift('z') // If there are no redo levels we don't want to actually disable this
// button, because it will remove focus for keyboard users.
// See: https://github.com/WordPress/gutenberg/issues/3486
,
"aria-disabled": !hasRedo,
onClick: hasRedo ? redo : undefined,
className: "editor-history__redo"
}));
}
export default forwardRef(EditorHistoryRedo);
//# sourceMappingURL=redo.js.map