UNPKG

@mobitel.ltd/orion-pro-api

Version:

my local service

24 lines (23 loc) 1.45 kB
"use strict"; 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)), ]);