UNPKG

@wordpress/editor

Version:
58 lines (53 loc) 1.87 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _i18n = require("@wordpress/i18n"); var _components = require("@wordpress/components"); var _data = require("@wordpress/data"); var _keycodes = require("@wordpress/keycodes"); var _icons = require("@wordpress/icons"); var _element = require("@wordpress/element"); var _store = require("../../store"); var _jsxRuntime = require("react/jsx-runtime"); /** * WordPress dependencies */ /** * Internal dependencies */ function EditorHistoryRedo(props, ref) { const shortcut = (0, _keycodes.isAppleOS)() ? _keycodes.displayShortcut.primaryShift('z') : _keycodes.displayShortcut.primary('y'); const hasRedo = (0, _data.useSelect)(select => select(_store.store).hasEditorRedo(), []); const { redo } = (0, _data.useDispatch)(_store.store); return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, { __next40pxDefaultSize: true, ...props, ref: ref, icon: !(0, _i18n.isRTL)() ? _icons.redo : _icons.undo /* translators: button label text should, if possible, be under 16 characters. */, label: (0, _i18n.__)('Redo'), shortcut: shortcut // 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" }); } /** @typedef {import('react').Ref<HTMLElement>} Ref */ /** * Renders the redo button for the editor history. * * @param {Object} props - Props. * @param {Ref} ref - Forwarded ref. * * @return {Component} The component to be rendered. */ var _default = exports.default = (0, _element.forwardRef)(EditorHistoryRedo); //# sourceMappingURL=redo.js.map