argos/dmp-admin/src/app/dataset-profile-form/groupfield-form/groupfield-form.component.ts

43 lines
1.2 KiB
TypeScript

import { Component, Input, OnInit } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { FieldGroup } from 'app/models/DataSetProfile/FieldGroup';
import { FieldSet } from 'app/models/DataSetProfile/FieldSet';
import { FormArray } from '@angular/forms/src/model';
import { Field } from 'app/models/DataSetProfile/Field';
@Component({
selector: 'groupfield-form',
templateUrl: './groupfield-form.component.html',
styleUrls: []
})
export class GroupFieldFormComponent {
@Input() form: FormGroup;
@Input() dataModel: FieldGroup;
@Input() indexPath: string;
constructor(){}
ngOnInit(){
//this.addNewField();
}
addNewFieldSet(){
let compositeField: FieldSet = new FieldSet();
let field: Field = new Field(); //create field at the same time
compositeField.fields.push(field);
//(<FormArray>this.form.get("compositeFields").get("fields")).push(field.buildForm());
this.dataModel.compositeFields.push(compositeField);
(<FormArray>this.form.get("compositeFields")).push(compositeField.buildForm());
}
DeleteFieldSet(index){
this.dataModel.compositeFields.splice(index, 1);
(<FormArray>this.form.get("compositeFields")).removeAt(index);
}
}