Please enable JavaScript.
Coggle requires JavaScript to display documents.
IFieldDefinition, IFieldCollectionDefinition, dynamic-contract-fields…
IFieldDefinition
id : string
value : string
typeChamp: string
obligatoire: boolean
options : {key : string, value: string} [ ]
regex : string
collection : ICollectionFieldDefinition [ ]
IFieldCollectionDefinition
id : string
obligatoire: boolean
typeChamp : string
regex: string
value : string
options : {key : string, value : string} [ ]
unique : boolean
dynamic-contract-fields-container
Input
champsSpecifiques : IFieldDefinition [ ]
Input
risque : string
FormArray
fields
<form [formgroup}='form'>
formaArrayName="fields"
ngFor="let field of fields.controls; let i = index"
formGroupName="i"
<dynamic-contrat-fields [field]="field" [dynamicFieldsForm]="form"></dynamic-contrat-fields>
formaArrayName="collectionFields"
ngFor="let collectionField of collectionFields.controls; let collectionIndex = index"
formGroupName="collectionIndex "
<dynamic-contrat-fields [field]="collectionField"></dynamic-contrat-fields>
<button> removeCollection(collectionIndex, i)</button>
<button> addNewCollection(fields: ICollectionFieldDefinition [])</button>
this.fb.group({
type: [champ.typeChamp],
id: [champ.id],
obligatoire: [champ.obligatoire, Validators.required],
value: [champ.value],
options: [champ.options],
collectionFields: this.fb.array([])
dynamic-contrat-field.component
Input
: field : formGroup
<mat-label>{{field.value.id}}</mat-label>
[ngSwitch] = "field.value.type"
<input switchCase ="text" type="field.value.type" value="field.value.value" required="field.value.obligatoire" >
<input switchCase ="number" type="field.value.type" value="field.value.value" required="field.value.obligatoire" >
<input dateInput switchCase ="date" type="field.value.type" value="field.value.value" required="field.value.obligatoire" >
<mat-toggle switchCase ="boolean" type="field.value.type" value="field.value.value" required="field.value.obligatoire" >
<mat-select *ngSwitchCase="'list'" required="field.value.obligatoire">
<mat-option *ngFor="let item of field.value.options" [value]="item.Key">item.Value</mat-option>
</mat-select>
quote-for conversion.component
Property
champsSpecifiques : ChampSpecifiqueContratDto [ ]
<dynamic-contract-fields-container [champsSpecifiques] ="this. champsSpecifiques" [risque]="this.risque' </dynamic-contract-fields-container >
.
.
dynamic-contrat-fields.component
dynamic-contract-fields-container.component
quote-for conversion.component
.
.
.
.