summaryrefslogtreecommitdiff
path: root/client/src/store.ts
blob: 48148687ae711cb0e75ccfddacc85963bbe3745b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import { configureStore } from '@reduxjs/toolkit';
import guestReducer from './slices/auth/guestSlice';
import adminReducer from './slices/auth/adminSlice';
import snackbarReducer from './slices/snackbarSlice';
import { guestSlice } from './slices/api/guestSlice';
import { adminSlice } from './slices/api/adminSlice';

const store = configureStore({
  reducer: {
    [guestSlice.reducerPath]: guestSlice.reducer,
    [adminSlice.reducerPath]: adminSlice.reducer,
    guest: guestReducer,
    admin: adminReducer,
    snackbar: snackbarReducer,
  },
  middleware: (getDefaultMiddleware) =>
    getDefaultMiddleware().concat(guestSlice.middleware, adminSlice.middleware),
});

export default store;
export type RootState = ReturnType<typeof store.getState>;
export type AppDispatch = typeof store.dispatch;