// @flow import * as React from 'react'; import TetherComponent from 'react-tether'; import PlainButton from '../../components/plain-button'; import IconClose from '../../icons/general/IconClose'; import type { Callout } from './Callout'; import './styles/LeftSidebarLinkCallout.scss'; type Props = { callout: Callout, children: React.Node, }; type State = { isShown: boolean, }; class LeftSidebarLinkCallout extends React.Component { constructor(props: Props) { super(props); this.state = { isShown: true }; } hideCallout = () => { const { onClose } = this.props.callout; if (onClose) { onClose(); } this.setState({ isShown: false }); }; render() { const { children, callout: { content }, } = this.props; const { isShown } = this.state; return ( {React.Children.only(children)} {isShown && (
{content}
)}
); } } export default LeftSidebarLinkCallout;