/** * Notification overlay */ // Package imports. import PropTypes from "prop-types"; import { defineMessages, injectIntl } from "react-intl"; import ImmutablePropTypes from "react-immutable-proptypes"; import ImmutablePureComponent from "react-immutable-pure-component"; import { Icon } from "flavours/glitch/components/icon"; const messages = defineMessages({ markForDeletion: { id: "notification.markForDeletion", defaultMessage: "Mark for deletion" }, }); class NotificationOverlay extends ImmutablePureComponent { static propTypes = { notification : ImmutablePropTypes.map.isRequired, onMarkForDelete : PropTypes.func.isRequired, show : PropTypes.bool.isRequired, intl : PropTypes.object.isRequired, }; onToggleMark = () => { const mark = !this.props.notification.get("markedForDelete"); const id = this.props.notification.get("id"); this.props.onMarkForDelete(id, mark); }; render () { const { notification, show, intl } = this.props; const active = notification.get("markedForDelete"); const label = intl.formatMessage(messages.markForDeletion); return show ? (
) : null; } } export default injectIntl(NotificationOverlay);