UNPKG

react-application-core

Version:

A react-based application core for the business applications.

43 lines 1.89 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findCommandResultByUuid = exports.findCommandResult = exports.channelsEntityResponsePayloadsMapper = void 0; var R = require("ramda"); var util_1 = require("../../util"); var payload_wrapper_1 = require("./payload.wrapper"); /** * @stable [21.05.2018] * @param {string} ip * @param {IReduxChannelsEntity} channelsEntity * @returns {PayloadWrapper[]} */ exports.channelsEntityResponsePayloadsMapper = function (ip, channelsEntity) { var channel = channelsEntity[ip]; return util_1.orNull(!R.isNil(channel) && !R.isNil(channel.messages), function () { return channel.messages.map(function (message) { return new payload_wrapper_1.PayloadWrapper(message.data); }); }); }; /** * @stable [23.05.2018] * @param {string} ip * @param {IReduxChannelsEntity} channelsEntity * @param {(cResult: CommandResult) => boolean} predicate * @returns {CommandResult} */ exports.findCommandResult = function (ip, channelsEntity, predicate) { var responsePayloads = exports.channelsEntityResponsePayloadsMapper(ip, channelsEntity); if (responsePayloads) { var responsePayload_1 = responsePayloads .find(function (rPayload) { return !R.isNil(rPayload.getCommandResult()) && predicate(rPayload.getPayload()); }); return util_1.orNull(responsePayload_1, function () { return responsePayload_1.getCommandResult(); }); } return null; }; /** * @stable [23.05.2018] * @param {string} ip * @param {IReduxChannelsEntity} channelsEntity * @param {string} uuid * @returns {CommandResult} */ exports.findCommandResultByUuid = function (ip, channelsEntity, uuid) { return exports.findCommandResult(ip, channelsEntity, function (cResult) { return cResult.getUuid() === uuid; }); }; //# sourceMappingURL=protocol.support.js.map