import React from 'react'; import PropTypes from 'prop-types'; import { BrowserRouter as Router, Switch, Route } from 'react-router-dom'; import { Grid } from 'react-bootstrap'; import { Meteor } from 'meteor/meteor'; import { createContainer } from 'meteor/react-meteor-data'; import { Roles } from 'meteor/alanning:roles'; import Navigation from '../../components/Navigation/Navigation'; import Authenticated from '../../components/Authenticated/Authenticated'; import Public from '../../components/Public/Public'; import Index from '../../pages/Index/Index'; import Documents from '../../pages/Documents/Documents'; import NewDocument from '../../pages/NewDocument/NewDocument'; import ViewDocument from '../../pages/ViewDocument/ViewDocument'; import EditDocument from '../../pages/EditDocument/EditDocument'; import Signup from '../../pages/Signup/Signup'; import Login from '../../pages/Login/Login'; import RecoverPassword from '../../pages/RecoverPassword/RecoverPassword'; import ResetPassword from '../../pages/ResetPassword/ResetPassword'; import NotFound from '../../pages/NotFound/NotFound'; const App = props => ( {!props.loading ?
: ''}
); App.propTypes = { loading: PropTypes.bool.isRequired, }; export default createContainer(() => { const loggingIn = Meteor.loggingIn(); const user = Meteor.user(); const userId = Meteor.userId(); const loading = !Roles.subscription.ready(); return { loading, loggingIn, authenticated: !loggingIn && !!userId, name: user && user.profile ? `${user.profile.name.first} ${user.profile.name.last}` : '', roles: !loading && Roles.getRolesForUser(userId), }; }, App);