import React, { Component } from 'react' import PropTypes from 'prop-types' import onClickOutsideAddon from 'react-onclickoutside' import Notification from './Notification' import Loading from './Loading' class NotificationBox extends Component { static propTypes = { notifications: PropTypes.array, fetchNotifications: PropTypes.func.isRequired, toggleNotificationsBox: PropTypes.func.isRequired, markAsRead: PropTypes.func.isRequired, markAsUnread: PropTypes.func.isRequired } componentDidMount = () => { const { notifications, fetchNotifications } = this.props if (!notifications) { fetchNotifications() } } handleClickOutside = () => { this.props.toggleNotificationsBox() } hasSomeNotifications = () => { const { notifications } = this.props return notifications && notifications.length > 0 } showLoading = () => { return