Skip to content
Snippets Groups Projects
store.ts 795 B
Newer Older
Chloé JACOB's avatar
Chloé JACOB committed
import { applyMiddleware, combineReducers, createStore, Middleware } from 'redux'; //createstore est déprécié, mais fonctionne quand même
import { composeWithDevTools } from 'redux-devtools-extension';
import thunk from 'redux-thunk';

import instalikeApi from '../instalikeApi';
import authReducer from './auth/reducer';
import feedReducer from './feed/reducer';
import postReducer from './post/reducer';
Chloé JACOB's avatar
Chloé JACOB committed


const rootReducer = combineReducers({
    auth: authReducer,
    feed: feedReducer,
    post: postReducer,
Chloé JACOB's avatar
Chloé JACOB committed

const middleware: Middleware[] = [];

middleware.push(thunk.withExtraArgument(instalikeApi));

const store = createStore(rootReducer, composeWithDevTools(applyMiddleware(...middleware)));

export type RootState = ReturnType<typeof rootReducer>;

Chloé JACOB's avatar
Chloé JACOB committed
export default store;