UNPKG

clean-architecture

Version:

Utilities for implementing clean architecture using Redux

37 lines 1.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.usecasesToEvts = void 0; require("minimal-polyfills/Object.fromEntries"); var capitalize_1 = require("tsafe/capitalize"); var exclude_1 = require("tsafe/exclude"); var evt_1 = require("evt"); var wordId = "evt"; function usecasesToEvts(params) { var store = params.store, usecasesArr = params.usecasesArr, rootContext = params.rootContext; var getState = store.getState, evtAction = store.evtAction; var evts = Object.fromEntries(usecasesArr .map(function (_a) { var name = _a.name, createEvt = _a.createEvt; return (createEvt === undefined ? undefined : { name: name, createEvt: createEvt }); }) .filter((0, exclude_1.exclude)(undefined)) .map(function (_a) { var name = _a.name, createEvt = _a.createEvt; return [ "".concat(wordId).concat((0, capitalize_1.capitalize)(name)), (function () { var evt = createEvt({ evtAction: evtAction, getState: getState, rootContext: rootContext }); var evtAsync = new evt_1.Evt(); evt.attach(function (data) { return Promise.resolve().then(function () { return evtAsync.post(data); }); }); return evtAsync; })() ]; })); return { evts: evts }; } exports.usecasesToEvts = usecasesToEvts; //# sourceMappingURL=usecasesToEvts.js.map