@mobitel.ltd/orion-pro-api
Version:
my local service
24 lines (23 loc) • 1.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fp_1 = require("lodash/fp");
const consts_1 = require("./consts");
const ignoreProperty = 'attributes';
const isIn = (arr) => (item) => fp_1.includes(item, arr);
const isValidEvent = (eventTypes, accessPoints) => fp_1.conforms({
EventTypeId: isIn(eventTypes),
AccessPointId: isIn(accessPoints),
});
const eventsCollectionHandler = fp_1.pipe([fp_1.pick(consts_1.default.EVENT_KEYS_LIST), fp_1.mapValues(consts_1.default.VALUE_NAME)]);
const personHandler = fp_1.pipe([fp_1.omit(ignoreProperty), fp_1.mapValues(consts_1.default.VALUE_NAME)]);
const keyHandler = fp_1.pipe([fp_1.pick(consts_1.default.CARD_KEYS_LIST), fp_1.mapValues(consts_1.default.VALUE_NAME)]);
exports.allPersonHandle = (data) => fp_1.pipe([fp_1.head, fp_1.get(consts_1.default.PATH_TO_INFO_ARRAY), fp_1.map(personHandler)])(data);
exports.personHandle = (data) => fp_1.pipe([fp_1.head, fp_1.get(consts_1.default.PATH_TO_INFO), personHandler])(data);
exports.getCard = fp_1.pipe([fp_1.head, fp_1.get(consts_1.default.PATH_TO_INFO), keyHandler]);
exports.getAllCards = fp_1.pipe([fp_1.head, fp_1.get(consts_1.default.PATH_TO_INFO_ARRAY), fp_1.map(keyHandler)]);
exports.getEvents = (eventTypes, accessPoints) => fp_1.pipe([
fp_1.head,
fp_1.get(consts_1.default.PATH_TO_INFO_ARRAY),
fp_1.map(eventsCollectionHandler),
fp_1.filter(isValidEvent(eventTypes, accessPoints)),
]);