@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
32 lines • 5.35 kB
JavaScript
import { ComponentPrefixes } from '../../models/component';
import { DataField } from '../../models/abstract-data-field';
import { UpdateStrategy } from "../../models/update-strategy";
export var BooleanFieldValidation;
(function (BooleanFieldValidation) {
BooleanFieldValidation["REQUIRED_TRUE"] = "requiredTrue";
BooleanFieldValidation["REQUIRED"] = "required";
})(BooleanFieldValidation || (BooleanFieldValidation = {}));
export class BooleanField extends DataField {
constructor(stringId, title, value, behavior, placeholder, description, layout, validations, component, parentTaskId) {
super(stringId, title, value, behavior, placeholder, description, layout, validations, component, parentTaskId);
}
getTypedComponentType() {
return ComponentPrefixes.BOOLEAN + this.getComponentType();
}
getUpdateOnStrategy() {
return UpdateStrategy.CHANGE;
}
resolveValidations() {
const result = [];
this.validations.forEach(item => {
if (item.validationRule.includes(BooleanFieldValidation.REQUIRED_TRUE)) {
result.push(this.requiredTrue);
}
});
return result;
}
requiredTrue(control) {
return control.value === true ? null : { requiredTrue: true };
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvYm9vbGVhbi1maWVsZC9tb2RlbHMvYm9vbGVhbi1maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQVksaUJBQWlCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFtQixjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUU5RSxNQUFNLENBQU4sSUFBWSxzQkFHWDtBQUhELFdBQVksc0JBQXNCO0lBQzlCLHdEQUE4QixDQUFBO0lBQzlCLCtDQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFIVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBR2pDO0FBRUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxTQUFrQjtJQUVoRCxZQUFZLFFBQWdCLEVBQUUsS0FBYSxFQUFFLEtBQWMsRUFBRSxRQUFrQixFQUFFLFdBQW9CLEVBQ3pGLFdBQW9CLEVBQUUsTUFBZSxFQUFFLFdBQStCLEVBQUUsU0FBcUIsRUFBRSxZQUFxQjtRQUM1SCxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUVNLHFCQUFxQjtRQUN4QixPQUFPLGlCQUFpQixDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3RCLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRVMsa0JBQWtCO1FBQ3hCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUVsQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM1QixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxFQUFFO2dCQUNwRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNsQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUF3QjtRQUN6QyxPQUFPLE9BQU8sQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBQyxDQUFDO0lBQ2hFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QmVoYXZpb3J9IGZyb20gJy4uLy4uL21vZGVscy9iZWhhdmlvcic7XG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TGF5b3V0fSBmcm9tICcuLi8uLi9tb2RlbHMvbGF5b3V0JztcbmltcG9ydCB7VmFsaWRhdGlvbn0gZnJvbSAnLi4vLi4vbW9kZWxzL3ZhbGlkYXRpb24nO1xuaW1wb3J0IHtDb21wb25lbnQsIENvbXBvbmVudFByZWZpeGVzfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tcG9uZW50JztcbmltcG9ydCB7RGF0YUZpZWxkfSBmcm9tICcuLi8uLi9tb2RlbHMvYWJzdHJhY3QtZGF0YS1maWVsZCc7XG5pbXBvcnQge1VwZGF0ZU9uU3RyYXRlZ3ksIFVwZGF0ZVN0cmF0ZWd5fSBmcm9tIFwiLi4vLi4vbW9kZWxzL3VwZGF0ZS1zdHJhdGVneVwiO1xuXG5leHBvcnQgZW51bSBCb29sZWFuRmllbGRWYWxpZGF0aW9uIHtcbiAgICBSRVFVSVJFRF9UUlVFID0gJ3JlcXVpcmVkVHJ1ZScsXG4gICAgUkVRVUlSRUQgPSAncmVxdWlyZWQnXG59XG5cbmV4cG9ydCBjbGFzcyBCb29sZWFuRmllbGQgZXh0ZW5kcyBEYXRhRmllbGQ8Ym9vbGVhbj4ge1xuXG4gICAgY29uc3RydWN0b3Ioc3RyaW5nSWQ6IHN0cmluZywgdGl0bGU6IHN0cmluZywgdmFsdWU6IGJvb2xlYW4sIGJlaGF2aW9yOiBCZWhhdmlvciwgcGxhY2Vob2xkZXI/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb24/OiBzdHJpbmcsIGxheW91dD86IExheW91dCwgdmFsaWRhdGlvbnM/OiBBcnJheTxWYWxpZGF0aW9uPiwgY29tcG9uZW50PzogQ29tcG9uZW50LCBwYXJlbnRUYXNrSWQ/OiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIoc3RyaW5nSWQsIHRpdGxlLCB2YWx1ZSwgYmVoYXZpb3IsIHBsYWNlaG9sZGVyLCBkZXNjcmlwdGlvbiwgbGF5b3V0LCB2YWxpZGF0aW9ucywgY29tcG9uZW50LCBwYXJlbnRUYXNrSWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUeXBlZENvbXBvbmVudFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIENvbXBvbmVudFByZWZpeGVzLkJPT0xFQU4gKyB0aGlzLmdldENvbXBvbmVudFR5cGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VXBkYXRlT25TdHJhdGVneSgpOiBVcGRhdGVPblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIFVwZGF0ZVN0cmF0ZWd5LkNIQU5HRTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZVZhbGlkYXRpb25zKCk6IEFycmF5PFZhbGlkYXRvckZuPiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLnZhbGlkYXRpb25SdWxlLmluY2x1ZGVzKEJvb2xlYW5GaWVsZFZhbGlkYXRpb24uUkVRVUlSRURfVFJVRSkpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCh0aGlzLnJlcXVpcmVkVHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXF1aXJlZFRydWUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgICAgICByZXR1cm4gY29udHJvbC52YWx1ZSA9PT0gdHJ1ZSA/IG51bGwgOiB7cmVxdWlyZWRUcnVlOiB0cnVlfTtcbiAgICB9XG59XG4iXX0=