main.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import {Route, Redirect, Switch} from 'react-router-dom';
  2. import {PageMain} from "./pageMain";
  3. import {UserTracks} from "./userTracks";
  4. import {CAllTracks} from "./allTracks";
  5. import {CAllUsers} from "./allUsers";
  6. import {CMyPlaylists} from "./myPlaylists";
  7. import {CProtectedRoute,CRRoute} from "../reducers/routeReducer";
  8. import {CSearchResult} from "./search";
  9. import {MyPlaylistTracks} from "./myPlaylists";
  10. export const Aside = ({children}) =>
  11. <div className='Aside'>
  12. {children}
  13. </div>
  14. export const Content = ({children}) =>
  15. <div>
  16. {children}
  17. </div>
  18. export const Main = () =>
  19. <main>
  20. <Aside>
  21. <CProtectedRoute roles={["anon", "user"]} path="/music" component={CAllUsers}/>
  22. <CProtectedRoute roles={["anon", "user"]} path="/user/:_id" component={CAllUsers}/>
  23. <CProtectedRoute roles={["anon", "user"]} path="/mymusic" component={CMyPlaylists}/>
  24. <CProtectedRoute roles={["anon", "user"]} path="/myplaylist/:_id" component={CMyPlaylists}/>
  25. <CProtectedRoute roles={["anon", "user"]} path='/' component={CAllUsers} exact/>
  26. </Aside>
  27. <Content>
  28. <Redirect from='/main' to='/'/>
  29. <Switch>
  30. <CProtectedRoute roles={["anon", "user"]} path="/search" component={CSearchResult}/>
  31. <CProtectedRoute roles={["anon", "user"]} path="/music" component={CAllTracks}/>
  32. <CProtectedRoute roles={["anon", "user"]} path='/' component={PageMain} exact/>
  33. <CProtectedRoute roles={["anon", "user"]} path="/myPlaylist/:_id" component={MyPlaylistTracks}/>
  34. <CProtectedRoute roles={["anon", "user"]} path="/user/:_id" component={UserTracks}/>
  35. <CProtectedRoute roles={["anon", "user"]} path='/mymusic' component={PageMain}/>
  36. </Switch>
  37. </Content>
  38. </main>