ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
52 lines • 6.23 kB
JavaScript
import { UntypedFormControl } from '@angular/forms';
export class OFormControl extends UntypedFormControl {
constructor(formState = null, validatorOrOpts, asyncValidator) {
super(formState, validatorOrOpts, asyncValidator);
}
markAsTouched(opts = {}) {
super.markAsTouched(opts);
if (!this.fControlChildren) {
return;
}
this.fControlChildren.forEach(x => {
if (x instanceof UntypedFormControl) {
x.markAsTouched(opts);
}
else if (x.getFormControl()) {
x.getFormControl().markAsTouched();
}
});
}
markAsDirty(opts = {}) {
super.markAsDirty(opts);
if (!this.fControlChildren) {
return;
}
this.fControlChildren.forEach(x => {
if (x instanceof UntypedFormControl) {
x.markAsDirty(opts);
}
else if (x.getFormControl()) {
x.getFormControl().markAsDirty();
}
});
}
markAsPristine(opts = {}) {
super.markAsPristine(opts);
if (!this.fControlChildren) {
return;
}
this.fControlChildren.forEach(x => {
if (x instanceof UntypedFormControl) {
x.markAsPristine(opts);
}
else if (x.getFormControl()) {
x.getFormControl().markAsPristine();
}
});
}
getValue() {
return this.value;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLWNvbnRyb2wuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9vLWZvcm0tY29udHJvbC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRDLGtCQUFrQixFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFJM0csTUFBTSxPQUFPLFlBQWEsU0FBUSxrQkFBa0I7SUFHbEQsWUFDRSxZQUFpQixJQUFJLEVBQ3JCLGVBQTZFLEVBQzdFLGNBQTZEO1FBRTdELEtBQUssQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxhQUFhLENBQUMsT0FBK0IsRUFBRTtRQUM3QyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsWUFBWSxrQkFBa0IsRUFBRTtnQkFDbkMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN2QjtpQkFBTSxJQUFJLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRTtnQkFDN0IsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3BDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQStCLEVBQUU7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzFCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFlBQVksa0JBQWtCLEVBQUU7Z0JBQ25DLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDckI7aUJBQU0sSUFBSSxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7Z0JBQzdCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUErQixFQUFFO1FBQzlDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxZQUFZLGtCQUFrQixFQUFFO2dCQUNuQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3hCO2lCQUFNLElBQUksQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO2dCQUM3QixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7YUFDckM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Q0FJRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbE9wdGlvbnMsIEFzeW5jVmFsaWRhdG9yRm4sIFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE9Gb3JtRGF0YUNvbXBvbmVudCB9IGZyb20gJy4uL28tZm9ybS1kYXRhLWNvbXBvbmVudC5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBPRm9ybUNvbnRyb2wgZXh0ZW5kcyBVbnR5cGVkRm9ybUNvbnRyb2wge1xuICBwdWJsaWMgZkNvbnRyb2xDaGlsZHJlbjogKFVudHlwZWRGb3JtQ29udHJvbCB8IE9Gb3JtRGF0YUNvbXBvbmVudClbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBmb3JtU3RhdGU6IGFueSA9IG51bGwsXG4gICAgdmFsaWRhdG9yT3JPcHRzPzogVmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdIHwgQWJzdHJhY3RDb250cm9sT3B0aW9ucyB8IG51bGwsXG4gICAgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuIHwgQXN5bmNWYWxpZGF0b3JGbltdIHwgbnVsbFxuICApIHtcbiAgICBzdXBlcihmb3JtU3RhdGUsIHZhbGlkYXRvck9yT3B0cywgYXN5bmNWYWxpZGF0b3IpO1xuICB9XG5cbiAgbWFya0FzVG91Y2hlZChvcHRzOiB7IG9ubHlTZWxmPzogYm9vbGVhbiB9ID0ge30pOiB2b2lkIHtcbiAgICBzdXBlci5tYXJrQXNUb3VjaGVkKG9wdHMpO1xuICAgIGlmICghdGhpcy5mQ29udHJvbENoaWxkcmVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZkNvbnRyb2xDaGlsZHJlbi5mb3JFYWNoKHggPT4ge1xuICAgICAgaWYgKHggaW5zdGFuY2VvZiBVbnR5cGVkRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgeC5tYXJrQXNUb3VjaGVkKG9wdHMpO1xuICAgICAgfSBlbHNlIGlmICh4LmdldEZvcm1Db250cm9sKCkpIHtcbiAgICAgICAgeC5nZXRGb3JtQ29udHJvbCgpLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG1hcmtBc0RpcnR5KG9wdHM6IHsgb25seVNlbGY/OiBib29sZWFuIH0gPSB7fSk6IHZvaWQge1xuICAgIHN1cGVyLm1hcmtBc0RpcnR5KG9wdHMpO1xuICAgIGlmICghdGhpcy5mQ29udHJvbENoaWxkcmVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZkNvbnRyb2xDaGlsZHJlbi5mb3JFYWNoKHggPT4ge1xuICAgICAgaWYgKHggaW5zdGFuY2VvZiBVbnR5cGVkRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgeC5tYXJrQXNEaXJ0eShvcHRzKTtcbiAgICAgIH0gZWxzZSBpZiAoeC5nZXRGb3JtQ29udHJvbCgpKSB7XG4gICAgICAgIHguZ2V0Rm9ybUNvbnRyb2woKS5tYXJrQXNEaXJ0eSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbWFya0FzUHJpc3RpbmUob3B0czogeyBvbmx5U2VsZj86IGJvb2xlYW4gfSA9IHt9KTogdm9pZCB7XG4gICAgc3VwZXIubWFya0FzUHJpc3RpbmUob3B0cyk7XG4gICAgaWYgKCF0aGlzLmZDb250cm9sQ2hpbGRyZW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5mQ29udHJvbENoaWxkcmVuLmZvckVhY2goeCA9PiB7XG4gICAgICBpZiAoeCBpbnN0YW5jZW9mIFVudHlwZWRGb3JtQ29udHJvbCkge1xuICAgICAgICB4Lm1hcmtBc1ByaXN0aW5lKG9wdHMpO1xuICAgICAgfSBlbHNlIGlmICh4LmdldEZvcm1Db250cm9sKCkpIHtcbiAgICAgICAgeC5nZXRGb3JtQ29udHJvbCgpLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgfVxuXG4gIC8qKnNldFZhbHVlKHZhbHVlOiBhbnksIG9wdGlvbnM6IHsgfSA9PiBOb3Qgb3ZlcnJpZGUgdGhpcyBtZXRob2QgYmVjYXVzZSB0aGVyZSBpcyBhIGNhc2Ugd2hlcmUgdGhlIGNoaWxkcmVuIGhhdmUgYSBkaWZmZXJlbnQgdmFsdWUgdGhhbiB0aGUgbWFpbiBvbmVcbiAgICovXG59XG4iXX0=