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

41 lines (40 loc) 1.79 kB
"use strict"; //https://github.com/nearform/react-redux-typescript-saga-immutable/blob/master/src/store.ts var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const redux_1 = require("redux"); const redux_persist_1 = require("redux-persist"); const storage_1 = __importDefault(require("redux-persist/lib/storage")); const redux_persist_transform_immutable_1 = __importDefault(require("redux-persist-transform-immutable")); const redux_saga_1 = __importDefault(require("redux-saga")); const saga_1 = require("./saga"); const Reducer_1 = require("./Session/Reducer"); const Reducer_2 = require("./Videos/Reducer"); const Reducer_3 = require("./User/Reducer"); function webStore() { const sagaMiddleware = redux_saga_1.default(); const reducer = redux_1.combineReducers({ session: Reducer_1.sessionReducer, videos: Reducer_2.videoReducer, user: Reducer_3.userReducer, }); const persistConfig = { key: 'root', storage: storage_1.default, transforms: [redux_persist_transform_immutable_1.default()], whitelist: [ 'session', 'user' ], }; const persistedReducer = redux_persist_1.persistReducer(persistConfig, reducer); const middlewares = [sagaMiddleware]; const composeEnhancers = window['__REDUX_DEVTOOLS_EXTENSION_COMPOSE__'] || redux_1.compose; const webStore = redux_1.createStore(persistedReducer, composeEnhancers(redux_1.applyMiddleware(...middlewares))); sagaMiddleware.run(saga_1.rootSaga); console.log("web"); return webStore; } exports.webStore = webStore;