UNPKG

@chayns-components/core

Version:

A set of beautiful React components for developing your own applications with chayns.

47 lines (46 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _SharingContextMenu = _interopRequireDefault(require("../sharing-context-menu/SharingContextMenu")); var _SharingButton = require("./SharingButton.styles"); var _Button = _interopRequireDefault(require("../button/Button")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const SharingButton = ({ link, alignment, container, children, isDisabled, shouldEnableKeyboardHighlighting }) => { const contextMenuRef = _react.default.useRef(null); const [isButtonDisabled, setIsButtonDisabled] = _react.default.useState(false); const handleButtonClick = () => { var _contextMenuRef$curre; (_contextMenuRef$curre = contextMenuRef.current) === null || _contextMenuRef$curre === void 0 || _contextMenuRef$curre.show(); }; const handleOnShow = () => { setIsButtonDisabled(true); }; const handleOnHide = () => { setIsButtonDisabled(false); }; return /*#__PURE__*/_react.default.createElement(_SharingButton.StyledSharingButtonContainer, null, /*#__PURE__*/_react.default.createElement(_SharingContextMenu.default, { link: link, alignment: alignment, container: container, ref: contextMenuRef, shouldDisableClick: true, onShow: handleOnShow, onHide: handleOnHide }, /*#__PURE__*/_react.default.createElement(_Button.default, { onClick: handleButtonClick, isDisabled: isButtonDisabled || isDisabled, shouldEnableKeyboardHighlighting: shouldEnableKeyboardHighlighting }, children))); }; var _default = exports.default = SharingButton; //# sourceMappingURL=SharingButton.js.map