UNPKG

@wordpress/components

Version:
53 lines (43 loc) 1.2 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useNavigatorBackButton = useNavigatorBackButton; var _element = require("@wordpress/element"); var _context = require("../../ui/context"); var _button = _interopRequireDefault(require("../../button")); var _useNavigator = _interopRequireDefault(require("../use-navigator")); /** * WordPress dependencies */ /** * Internal dependencies */ function useNavigatorBackButton(props) { const { onClick, as = _button.default, goToParent: goToParentProp = false, ...otherProps } = (0, _context.useContextSystem)(props, 'NavigatorBackButton'); const { goBack, goToParent } = (0, _useNavigator.default)(); const handleClick = (0, _element.useCallback)(e => { e.preventDefault(); if (goToParentProp) { goToParent(); } else { goBack(); } onClick === null || onClick === void 0 ? void 0 : onClick(e); }, [goToParentProp, goToParent, goBack, onClick]); return { as, onClick: handleClick, ...otherProps }; } //# sourceMappingURL=hook.js.map