argos/dmp-frontend/src/app/form/fields/field-base.ts

37 lines
1.0 KiB
TypeScript

import { Rule } from '../../entities/common/rule';
export class FieldBase<T>{
value: T;
key: string;
label: string;
required:boolean;
order:number;
rules: Rule[];
visible: boolean;
controlType:string;
group:string;
description:string;
constructor(options: {
value?: T,
key?: string,
label?: string,
required?:boolean,
order?: number,
rules?: Rule[],
visible?: boolean,
controlType?: string
group?: string
description?: string,
} = {}) {
this.value = options.value;
this.key = options.key || '';
this.label = options.label || '';
this.required = !! options.required;
this.order = options.order === undefined ? 1 : options.order;
this.rules = options.rules;
this.visible = options.visible;
this.controlType = options.controlType || '';
this.group = options.group || '';
this.description = options.description || '';
}
}