UNPKG

tuain-ng-forms-lib

Version:

Componentes y Clases Angular para la gestión de formularios TUAIN

25 lines 3.91 kB
import { FormPiecePropagate } from './piece-propagate'; import { ElementType } from './form.constants'; export class FormElement extends FormPiecePropagate { elementType = null; constructor(elementDefinition, formConfig) { super(elementDefinition, formConfig); } setAttr(attr, value) { const { name: attrName, propagate: name } = attr; try { const currentValue = this[attrName]; if (currentValue !== value) { this[attrName] = value; name && this.propagateAttribute(name, value); } } catch (e) { console.log(`Atributo ${attrName} no presente o valor ${value} inconsistente. ${e}`); } } isField() { return this.elementType === ElementType.Field; } isAction() { return this.elementType === ElementType.Action; } isTable() { return this.elementType === ElementType.Table; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1YWluLW5nLWZvcm1zLWxpYi9zcmMvbGliL2NsYXNzZXMvZm9ybXMvZWxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHL0MsTUFBTSxPQUFnQixXQUFZLFNBQVEsa0JBQWtCO0lBQzFELFdBQVcsR0FBa0IsSUFBSSxDQUFDO0lBRWxDLFlBQVksaUJBQWtDLEVBQUUsVUFBdUI7UUFDckUsS0FBSyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBc0IsRUFBRSxLQUFVO1FBQ3hDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDakQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxZQUFZLEdBQUksSUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdDLElBQUksWUFBWSxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUMxQixJQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUNoQyxJQUFJLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMvQyxDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksUUFBUSx3QkFBd0IsS0FBSyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2RixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sS0FBYyxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDckUsUUFBUSxLQUFjLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN2RSxPQUFPLEtBQWMsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0NBQ3RFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybVBpZWNlUHJvcGFnYXRlIH0gZnJvbSAnLi9waWVjZS1wcm9wYWdhdGUnO1xuaW1wb3J0IHsgRWxlbWVudFR5cGUgfSBmcm9tICcuL2Zvcm0uY29uc3RhbnRzJztcbmltcG9ydCB7IEVsZW1lbnRBdHRyaWJ1dGUsIElGb3JtQ29uZmlnLCBQaWVjZURlZmluaXRpb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2Zvcm0tY29uZmlnLmludGVyZmFjZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb3JtRWxlbWVudCBleHRlbmRzIEZvcm1QaWVjZVByb3BhZ2F0ZSB7XG4gIGVsZW1lbnRUeXBlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50RGVmaW5pdGlvbjogUGllY2VEZWZpbml0aW9uLCBmb3JtQ29uZmlnOiBJRm9ybUNvbmZpZykge1xuICAgIHN1cGVyKGVsZW1lbnREZWZpbml0aW9uLCBmb3JtQ29uZmlnKTtcbiAgfVxuXG4gIHNldEF0dHIoYXR0cjogRWxlbWVudEF0dHJpYnV0ZSwgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IHsgbmFtZTogYXR0ck5hbWUsIHByb3BhZ2F0ZTogbmFtZSB9ID0gYXR0cjtcbiAgICB0cnkge1xuICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gKHRoaXMgYXMgYW55KVthdHRyTmFtZV07XG4gICAgICBpZiAoY3VycmVudFZhbHVlICE9PSB2YWx1ZSkge1xuICAgICAgICAodGhpcyBhcyBhbnkpW2F0dHJOYW1lXSA9IHZhbHVlO1xuICAgICAgICBuYW1lICYmIHRoaXMucHJvcGFnYXRlQXR0cmlidXRlKG5hbWUsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmxvZyhgQXRyaWJ1dG8gJHthdHRyTmFtZX0gbm8gcHJlc2VudGUgbyB2YWxvciAke3ZhbHVlfSBpbmNvbnNpc3RlbnRlLiAke2V9YCk7XG4gICAgfVxuICB9XG5cbiAgaXNGaWVsZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuZWxlbWVudFR5cGUgPT09IEVsZW1lbnRUeXBlLkZpZWxkOyB9XG4gIGlzQWN0aW9uKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5lbGVtZW50VHlwZSA9PT0gRWxlbWVudFR5cGUuQWN0aW9uOyB9XG4gIGlzVGFibGUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlID09PSBFbGVtZW50VHlwZS5UYWJsZTsgfVxufVxuIl19