ngx-dynamic-dashboard
Version:
an dashboard lib for angular 10
25 lines • 2.97 kB
JavaScript
/**
* Created by jayhamilton on 2/3/17.
*/
import { Injectable } from '@angular/core';
import { FormControl, FormGroup, Validators } from '@angular/forms';
export class PropertyControlService {
constructor() {
}
toFormGroupFromPP(propertyPages) {
const group = {};
propertyPages.forEach(propertyPage => {
propertyPage.properties.forEach(property => {
group[property.key] = property.required ? new FormControl(property.value
|| '', Validators.required) : new FormControl(property.value
|| '');
});
});
return new FormGroup(group);
}
}
PropertyControlService.decorators = [
{ type: Injectable }
];
PropertyControlService.ctorParameters = () => [];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktY29udHJvbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9Vc2Vycy9iZW5saS93b3Jrc3BhY2VzL25neC1keW5hbWljLWRhc2hib2FyZC1mcmFtZXdvcmsvcHJvamVjdHMvbmd4LWR5bmFtaWMtZGFzaGJvYXJkL3NyYy8iLCJzb3VyY2VzIjpbImRhc2hib2FyZC9keW5hbWljLWZvcm0vcHJvcGVydHktY29udHJvbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRSxNQUFNLE9BQU8sc0JBQXNCO0lBRS9CO0lBQ0EsQ0FBQztJQUdELGlCQUFpQixDQUFDLGFBQW9CO1FBRWxDLE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUV0QixhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBRWpDLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUN2QyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLO3VCQUNqRSxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSzt1QkFDekQsRUFBRSxDQUFDLENBQUM7WUFDZixDQUFDLENBQUMsQ0FBQztRQUVQLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7WUF0QkosVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ3JlYXRlZCBieSBqYXloYW1pbHRvbiBvbiAyLzMvMTcuXG4gKi9cbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5Q29udHJvbFNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgfVxuXG5cbiAgICB0b0Zvcm1Hcm91cEZyb21QUChwcm9wZXJ0eVBhZ2VzOiBhbnlbXSkge1xuXG4gICAgICAgIGNvbnN0IGdyb3VwOiBhbnkgPSB7fTtcblxuICAgICAgICBwcm9wZXJ0eVBhZ2VzLmZvckVhY2gocHJvcGVydHlQYWdlID0+IHtcblxuICAgICAgICAgICAgcHJvcGVydHlQYWdlLnByb3BlcnRpZXMuZm9yRWFjaChwcm9wZXJ0eSA9PiB7XG4gICAgICAgICAgICAgICAgZ3JvdXBbcHJvcGVydHkua2V5XSA9IHByb3BlcnR5LnJlcXVpcmVkID8gbmV3IEZvcm1Db250cm9sKHByb3BlcnR5LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgIHx8ICcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSA6IG5ldyBGb3JtQ29udHJvbChwcm9wZXJ0eS52YWx1ZVxuICAgICAgICAgICAgICAgICAgICB8fCAnJyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gbmV3IEZvcm1Hcm91cChncm91cCk7XG4gICAgfVxufVxuIl19