UNPKG

@vicoders/angular

Version:

- [Vicoders Angular Common Module](#vicoders-angular-common-module) - [Install](#install) - [How to use](#how-to-use) - [Pipes](#pipes) - [hasItem](#hasitem) - [isArray](#isarray) - [length](#length) - [orderBy](#orderby)

41 lines 3.94 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Pipe } from "@angular/core"; import * as _ from "lodash"; export class FindByPipe { /** * @param {?} arr * @param {?} path * @param {?} value * @param {?} type * @return {?} */ transform(arr, path, value, type) { if (!_.isArray(arr)) { return null; } if (_.isArray(value)) { return _.find(arr, item => _.includes(value, _.get(item, path))); } else { switch (type) { case ">": return _.find(arr, item => _.get(item, path) > value); case "<": return _.find(arr, item => _.get(item, path) < value); case "not": return _.find(arr, item => _.get(item, path) !== value); default: return _.find(arr, item => _.get(item, path) === value); } } } } FindByPipe.decorators = [ { type: Pipe, args: [{ name: "findBy" },] } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1ieS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHZpY29kZXJzL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvcGlwZXMvZmluZC1ieS9maW5kLWJ5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBSzVCLE1BQU07Ozs7Ozs7O0lBQ0osU0FBUyxDQUFDLEdBQVEsRUFBRSxJQUFZLEVBQUUsS0FBVSxFQUFFLElBQVM7UUFDckQsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xFO2FBQU07WUFDTCxRQUFRLElBQUksRUFBRTtnQkFDWixLQUFLLEdBQUc7b0JBQ04sT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLEdBQUc7b0JBQ04sT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN4RCxLQUFLLEtBQUs7b0JBQ1IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO2dCQUMxRDtvQkFDRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7YUFDM0Q7U0FDRjtJQUNILENBQUM7OztZQXRCRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFFBQVE7YUFDZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5cbkBQaXBlKHtcbiAgbmFtZTogXCJmaW5kQnlcIlxufSlcbmV4cG9ydCBjbGFzcyBGaW5kQnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShhcnI6IGFueSwgcGF0aDogc3RyaW5nLCB2YWx1ZTogYW55LCB0eXBlOiBhbnkpOiBhbnkge1xuICAgIGlmICghXy5pc0FycmF5KGFycikpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAoXy5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIF8uZmluZChhcnIsIGl0ZW0gPT4gXy5pbmNsdWRlcyh2YWx1ZSwgXy5nZXQoaXRlbSwgcGF0aCkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgIGNhc2UgXCI+XCI6XG4gICAgICAgICAgcmV0dXJuIF8uZmluZChhcnIsIGl0ZW0gPT4gXy5nZXQoaXRlbSwgcGF0aCkgPiB2YWx1ZSk7XG4gICAgICAgIGNhc2UgXCI8XCI6XG4gICAgICAgICAgcmV0dXJuIF8uZmluZChhcnIsIGl0ZW0gPT4gXy5nZXQoaXRlbSwgcGF0aCkgPCB2YWx1ZSk7XG4gICAgICAgIGNhc2UgXCJub3RcIjpcbiAgICAgICAgICByZXR1cm4gXy5maW5kKGFyciwgaXRlbSA9PiBfLmdldChpdGVtLCBwYXRoKSAhPT0gdmFsdWUpO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBfLmZpbmQoYXJyLCBpdGVtID0+IF8uZ2V0KGl0ZW0sIHBhdGgpID09PSB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=