diff options
Diffstat (limited to 'src/containers/simulations/NewSimulationModal.js')
| -rw-r--r-- | src/containers/simulations/NewSimulationModal.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/containers/simulations/NewSimulationModal.js b/src/containers/simulations/NewSimulationModal.js new file mode 100644 index 00000000..a4a3d2a8 --- /dev/null +++ b/src/containers/simulations/NewSimulationModal.js @@ -0,0 +1,34 @@ +import React from "react"; +import {connect} from "react-redux"; +import {addSimulation, closeNewSimulationModal} from "../../actions/simulations"; +import TextInputModal from "../../components/modals/TextInputModal"; + +const NewSimulationModalComponent = ({visible, callback}) => ( + <TextInputModal title="New Simulation" label="Simulation title" + show={visible} + callback={callback}/> +); + +const mapStateToProps = state => { + return { + visible: state.newSimulationModalVisible + }; +}; + +const mapDispatchToProps = dispatch => { + return { + callback: (text) => { + if (text) { + dispatch(addSimulation(text)); + } + dispatch(closeNewSimulationModal()); + } + }; +}; + +const NewSimulationModal = connect( + mapStateToProps, + mapDispatchToProps +)(NewSimulationModalComponent); + +export default NewSimulationModal; |
