angular-pipes
Version:
Angular pipes library
42 lines • 4.13 kB
JavaScript
import * as tslib_1 from "tslib";
import { Pipe, NgModule } from '@angular/core';
import { isObject, isArray, isNil } from '../utils/utils';
let DefaultsPipe = class DefaultsPipe {
transform(input, defaults) {
if (!isObject(defaults)) {
return input;
}
if (isNil(input)) {
return defaults;
}
if (isArray(input)) {
return input.map((item) => {
if (isObject(item)) {
return Object.assign({}, defaults, item);
}
if (isNil(item)) {
return defaults;
}
return item;
});
}
if (isObject(input)) {
return Object.assign({}, defaults, input);
}
return input;
}
};
DefaultsPipe = tslib_1.__decorate([
Pipe({ name: 'defaults' })
], DefaultsPipe);
export { DefaultsPipe };
let NgDefaultsPipeModule = class NgDefaultsPipeModule {
};
NgDefaultsPipeModule = tslib_1.__decorate([
NgModule({
declarations: [DefaultsPipe],
exports: [DefaultsPipe],
})
], NgDefaultsPipeModule);
export { NgDefaultsPipeModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdHMucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItcGlwZXMvIiwic291cmNlcyI6WyJvYmplY3QvZGVmYXVsdHMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFELElBQWEsWUFBWSxHQUF6QixNQUFhLFlBQVk7SUFDdkIsU0FBUyxDQUFDLEtBQVUsRUFBRSxRQUFhO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdkIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2hCLE9BQU8sUUFBUSxDQUFDO1NBQ2pCO1FBRUQsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEIsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNsQixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztpQkFDMUM7Z0JBRUQsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ2YsT0FBTyxRQUFRLENBQUM7aUJBQ2pCO2dCQUVELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzNDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0YsQ0FBQTtBQTlCWSxZQUFZO0lBRHhCLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQztHQUNkLFlBQVksQ0E4QnhCO1NBOUJZLFlBQVk7QUFvQ3pCLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0NBQUcsQ0FBQTtBQUF2QixvQkFBb0I7SUFKaEMsUUFBUSxDQUFDO1FBQ1IsWUFBWSxFQUFFLENBQUMsWUFBWSxDQUFDO1FBQzVCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztLQUN4QixDQUFDO0dBQ1csb0JBQW9CLENBQUc7U0FBdkIsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNPYmplY3QsIGlzQXJyYXksIGlzTmlsIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMnO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAnZGVmYXVsdHMnIH0pXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0c1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0oaW5wdXQ6IGFueSwgZGVmYXVsdHM6IGFueSk6IGFueSB7XHJcbiAgICBpZiAoIWlzT2JqZWN0KGRlZmF1bHRzKSkge1xyXG4gICAgICByZXR1cm4gaW5wdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlzTmlsKGlucHV0KSkge1xyXG4gICAgICByZXR1cm4gZGVmYXVsdHM7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlzQXJyYXkoaW5wdXQpKSB7XHJcbiAgICAgIHJldHVybiBpbnB1dC5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChpc09iamVjdChpdGVtKSkge1xyXG4gICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRzLCBpdGVtKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChpc05pbChpdGVtKSkge1xyXG4gICAgICAgICAgcmV0dXJuIGRlZmF1bHRzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChpc09iamVjdChpbnB1dCkpIHtcclxuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRzLCBpbnB1dCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGlucHV0O1xyXG4gIH1cclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtEZWZhdWx0c1BpcGVdLFxyXG4gIGV4cG9ydHM6IFtEZWZhdWx0c1BpcGVdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmdEZWZhdWx0c1BpcGVNb2R1bGUge31cclxuIl19