import { JsonSerializer } from '../../utilities/JsonSerializer'; import { ListingItem } from '../Commons/ListingItem'; import { DataField } from './DataField'; import { FormGroup } from '@angular/forms' export class WordListData extends DataField{ public type:string; public options:Array; buildForm():FormGroup{ let formGroup = this.formBuilder.group({ type:[this.type], label:[this.label] }); let optionsFormArray = new Array(); if (this.options) { this.options.forEach(item => { let form: FormGroup = item.buildForm(); optionsFormArray.push(form) }) } formGroup.addControl('options', this.formBuilder.array(optionsFormArray)); return formGroup; } fromJSONObject(item:any):WordListData{ this.type = item.type; this.options = new JsonSerializer().fromJSONArray(item.options,ListingItem); this.label = item.label; return this; } }