UNPKG

clean-architecture

Version:

Utilities for implementing clean architecture using Redux

27 lines 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStore = void 0; var toolkit_1 = require("@reduxjs/toolkit"); var usecasesToReducer_1 = require("./usecasesToReducer"); var middlewareEvtAction_1 = require("./middlewareEvtAction"); function createStore(params) { var context = params.context, usecasesArr = params.usecasesArr; var _a = (0, middlewareEvtAction_1.createMiddlewareEvtAction)(usecasesArr), evtAction = _a.evtAction, middlewareEvtAction = _a.middlewareEvtAction; //NOTE: We want to let the user change the properties, sometimes all the port //can't be ready at inception. Object.assign(context, { evtAction: evtAction }); var store = (0, toolkit_1.configureStore)({ "reducer": (0, usecasesToReducer_1.usecasesToReducer)(usecasesArr), "middleware": function (getDefaultMiddleware) { return getDefaultMiddleware({ "thunk": { "extraArgument": context }, "serializableCheck": false }).concat(middlewareEvtAction); } }); var getState = store.getState, dispatch = store.dispatch; //@ts-expect-error return { getState: getState, dispatch: dispatch, evtAction: evtAction }; } exports.createStore = createStore; //# sourceMappingURL=createStore.js.map