argos/dmp-frontend/src/app/form/dynamic-form-group/group-base.ts

42 lines
1.2 KiB
TypeScript

import { Rule } from '../../entities/common/rule';
import { FieldBase } from '../fields/field-base';
export class GroupBase<T>{
value: T;
key: string;
title: string;
rules: Rule[];
groupFields: FieldBase<T>[];
visible: boolean;
order:number;
controlType:string;
section:string;
style:string;
class: string;
constructor(options: {
value?: T,
key?: string,
title?: string,
rules?: Rule[],
groupFields?: FieldBase<T>[],
visible?: boolean,
order?: number,
controlType?: string
section?: string,
style?:string
class?:string
} = {}) {
this.value = options.value;
this.key = options.key || '';
this.title = options.title || '';
this.rules = options.rules;
this.groupFields = options.groupFields;
this.visible = options.visible;
this.order = options.order === undefined ? 1 : options.order;
this.controlType = options.controlType || '';
this.section = options.section || '';
this.style = options.style || '';
this.class = options.class || '';
}
}