@ng-flexy/form
Version:
Flexy components and tools to build Angular 8+ applications
22 lines • 2.7 kB
JavaScript
import { Pipe } from '@angular/core';
export class FlexyOptionsMapperPipe {
constructor() { }
transform(value, mapper) {
if (!value || !Array.isArray(value) || !mapper || !mapper.value || !mapper.text) {
return [];
}
else {
return value
.filter(item => !!item && item[mapper.value])
.map(item => ({
value: item[mapper.value],
text: item[mapper.text]
}));
}
}
}
FlexyOptionsMapperPipe.decorators = [
{ type: Pipe, args: [{ name: 'flexyOptions' },] }
];
FlexyOptionsMapperPipe.ctorParameters = () => [];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy1tYXBwZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0vc3JjL2xpYi9waXBlcy9vcHRpb25zLW1hcHBlci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsZ0JBQWUsQ0FBQztJQUVoQixTQUFTLENBQUMsS0FBd0IsRUFBRSxNQUF1QztRQUN6RSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQy9FLE9BQU8sRUFBRSxDQUFDO1NBQ1g7YUFBTTtZQUNMLE9BQU8sS0FBSztpQkFDVCxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQzVDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO2dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7YUFDeEIsQ0FBQyxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7OztZQWZGLElBQUksU0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGbGV4eU1vZGVsIH0gZnJvbSAnQG5nLWZsZXh5L2NvcmUnO1xuaW1wb3J0IHsgU2VsZWN0T3B0aW9uRGF0YSB9IGZyb20gJy4uL21vZGVscy9zZWxlY3Qtb3B0aW9uLmRhdGEnO1xuXG5AUGlwZSh7IG5hbWU6ICdmbGV4eU9wdGlvbnMnIH0pXG5leHBvcnQgY2xhc3MgRmxleHlPcHRpb25zTWFwcGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBGbGV4eU1vZGVsPGFueT5bXSwgbWFwcGVyOiB7IHZhbHVlOiBzdHJpbmc7IHRleHQ6IHN0cmluZyB9KTogU2VsZWN0T3B0aW9uRGF0YVtdIHtcbiAgICBpZiAoIXZhbHVlIHx8ICFBcnJheS5pc0FycmF5KHZhbHVlKSB8fCAhbWFwcGVyIHx8ICFtYXBwZXIudmFsdWUgfHwgIW1hcHBlci50ZXh0KSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAuZmlsdGVyKGl0ZW0gPT4gISFpdGVtICYmIGl0ZW1bbWFwcGVyLnZhbHVlXSlcbiAgICAgICAgLm1hcChpdGVtID0+ICh7XG4gICAgICAgICAgICB2YWx1ZTogaXRlbVttYXBwZXIudmFsdWVdLFxuICAgICAgICAgICAgdGV4dDogaXRlbVttYXBwZXIudGV4dF1cbiAgICAgICAgICB9KSk7XG4gICAgfVxuICB9XG59XG4iXX0=