@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
47 lines • 7.39 kB
JavaScript
import { Component, Inject, Optional } from "@angular/core";
import { BooleanFieldValidation } from "../models/boolean-field";
import { DATA_FIELD_PORTAL_DATA } from "../../models/data-field-portal-data-injection-token";
import { AbstractBaseDataFieldComponent } from "../../base-component/abstract-base-data-field.component";
import * as i0 from "@angular/core";
import * as i1 from "@ngx-translate/core";
export class AbstractBooleanDefaultFieldComponent extends AbstractBaseDataFieldComponent {
_translate;
constructor(_translate, dataFieldPortalData) {
super(dataFieldPortalData);
this._translate = _translate;
}
getErrorMessage() {
if (this.formControlRef.hasError(BooleanFieldValidation.REQUIRED)) {
return this._translate.instant('dataField.validations.required');
}
else if (this.formControlRef.hasError(BooleanFieldValidation.REQUIRED_TRUE)) {
return this.resolveErrorMessage(this.dataField, BooleanFieldValidation.REQUIRED_TRUE, this._translate.instant('dataField.validations.requiredTrue'));
}
return '';
}
createValueLabel() {
return this._translate.instant('dataField.values.boolean.' + this.dataField.value);
}
resolveErrorMessage(dataField, search, generalMessage) {
const validation = dataField.validations.find(value => value.validationRule.includes(search));
if (validation.validationMessage && validation.validationMessage !== '') {
return validation.validationMessage;
}
return generalMessage;
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractBooleanDefaultFieldComponent, deps: [{ token: i1.TranslateService }, { token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AbstractBooleanDefaultFieldComponent, selector: "ncc-abstract-boolean-default-field", usesInheritance: true, ngImport: i0, template: '', isInline: true });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractBooleanDefaultFieldComponent, decorators: [{
type: Component,
args: [{
selector: 'ncc-abstract-boolean-default-field',
template: ''
}]
}], ctorParameters: () => [{ type: i1.TranslateService }, { type: undefined, decorators: [{
type: Optional
}, {
type: Inject,
args: [DATA_FIELD_PORTAL_DATA]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtYm9vbGVhbi1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvYm9vbGVhbi1maWVsZC9ib29sZWFuLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtYm9vbGVhbi1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFlLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0UsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLHFEQUFxRCxDQUFDO0FBQ2hILE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHlEQUF5RCxDQUFDOzs7QUFNdkcsTUFBTSxPQUFnQixvQ0FBcUMsU0FBUSw4QkFBNEM7SUFFckY7SUFBdEIsWUFBc0IsVUFBNEIsRUFDTSxtQkFBc0Q7UUFDMUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFGVCxlQUFVLEdBQVYsVUFBVSxDQUFrQjtJQUdsRCxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQy9ELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNwRTthQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDM0UsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyxhQUFhLEVBQ2hGLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDLENBQUMsQ0FBQztTQUN0RTtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGdCQUFnQjtRQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVPLG1CQUFtQixDQUFDLFNBQXVCLEVBQUUsTUFBYyxFQUFFLGNBQXNCO1FBQ3ZGLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM5RixJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsSUFBSSxVQUFVLENBQUMsaUJBQWlCLEtBQUssRUFBRSxFQUFFO1lBQ3JFLE9BQU8sVUFBVSxDQUFDLGlCQUFpQixDQUFDO1NBQ3ZDO1FBQ0QsT0FBTyxjQUFjLENBQUM7SUFDMUIsQ0FBQzt3R0EzQmlCLG9DQUFvQyxrREFHdEIsc0JBQXNCOzRGQUhwQyxvQ0FBb0MsaUdBRjVDLEVBQUU7OzRGQUVNLG9DQUFvQztrQkFKekQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0NBQW9DO29CQUM5QyxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBSWdCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdCwgT3B0aW9uYWx9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0Jvb2xlYW5GaWVsZCwgQm9vbGVhbkZpZWxkVmFsaWRhdGlvbn0gZnJvbSBcIi4uL21vZGVscy9ib29sZWFuLWZpZWxkXCI7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQge0RBVEFfRklFTERfUE9SVEFMX0RBVEEsIERhdGFGaWVsZFBvcnRhbERhdGF9IGZyb20gXCIuLi8uLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW5cIjtcbmltcG9ydCB7QWJzdHJhY3RCYXNlRGF0YUZpZWxkQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vYmFzZS1jb21wb25lbnQvYWJzdHJhY3QtYmFzZS1kYXRhLWZpZWxkLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1ib29sZWFuLWRlZmF1bHQtZmllbGQnLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEJvb2xlYW5EZWZhdWx0RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEJhc2VEYXRhRmllbGRDb21wb25lbnQ8Qm9vbGVhbkZpZWxkPiB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERBVEFfRklFTERfUE9SVEFMX0RBVEEpIGRhdGFGaWVsZFBvcnRhbERhdGE6IERhdGFGaWVsZFBvcnRhbERhdGE8Qm9vbGVhbkZpZWxkPikge1xuICAgICAgICBzdXBlcihkYXRhRmllbGRQb3J0YWxEYXRhKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RXJyb3JNZXNzYWdlKCkge1xuICAgICAgICBpZiAodGhpcy5mb3JtQ29udHJvbFJlZi5oYXNFcnJvcihCb29sZWFuRmllbGRWYWxpZGF0aW9uLlJFUVVJUkVEKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdkYXRhRmllbGQudmFsaWRhdGlvbnMucmVxdWlyZWQnKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZvcm1Db250cm9sUmVmLmhhc0Vycm9yKEJvb2xlYW5GaWVsZFZhbGlkYXRpb24uUkVRVUlSRURfVFJVRSkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc29sdmVFcnJvck1lc3NhZ2UodGhpcy5kYXRhRmllbGQsIEJvb2xlYW5GaWVsZFZhbGlkYXRpb24uUkVRVUlSRURfVFJVRSxcbiAgICAgICAgICAgICAgICB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCgnZGF0YUZpZWxkLnZhbGlkYXRpb25zLnJlcXVpcmVkVHJ1ZScpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZVZhbHVlTGFiZWwoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdkYXRhRmllbGQudmFsdWVzLmJvb2xlYW4uJyArIHRoaXMuZGF0YUZpZWxkLnZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc29sdmVFcnJvck1lc3NhZ2UoZGF0YUZpZWxkOiBCb29sZWFuRmllbGQsIHNlYXJjaDogc3RyaW5nLCBnZW5lcmFsTWVzc2FnZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRpb24gPSBkYXRhRmllbGQudmFsaWRhdGlvbnMuZmluZCh2YWx1ZSA9PiB2YWx1ZS52YWxpZGF0aW9uUnVsZS5pbmNsdWRlcyhzZWFyY2gpKTtcbiAgICAgICAgaWYgKHZhbGlkYXRpb24udmFsaWRhdGlvbk1lc3NhZ2UgJiYgdmFsaWRhdGlvbi52YWxpZGF0aW9uTWVzc2FnZSAhPT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWxpZGF0aW9uLnZhbGlkYXRpb25NZXNzYWdlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBnZW5lcmFsTWVzc2FnZTtcbiAgICB9XG59XG4iXX0=