UNPKG

@eponacon/utils-form-group-lib

Version:

Methods to help validate and manipulate the material form group

42 lines 4.96 kB
import { Injectable } from '@angular/core'; import * as i0 from "@angular/core"; export class UtilsFormGroupLibService { constructor() { } validateFormGroup(form) { let validField = true; Object.entries(form.controls).forEach(([, val]) => { let valItemForm = val; if (valItemForm.status == 'INVALID') { validField = false; valItemForm.markAsTouched(); } }); return validField; } insertValuesFormGroup(dataObject, form) { try { Object.entries(dataObject).forEach(([key, val]) => { if (!form.controls[`${key}`]) return; if (typeof val === 'boolean') { form.controls[`${key}`].setValue(val); } else { form.controls[`${key}`].setValue(`${val !== null ? val : ''}`); } }); } catch (error) { console.warn('Error insert data fom form group'); } } } UtilsFormGroupLibService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: UtilsFormGroupLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); UtilsFormGroupLibService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: UtilsFormGroupLibService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: UtilsFormGroupLibService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: function () { return []; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtZm9ybS1ncm91cC1saWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxzLWZvcm0tZ3JvdXAtbGliL3NyYy9saWIvdXRpbHMtZm9ybS1ncm91cC1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLGdCQUFlLENBQUM7SUFFVCxpQkFBaUIsQ0FBQyxJQUFlO1FBQ3RDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQztRQUN0QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRTtZQUNoRCxJQUFJLFdBQVcsR0FBRyxHQUFrQixDQUFDO1lBQ3JDLElBQUksV0FBVyxDQUFDLE1BQU0sSUFBSSxTQUFTLEVBQUU7Z0JBQ25DLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ25CLFdBQVcsQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUM3QjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELHFCQUFxQixDQUFDLFVBQWUsRUFBRSxJQUFlO1FBQ3BELElBQUk7WUFDRixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUM7b0JBQUUsT0FBTztnQkFFckMsSUFBSSxPQUFPLEdBQUcsS0FBSyxTQUFTLEVBQUU7b0JBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDdkM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2lCQUNoRTtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0NBQWtDLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7O3FIQTlCVSx3QkFBd0I7eUhBQXhCLHdCQUF3QixjQUZ2QixNQUFNOzJGQUVQLHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVXRpbHNGb3JtR3JvdXBMaWJTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHB1YmxpYyB2YWxpZGF0ZUZvcm1Hcm91cChmb3JtOiBGb3JtR3JvdXApIHtcbiAgICBsZXQgdmFsaWRGaWVsZCA9IHRydWU7XG4gICAgT2JqZWN0LmVudHJpZXMoZm9ybS5jb250cm9scykuZm9yRWFjaCgoWywgdmFsXSkgPT4ge1xuICAgICAgbGV0IHZhbEl0ZW1Gb3JtID0gdmFsIGFzIEZvcm1Db250cm9sO1xuICAgICAgaWYgKHZhbEl0ZW1Gb3JtLnN0YXR1cyA9PSAnSU5WQUxJRCcpIHtcbiAgICAgICAgdmFsaWRGaWVsZCA9IGZhbHNlO1xuICAgICAgICB2YWxJdGVtRm9ybS5tYXJrQXNUb3VjaGVkKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gdmFsaWRGaWVsZDtcbiAgfVxuXG4gIGluc2VydFZhbHVlc0Zvcm1Hcm91cChkYXRhT2JqZWN0OiBhbnksIGZvcm06IEZvcm1Hcm91cCkge1xuICAgIHRyeSB7XG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhT2JqZWN0KS5mb3JFYWNoKChba2V5LCB2YWxdKSA9PiB7XG4gICAgICAgIGlmICghZm9ybS5jb250cm9sc1tgJHtrZXl9YF0pIHJldHVybjtcblxuICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgZm9ybS5jb250cm9sc1tgJHtrZXl9YF0uc2V0VmFsdWUodmFsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmb3JtLmNvbnRyb2xzW2Ake2tleX1gXS5zZXRWYWx1ZShgJHt2YWwgIT09IG51bGwgPyB2YWwgOiAnJ31gKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUud2FybignRXJyb3IgaW5zZXJ0IGRhdGEgZm9tIGZvcm0gZ3JvdXAnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==