From 61f20d1d4c8255e2196b90ffa8110fa101a77fc2 Mon Sep 17 00:00:00 2001 From: Oliver Wright Date: Mon, 25 Feb 2019 20:11:07 +0000 Subject: [PATCH] Refactor Nav Props - See #824 (#846) --- client/components/Nav.jsx | 27 +++++++++++++++++---------- client/modules/IDE/pages/IDEView.jsx | 19 ------------------- 2 files changed, 17 insertions(+), 29 deletions(-) diff --git a/client/components/Nav.jsx b/client/components/Nav.jsx index 23a6cc0a..b729cca9 100644 --- a/client/components/Nav.jsx +++ b/client/components/Nav.jsx @@ -1,12 +1,14 @@ import PropTypes from 'prop-types'; import React from 'react'; -import { bindActionCreators } from 'redux'; import { connect } from 'react-redux'; import { withRouter } from 'react-router'; import { Link } from 'react-router'; import InlineSVG from 'react-inlinesvg'; import classNames from 'classnames'; import * as IDEActions from '../modules/IDE/actions/ide'; +import * as projectActions from '../modules/IDE/actions/project'; +import { setAllAccessibleOutput } from '../modules/IDE/actions/preferences'; +import { logoutUser } from '../modules/User/actions'; import { metaKeyName, } from '../utils/metaKey'; @@ -600,15 +602,20 @@ Nav.defaultProps = { cmController: {} }; -function mapDispatchToProps(dispatch) { - return bindActionCreators( - Object.assign( - {}, - IDEActions - ), - dispatch - ); +function mapStateToProps(state) { + return { + project: state.project, + user: state.user, + unsavedChanges: state.ide.unsavedChanges + }; } -export default withRouter(connect(() => ({}), mapDispatchToProps)(Nav)); +const mapDispatchToProps = { + ...IDEActions, + ...projectActions, + logoutUser, + setAllAccessibleOutput +}; + +export default withRouter(connect(mapStateToProps, mapDispatchToProps)(Nav)); export { Nav as NavComponent }; diff --git a/client/modules/IDE/pages/IDEView.jsx b/client/modules/IDE/pages/IDEView.jsx index ec69229d..0485fa0a 100644 --- a/client/modules/IDE/pages/IDEView.jsx +++ b/client/modules/IDE/pages/IDEView.jsx @@ -209,23 +209,8 @@ class IDEView extends React.Component { {this.props.toast.isVisible && }