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