all files / src/components/ AlertsWrapper.jsx

75% Statements 18/24
50% Branches 6/12
40% Functions 2/5
72.22% Lines 13/18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39                                                    
EI/* global notify */
import React from 'react';
import AlertContainer from 'react-alert';
import PropTypes from 'prop-types';
 
const propTypes = {
  initMessages: PropTypes.array,
};
const defaultProps = {
  initMessages: [],
};
 
export default class AlertsWrapper extends React.PureComponent {
  componentDidMount() {
    this.props.initMessages.forEach((msg) => {
      if (['info', 'error', 'success'].indexOf(msg[0]) >= 0) {
        notify[msg[0]](msg[1]);
      } else {
        notify.show(msg[1]);
      }
    });
  }
  render() {
    return (
      <AlertContainer
        ref={(ref) => {
          global.notify = ref;
        }}
        offset={14}
        position="top right"
        theme="dark"
        time={5000}
        transition="fade"
      />);
  }
}
AlertsWrapper.propTypes = propTypes;
AlertsWrapper.defaultProps = defaultProps;