validation type combobox in field
This commit is contained in:
parent
1d93d2d37e
commit
75614b1229
|
@ -1,3 +1,4 @@
|
|||
export enum ValidationTypes {
|
||||
required
|
||||
None = 0,
|
||||
Required = 1
|
||||
}
|
|
@ -78,11 +78,16 @@
|
|||
</div>
|
||||
<div class="form-group col-md-5">
|
||||
<label>Validation</label>
|
||||
<select class="form-control" formControlName="validations">
|
||||
<option value="required">Required Field</option>
|
||||
<div formArrayName="validations">
|
||||
<div *ngFor="let validation of form.controls.validations.controls; let i=index">
|
||||
<select class="form-control" [formControlName]="i">
|
||||
<option *ngFor= "let option of validationsOptions" [value]="option.key">{{option.value}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<label *ngIf="showMultiplicity">
|
||||
<input type="checkbox" [(ngModel)]="isFieldMultiplicityEnabled" (ngModelChange)="onIsFieldMultiplicityEnabledChange(isFieldMultiplicityEnabled)"
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
import { Rule } from '../../models/DataSetProfile/Rule';
|
||||
import { Component, Input } from '@angular/core';
|
||||
import { FormGroup, FormControl, FormArray } from '@angular/forms';
|
||||
import { ValidationTypes } from 'app/common/validationTypes';
|
||||
|
||||
@Component({
|
||||
selector: 'field-form',
|
||||
|
@ -14,15 +15,17 @@ export class FieldFormComponent {
|
|||
@Input() dataModel: Field;
|
||||
@Input() showMultiplicity: boolean = true;
|
||||
@Input() indexPath: string;
|
||||
|
||||
validationsOptions: Array<any>;
|
||||
isFieldMultiplicityEnabled: boolean = false;
|
||||
|
||||
constructon() { }
|
||||
constructon() {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
if (this.form.get("multiplicity"))
|
||||
if (this.form.get("multiplicity").value.min > 1 || this.form.get("multiplicity").value.max > 1)
|
||||
this.isFieldMultiplicityEnabled = true;
|
||||
this.validationsOptions = [{ key: 0, value: ValidationTypes[0] }, { key: 1, value: ValidationTypes[1] }]
|
||||
// this.addNewRule();
|
||||
}
|
||||
|
||||
|
@ -43,4 +46,8 @@ export class FieldFormComponent {
|
|||
this.dataModel.visible.rules.splice(index, 1);
|
||||
(<FormArray>this.form.get("visible").get("rules")).removeAt(index);
|
||||
}
|
||||
|
||||
onchangeCombo() {
|
||||
debugger;
|
||||
}
|
||||
}
|
|
@ -7,7 +7,7 @@ import { WordListData } from '../DataField/WordListData';
|
|||
import { AutocompleteData } from '../DataField/AutocompleteData';
|
||||
import { DataField } from '../DataField/DataField';
|
||||
import { BaseModel } from '../BaseModel';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { FormGroup, FormArray, FormControl } from '@angular/forms';
|
||||
import { FormGenerator } from '../interfaces/FormGenerator';
|
||||
import { JsonSerializer } from 'app/utilities/JsonSerializer';
|
||||
import { Serializable } from '../interfaces/Serializable';
|
||||
|
@ -61,11 +61,15 @@ export class Field extends BaseModel implements Serializable<Field>,FormGenerato
|
|||
id: [this.id],
|
||||
title: [this.title],
|
||||
page: [this.page],
|
||||
ordinal:[this.ordinal],
|
||||
validations:[this.validations]
|
||||
ordinal: [this.ordinal]
|
||||
});
|
||||
|
||||
const arr = new FormArray([
|
||||
new FormControl(ValidationTypes.None)
|
||||
]);
|
||||
|
||||
//formGroup.addControl("multiplicity", this.multiplicity.buildForm());
|
||||
formGroup.addControl("validations", arr);
|
||||
formGroup.addControl("defaultValue", this.defaultValue.buildForm());
|
||||
formGroup.addControl("viewStyle", this.viewStyle.buildForm());
|
||||
formGroup.addControl("visible", this.visible.buildForm());
|
||||
|
|
Loading…
Reference in New Issue