e87390adb9
* update eslint and dependencies, fix linting errors that can be fixed with --fix * fix lots of linting errors * update eslintrc, fix some linting errors * fix all server side linting errors, untested * fix errors that fixing linting errors had caused * fix client side eslint errors * fix client side linting errors * fix refs lint errors * fix more linting errors * update eslint and dependencies, fix linting errors that can be fixed with --fix * fix lots of linting errors * update eslintrc, fix some linting errors * fix all server side linting errors, untested * fix errors that fixing linting errors had caused * fix client side eslint errors * fix client side linting errors * fix refs lint errors * fix more linting errors * fix some accessibility linting errors * fix a lot of linting errors * fix a billion more linting errors * hopefully fix all linting errors, still need to test * fix bugs that fixing linting had caused
35 lines
883 B
JavaScript
35 lines
883 B
JavaScript
import React, { PropTypes } from 'react';
|
|
import { bindActionCreators } from 'redux';
|
|
import { connect } from 'react-redux';
|
|
import InlineSVG from 'react-inlinesvg';
|
|
import * as ToastActions from '../actions/toast';
|
|
|
|
const exitUrl = require('../../../images/exit.svg');
|
|
|
|
function Toast(props) {
|
|
return (
|
|
<section className="toast">
|
|
<p>
|
|
{props.text}
|
|
</p>
|
|
<button className="toast__close" onClick={props.hideToast}>
|
|
<InlineSVG src={exitUrl} alt="Close Keyboard Shortcuts Overlay" />
|
|
</button>
|
|
</section>
|
|
);
|
|
}
|
|
|
|
Toast.propTypes = {
|
|
text: PropTypes.string.isRequired,
|
|
hideToast: PropTypes.func.isRequired
|
|
};
|
|
|
|
function mapStateToProps(state) {
|
|
return state.toast;
|
|
}
|
|
|
|
function mapDispatchToProps(dispatch) {
|
|
return bindActionCreators(ToastActions, dispatch);
|
|
}
|
|
|
|
export default connect(mapStateToProps, mapDispatchToProps)(Toast);
|