import React, { Component } from 'react'; import { connect } from 'react-redux'; import classnames from 'classnames'; import injectTapEventPlugin from 'react-tap-event-plugin'; import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider'; import getMuiTheme from 'material-ui/styles/getMuiTheme'; // = styles = // 3rd import 'styles/bootstrap.scss'; // custom import 'styles/layout.scss'; import 'styles/theme.scss'; import 'styles/ui.scss'; import 'styles/app.scss'; import lightTheme from './themes/lightTheme'; import darkTheme from './themes/darkTheme'; import grayTheme from './themes/grayTheme'; injectTapEventPlugin(); // Needed for onTouchTap for Material UI class App extends Component { componentDidMount() {} render() { const { layoutBoxed, navCollapsed, navBehind, fixedHeader, sidebarWidth, theme } = this.props; let materialUITheme; switch (theme) { case 'gray': materialUITheme = grayTheme; break; case 'dark': materialUITheme = darkTheme; break; default: materialUITheme = lightTheme; } return (
{this.props.children}
); } } const mapStateToProps = (state, ownProps) => ({ layoutBoxed: state.settings.layoutBoxed, navCollapsed: state.settings.navCollapsed, navBehind: state.settings.navBehind, fixedHeader: state.settings.fixedHeader, sidebarWidth: state.settings.sidebarWidth, theme: state.settings.theme, }); module.exports = connect( mapStateToProps )(App);