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.99 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 FilterByPipe { /** * @param {?} arr * @param {?} path * @param {?} value * @param {?} type * @return {?} */ transform(arr, path, value, type) { if (!_.isArray(arr)) { return null; } if (_.isArray(value)) { return _.filter(arr, item => _.includes(value, _.get(item, path))); } else { switch (type) { case ">": return _.filter(arr, item => _.get(item, path) > value); case "<": return _.filter(arr, item => _.get(item, path) < value); case "not": return _.filter(arr, item => _.get(item, path) !== value); default: return _.filter(arr, item => _.get(item, path) === value); } } } } FilterByPipe.decorators = [ { type: Pipe, args: [{ name: "filterBy" },] } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJ5LnBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Admljb2RlcnMvYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9waXBlcy9maWx0ZXItYnkvZmlsdGVyLWJ5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBSzVCLE1BQU07Ozs7Ozs7O0lBQ0osU0FBUyxDQUFDLEdBQVEsRUFBRSxJQUFZLEVBQUUsS0FBVSxFQUFFLElBQVM7UUFDckQsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BFO2FBQU07WUFDTCxRQUFRLElBQUksRUFBRTtnQkFDWixLQUFLLEdBQUc7b0JBQ04sT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUMxRCxLQUFLLEdBQUc7b0JBQ04sT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUMxRCxLQUFLLEtBQUs7b0JBQ1IsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO2dCQUM1RDtvQkFDRSxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7YUFDN0Q7U0FDRjtJQUNILENBQUM7OztZQXRCRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFVBQVU7YUFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCAqIGFzIF8gZnJvbSBcImxvZGFzaFwiO1xuXG5AUGlwZSh7XG4gIG5hbWU6IFwiZmlsdGVyQnlcIlxufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJCeVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGFycjogYW55LCBwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnksIHR5cGU6IGFueSk6IGFueSB7XG4gICAgaWYgKCFfLmlzQXJyYXkoYXJyKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGlmIChfLmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICByZXR1cm4gXy5maWx0ZXIoYXJyLCBpdGVtID0+IF8uaW5jbHVkZXModmFsdWUsIF8uZ2V0KGl0ZW0sIHBhdGgpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICBjYXNlIFwiPlwiOlxuICAgICAgICAgIHJldHVybiBfLmZpbHRlcihhcnIsIGl0ZW0gPT4gXy5nZXQoaXRlbSwgcGF0aCkgPiB2YWx1ZSk7XG4gICAgICAgIGNhc2UgXCI8XCI6XG4gICAgICAgICAgcmV0dXJuIF8uZmlsdGVyKGFyciwgaXRlbSA9PiBfLmdldChpdGVtLCBwYXRoKSA8IHZhbHVlKTtcbiAgICAgICAgY2FzZSBcIm5vdFwiOlxuICAgICAgICAgIHJldHVybiBfLmZpbHRlcihhcnIsIGl0ZW0gPT4gXy5nZXQoaXRlbSwgcGF0aCkgIT09IHZhbHVlKTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gXy5maWx0ZXIoYXJyLCBpdGVtID0+IF8uZ2V0KGl0ZW0sIHBhdGgpID09PSB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=