// Html page import 'file-loader?name=[name].[ext]!../index.html' // Import default image import 'file-loader?name=img/[name].png!../img/noimage.png' // Styles import '../less/app.less' // React import React from 'react' import ReactDOM from 'react-dom' import { bindActionCreators } from 'redux' import { Provider, connect } from 'react-redux' import { Router, Route, IndexRoute, IndexRedirect, Link, hashHistory } from 'react-router' import { routerActions } from 'react-router-redux' import { UserAuthWrapper } from 'redux-auth-wrapper' // Root reducer import rootReducer from './reducers/index' // Action creators import * as actionCreators from './actions/actionCreators' // Store import store, { history } from './store' // Components import NavBar from './components/navbar' import Alert from './components/alerts/alert' import MovieList from './components/movies/list' import ShowList from './components/shows/list' import ShowDetails from './components/shows/details' import UserLoginForm from './components/users/login' import UserEdit from './components/users/edit' import UserSignUp from './components/users/signup' class Main extends React.Component { componentWillMount() { this.props.isUserLoggedIn() } render() { return (
{React.cloneElement(this.props.children, this.props)}
); } } function mapStateToProps(state) { return { movieStore: state.movieStore, showStore: state.showStore, userStore: state.userStore, alerts: state.alerts, } } function mapDispatchToProps(dispatch) { return bindActionCreators(actionCreators, dispatch); } const App = connect(mapStateToProps, mapDispatchToProps)(Main); // Redirects to /login by default const UserIsAuthenticated = UserAuthWrapper({ authSelector: state => state.userStore, redirectAction: routerActions.replace, wrapperDisplayName: 'UserIsAuthenticated', predicate: user => user.isLogged, failureRedirectPath: '/users/login', }) // TODO find a better way const MovieListPopular = (props) => ( ) const MovieListPolochon = (props) => ( ) const MovieListWishlisted = (props) => ( ) const MovieListSearch = (props) => ( ) const ShowListPopular = (props) => ( ) const ShowListPolochon = (props) => ( ) const ShowListWishlisted = (props) => ( ) const ShowDetailsView = (props) => ( ) const ShowListSearch = (props) => ( ) ReactDOM.render(( ),document.getElementById('app'));