import { FormGroup } from '@angular/forms'; import { Field } from '../models/Field'; import { Component, Input, OnInit } from '@angular/core'; import { WordListData } from '../models/DataField/WordListData'; import { FormArray } from '@angular/forms/src/model'; import { ListingItem } from '../models/Commons/ListingItem'; import { JsonSerializer } from '../utilities/JsonSerializer'; @Component({ selector: 'wordlist-component', templateUrl: './wordlist-component.html' }) export class WordlistComponent implements OnInit{ @Input() dataModel: Field; @Input() form: FormGroup; private data: WordListData = new WordListData(); private options = new Array(); ngOnInit(){ this.data.type = "wordlist"; // if (this.form.get("data")) this.form.removeControl("data"); this.form.addControl("data", this.data.buildForm()); if(!this.dataModel.data) this.addNewRow(); } addNewRow(){ let wordListOptions:ListingItem = new ListingItem(); (this.form.get("data").get("options")).push(wordListOptions.buildForm()); this.data.options = []; this.data.options.push(wordListOptions); this.dataModel.data = new JsonSerializer().fromJSONObject(this.data,WordListData); } }