UNPKG

clean-architecture

Version:

Utilities for implementing clean architecture using Redux

28 lines 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.usecasesToFunctions = exports.thunksToFunctions = exports.thunkToFunction = void 0; require("minimal-polyfills/Object.fromEntries"); var objectKeys_1 = require("tsafe/objectKeys"); function thunkToFunction(params) { var dispatch = params.dispatch, thunk = params.thunk; return function (params) { return dispatch(thunk(params)); }; } exports.thunkToFunction = thunkToFunction; function thunksToFunctions(params) { var dispatch = params.dispatch, thunks = params.thunks; return Object.fromEntries((0, objectKeys_1.objectKeys)(thunks).map(function (name) { return [name, thunkToFunction({ "thunk": thunks[name], dispatch: dispatch })]; })); } exports.thunksToFunctions = thunksToFunctions; function usecasesToFunctions(params) { var store = params.store, usecasesArr = params.usecasesArr; var functions = Object.fromEntries(usecasesArr.map(function (_a) { var name = _a.name, thunks = _a.thunks; return [ name, thunksToFunctions({ thunks: thunks, "dispatch": store.dispatch }) ]; })); return { functions: functions }; } exports.usecasesToFunctions = usecasesToFunctions; //# sourceMappingURL=usecasesToFunctions.js.map