2018-02-02 11:57:24 +01:00
|
|
|
<div>
|
2018-10-02 16:33:58 +02:00
|
|
|
<h4 style="font-weight: bold">Composite Field Description</h4>
|
|
|
|
<div fxLayout="row">
|
2018-03-06 15:58:38 +01:00
|
|
|
<mat-checkbox [(ngModel)]="isComposite" (ngModelChange)="onIsCompositeChange(isComposite)">Composite Field</mat-checkbox>
|
|
|
|
<mat-checkbox [(ngModel)]="isMultiplicityEnabled" (ngModelChange)="onIsMultiplicityEnabledChange(isMultiplicityEnabled)">Multiplicity</mat-checkbox>
|
2018-10-02 16:33:58 +02:00
|
|
|
<mat-checkbox [formControl]="this.form.get('hasCommentField')"> Comment</mat-checkbox>
|
|
|
|
</div>
|
|
|
|
<div fxLayout="row">
|
|
|
|
<div fxFlex>
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput type="text" placeholder="Title" [formControl]="this.form.get('title')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
<div fxFlex>
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput type="text" placeholder="Description" [formControl]="this.form.get('description')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
<div fxFlex>
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput type="text" placeholder="Extended Description" [formControl]="this.form.get('extendedDescription')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div fxLayout="row">
|
2018-02-02 11:57:24 +01:00
|
|
|
|
2018-10-02 16:33:58 +02:00
|
|
|
<div fxFlex *ngIf="isMultiplicityEnabled">
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput placeholder="Min" type="number" [formControl]="this.form.get('multiplicity').get('min')">
|
|
|
|
</mat-form-field>
|
2018-02-02 11:57:24 +01:00
|
|
|
</div>
|
2018-10-02 16:33:58 +02:00
|
|
|
<div fxFlex *ngIf="isMultiplicityEnabled">
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput placeholder="Max" type="number" [formControl]="this.form.get('multiplicity').get('max')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
<div fxFlex>
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput type="number" placeholder="Ordinal" [formControl]="this.form.get('ordinal')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
<div fxFlex *ngIf="isComposite">
|
|
|
|
<mat-form-field class="full-width">
|
|
|
|
<input matInput type="string" placeholder="Id" [formControl]="this.form.get('id')">
|
|
|
|
</mat-form-field>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-02-02 11:57:24 +01:00
|
|
|
|
2018-10-02 16:33:58 +02:00
|
|
|
</div>
|
2018-02-02 11:57:24 +01:00
|
|
|
|
2018-10-02 16:33:58 +02:00
|
|
|
<div fxLayout="row">
|
|
|
|
<h4 style="font-weight: bold">Field Description</h4>
|
|
|
|
<div *ngIf="isComposite">
|
|
|
|
<button mat-button (click)="addNewField()" style="cursor: pointer">
|
|
|
|
Add Child Field +
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-02-02 11:57:24 +01:00
|
|
|
|
2018-10-05 17:00:54 +02:00
|
|
|
<app-field-form *ngIf="!isComposite" [form]="form.get('fields').get(''+0)" [dataModel]="dataModel.fields[0]" [showMultiplicity]="false"
|
|
|
|
[indexPath]="indexPath + 'f' + 0"></app-field-form>
|
2018-02-02 11:57:24 +01:00
|
|
|
|
2018-10-02 16:33:58 +02:00
|
|
|
<div *ngIf="isComposite">
|
|
|
|
<mat-expansion-panel *ngFor="let field of dataModel.fields let i=index;" #panel>
|
|
|
|
<mat-expansion-panel-header>
|
|
|
|
<mat-panel-title *ngIf="form.get('fields').get(''+i).get('title').value && !panel.expanded">{{i + 1}}. {{form.get('fields').get(''+i).get('title').value}}</mat-panel-title>
|
|
|
|
<div class="btn-group pull-right">
|
|
|
|
<button type="button" class="btn btn-sm" style="margin-left:5px;" (click)="DeleteField(i);">
|
|
|
|
<span class="glyphicon glyphicon-erase"></span>
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
</mat-expansion-panel-header>
|
|
|
|
<div id="{{indexPath + 'f' + i}}" *ngIf="panel.expanded">
|
2018-10-05 17:00:54 +02:00
|
|
|
<app-field-form [form]="form.get('fields').get(''+i)" [dataModel]="field" [indexPath]="indexPath + 'f' + i"></app-field-form>
|
2018-10-02 16:33:58 +02:00
|
|
|
</div>
|
|
|
|
</mat-expansion-panel>
|
|
|
|
</div>
|