summaryrefslogtreecommitdiff
path: root/frontend/src/routes.js
blob: a707c4351f2fa816d0efd882eb41f7081c41241a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { spawn } from 'redux-saga/effects'
import usernameChoiceSaga from './sagas/usernameChoice'
import gameBrowserSaga from './sagas/gameBrowser'

// TODO: Remove spawn saga when redux-saga-router has cancelable saga on route change
export const makeSagaRoutes = wsConnection => ({
  *'/'() {
    // FIXME: spawn is a memory whore because the saga lives forever
    yield spawn(usernameChoiceSaga, wsConnection)
  },
  *'/games'() {
    yield spawn(gameBrowserSaga, wsConnection)
  }
})

import { LobbyLayout } from './layouts'
import HomePage from './containers/home'
import GameBrowser from './containers/gameBrowser'
import Error404 from './components/errors/Error404'

export const routes = [
  {
    path: '/',
    component: LobbyLayout,
    indexRoute: { component: HomePage },
    childRoutes: [
      { path: '/games', component: GameBrowser }
    ]
  },
  {
    path: '*',
    component: Error404,
  }
]
bgstack15