UNPKG

fb-test-module

Version:

How to use: ``` import {store, getStore} from 'fb-test-module'; conf.DialogramApi = "API_BASE_URL"; conf.Platform = "mobile"; //use "web" if you are on webApp getStore(); //Inject store in your provider ``` and you'r readyt to go. # Base ## Act

55 lines (37 loc) 1.4 kB
//https://github.com/nearform/react-redux-typescript-saga-immutable/blob/master/src/store.ts import { combineReducers, createStore, applyMiddleware, compose } from 'redux'; import { persistReducer } from 'redux-persist'; import storage from 'redux-persist/lib/storage'; import immutableTransform from 'redux-persist-transform-immutable'; import createSagaMiddleware from 'redux-saga'; import { rootSaga } from './saga'; import { sessionReducer } from './Session/Reducer'; import { videoReducer } from './Videos/Reducer'; import { userReducer } from './User/Reducer'; export function nativeStore() { const sagaMiddleware = createSagaMiddleware(); const reducer = combineReducers({ session: sessionReducer, videos: videoReducer, user: userReducer, }); const persistConfig = { key: 'root', storage, transforms: [immutableTransform()], whitelist: [ 'session', 'user' ], }; const persistedReducer = persistReducer(persistConfig, reducer); const middlewares = [sagaMiddleware]; const composeEnhancers = window['__REDUX_DEVTOOLS_EXTENSION_COMPOSE__'] as typeof compose || compose; const nativeStore = createStore( persistedReducer, composeEnhancers(applyMiddleware(...middlewares)) ); sagaMiddleware.run(rootSaga); console.log("native"); return nativeStore; }