burger-online

Форк
0
47 строк · 1.6 Кб
1
import {configureStore} from '@reduxjs/toolkit'
2
import burger from '../constructor/slice'
3
import {feedOrdersReducer as feedOrders} from '../feed-orders/reducer'
4
import ingredients from '../ingredients/slice'
5
import {socketMiddleware} from '../middleware/socket-middleware'
6
import * as actionsFeed from '../feed-orders/actions'
7
import * as actionsProfile from '../profile-orders/actions'
8
import {profileOrderReducer as profileOrder} from '../profile-orders/reducer'
9
import user from '../user/slice'
10

11
const feedOrdersMiddleWare = socketMiddleware({
12
  wsConnect: actionsFeed.feedOrdersConnect,
13
  wsConnecting: actionsFeed.feedOrdersWsConnecting,
14
  wsDisconnect: actionsFeed.feedOrdersDisconnect,
15
  onOpen: actionsFeed.feedOrdersWsOpen,
16
  onClose: actionsFeed.feedOrdersWsClose,
17
  onError: actionsFeed.feedOrdersWsError,
18
  onMessage: actionsFeed.feedOrdersWsMessage,
19
})
20

21
const profileOrderMiddleWare = socketMiddleware({
22
  wsConnect: actionsProfile.profileOrderConnect,
23
  wsConnecting: actionsProfile.profileOrderWsConnecting,
24
  wsDisconnect: actionsProfile.profileOrderDisconnect,
25
  onOpen: actionsProfile.profileOrderWsOpen,
26
  onClose: actionsProfile.profileOrderWsClose,
27
  onError: actionsProfile.profileOrderWsError,
28
  onMessage: actionsProfile.profileOrderWsMessage,
29
})
30

31
const store = configureStore({
32
  reducer: {
33
    ingredients,
34
    burger,
35
    user,
36
    feedOrders,
37
    profileOrder,
38
  },
39
  middleware: getDefaultMiddleware => {
40
    return getDefaultMiddleware().concat(feedOrdersMiddleWare, profileOrderMiddleWare)
41
  },
42
})
43

44
export type RootState = ReturnType<typeof store.getState>
45
export type AppDispatch = typeof store.dispatch
46

47
export default store
48

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.