angular-pipes
Version:
Angular pipes library
44 lines • 4.26 kB
JavaScript
import * as tslib_1 from "tslib";
import { Pipe, NgModule } from '@angular/core';
import { isArray, isDeepObject, unwrapDeep, deepIndexOf } from '../utils/utils';
var WithoutPipe = /** @class */ (function () {
function WithoutPipe() {
}
WithoutPipe.prototype.transform = function (input) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
if (!isArray(input) && !isDeepObject(input)) {
return input;
}
if (isDeepObject(input)) {
var unwrappedInput = unwrapDeep(input);
if (!isArray(unwrappedInput)) {
return unwrappedInput;
}
return unwrappedInput.filter(function (value) { return deepIndexOf(args, value) === -1; });
}
return input.filter(function (value) { return args.indexOf(value) === -1; });
};
WithoutPipe = tslib_1.__decorate([
Pipe({
name: 'without',
})
], WithoutPipe);
return WithoutPipe;
}());
export { WithoutPipe };
var NgWithoutPipeModule = /** @class */ (function () {
function NgWithoutPipeModule() {
}
NgWithoutPipeModule = tslib_1.__decorate([
NgModule({
declarations: [WithoutPipe],
exports: [WithoutPipe],
})
], NgWithoutPipeModule);
return NgWithoutPipeModule;
}());
export { NgWithoutPipeModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aG91dC5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1waXBlcy8iLCJzb3VyY2VzIjpbImFycmF5L3dpdGhvdXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtoRjtJQUFBO0lBaUJBLENBQUM7SUFoQkMsK0JBQVMsR0FBVCxVQUFVLEtBQVU7UUFBRSxjQUFjO2FBQWQsVUFBYyxFQUFkLHFCQUFjLEVBQWQsSUFBYztZQUFkLDZCQUFjOztRQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixJQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFBRTtnQkFDNUIsT0FBTyxjQUFjLENBQUM7YUFDdkI7WUFFRCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsVUFBQyxLQUFVLElBQUssT0FBQSxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUEvQixDQUErQixDQUFDLENBQUM7U0FDL0U7UUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBQyxLQUFVLElBQUssT0FBQSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUExQixDQUEwQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQWhCVSxXQUFXO1FBSHZCLElBQUksQ0FBQztZQUNKLElBQUksRUFBRSxTQUFTO1NBQ2hCLENBQUM7T0FDVyxXQUFXLENBaUJ2QjtJQUFELGtCQUFDO0NBQUEsQUFqQkQsSUFpQkM7U0FqQlksV0FBVztBQXVCeEI7SUFBQTtJQUFrQyxDQUFDO0lBQXRCLG1CQUFtQjtRQUovQixRQUFRLENBQUM7WUFDUixZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUM7WUFDM0IsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDO1NBQ3ZCLENBQUM7T0FDVyxtQkFBbUIsQ0FBRztJQUFELDBCQUFDO0NBQUEsQUFBbkMsSUFBbUM7U0FBdEIsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNBcnJheSwgaXNEZWVwT2JqZWN0LCB1bndyYXBEZWVwLCBkZWVwSW5kZXhPZiB9IGZyb20gJy4uL3V0aWxzL3V0aWxzJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnd2l0aG91dCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXaXRob3V0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShpbnB1dDogYW55LCAuLi5hcmdzOiBhbnlbXSk6IGFueSB7XHJcbiAgICBpZiAoIWlzQXJyYXkoaW5wdXQpICYmICFpc0RlZXBPYmplY3QoaW5wdXQpKSB7XHJcbiAgICAgIHJldHVybiBpbnB1dDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNEZWVwT2JqZWN0KGlucHV0KSkge1xyXG4gICAgICBjb25zdCB1bndyYXBwZWRJbnB1dCA9IHVud3JhcERlZXAoaW5wdXQpO1xyXG4gICAgICBpZiAoIWlzQXJyYXkodW53cmFwcGVkSW5wdXQpKSB7XHJcbiAgICAgICAgcmV0dXJuIHVud3JhcHBlZElucHV0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gdW53cmFwcGVkSW5wdXQuZmlsdGVyKCh2YWx1ZTogYW55KSA9PiBkZWVwSW5kZXhPZihhcmdzLCB2YWx1ZSkgPT09IC0xKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gaW5wdXQuZmlsdGVyKCh2YWx1ZTogYW55KSA9PiBhcmdzLmluZGV4T2YodmFsdWUpID09PSAtMSk7XHJcbiAgfVxyXG59XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1dpdGhvdXRQaXBlXSxcclxuICBleHBvcnRzOiBbV2l0aG91dFBpcGVdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmdXaXRob3V0UGlwZU1vZHVsZSB7fVxyXG4iXX0=