import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Trans, withNamespaces } from 'react-i18next'; class Toast extends Component { componentDidMount() { const timeout = this.props.type === 'success' ? 5000 : 30000; setTimeout(() => { this.props.removeToast(this.props.id); }, timeout); } shouldComponentUpdate() { return false; } showMessage(t, type, message) { if (type === 'notice') { return ; } return {message}; } render() { const { type, id, t, message, } = this.props; return (

{this.showMessage(t, type, message)}

); } } Toast.propTypes = { t: PropTypes.func.isRequired, id: PropTypes.string.isRequired, message: PropTypes.string.isRequired, type: PropTypes.string.isRequired, removeToast: PropTypes.func.isRequired, }; export default withNamespaces()(Toast);