import React from 'react'; import { connect } from 'react-redux'; import Link from 'react-router/lib/Link'; import { bindActionCreators } from 'redux'; import { logoutUser } from 'actions/UserActions'; import DropdownMenu, { MenuItem } from 'components/DropdownMenu'; import Flex from 'components/Flex'; import LoadingIndicator from 'components/LoadingIndicator'; import { Avatar } from 'rebass'; import styles from './Layout.scss'; import classNames from 'classnames/bind'; const cx = classNames.bind(styles); class Layout extends React.Component { static propTypes = { actions: React.PropTypes.node, title: React.PropTypes.node, fixed: React.PropTypes.bool, loading: React.PropTypes.bool, } onLogout = () => { this.props.logoutUser(); } render() { return (
{ this.props.loading ? ( ) : null }
{ this.props.teamName }
{ this.props.title } { this.props.actions } }> Logout
{ this.props.children }
); } } const mapStateToProps = (state) => { return { teamName: state.team ? state.team.name : null, avatarUrl: state.user ? state.user.avatarUrl : null, } }; const mapDispatchToProps = (dispatch) => { return bindActionCreators({ logoutUser, }, dispatch) } export default connect( mapStateToProps, mapDispatchToProps, )(Layout);