import React from 'react'; import Dropzone from './Dropzone.jsx'; import PublishForm from './PublishForm.jsx'; import PublishStatus from '../components/PublishStatus.jsx'; import {connect} from 'react-redux'; import PropTypes from 'prop-types'; class PublishTool extends React.Component { render () { if (this.props.file) { if (this.props.status) { return ( <PublishStatus status={this.props.status} message={this.props.message} /> ); } else { return <PublishForm />; } } else { return <Dropzone />; } } }; const mapStateToProps = state => { return { file : state.file, status : state.status.status, message: state.status.message, }; }; PublishTool.propTypes = { file : PropTypes.object, status : PropTypes.string, message: PropTypes.string, }; export default connect(mapStateToProps, null)(PublishTool);