nakedobjects.spa
Version:
Single Page Application client for a Naked Objects application.
87 lines (76 loc) • 4.98 kB
HTML
<div class="name">
<label attr.for="{{parameterPaneId}}">{{title}}</label>
</div>
<div [formGroup]="form">
<ng-container *ngIf="parameterType === 'ref'">
<div class="value input-control text">
<!--"EntryType.AutoComplete"-->
<ng-container *ngIf="parameterEntryType === 5">
<nof-auto-complete #focus [form]="form" [model]="parameter"></nof-auto-complete>
</ng-container>
<ng-container *ngIf="isChoices() && !isMultiple()">
<select #focus [id]="parameterPaneId" [formControlName]="parameterId">
<option *ngFor="let choice of choices" [label]="choiceName(choice)" [ngValue]="choice">{{choiceName(choice)}}</option>
</select>
</ng-container>
<ng-container *ngIf="isChoices() && isMultiple()">
<select #focus [id]="parameterPaneId" multiple [formControlName]="parameterId">
<option *ngFor="let choice of choices" [label]="choiceName(choice)" [ngValue]="choice">{{choiceName(choice)}}</option>
</select>
</ng-container>
<!--"EntryType.FreeForm"-->
<ng-container *ngIf="parameterEntryType === 0">
<input #focus [id]="parameterPaneId" class="value droppable" dnd-droppable [allowDrop]="accept(parameter)" (onDropSuccess)="drop($event.dragData)"
[ngClass]="classes()" placeholder="{{description}}" type="text" [formControlName]="parameterId" [nofClear]="subject" (clear)="clear()" />
</ng-container>
</div>
</ng-container>
<ng-container *ngIf="parameterType === 'scalar'">
<div class="value input-control text">
<!--"EntryType.File"-->
<ng-container *ngIf="parameterEntryType === 6">
<input #focus [id]="parameterPaneId" type="file" placeholder="{{description}}" (change)="fileUpload($event)" />
</ng-container>
<!--"EntryType.AutoComplete"-->
<ng-container *ngIf="parameterEntryType === 5">
<nof-auto-complete #focus [form]="form" [model]="parameter"></nof-auto-complete>
</ng-container>
<ng-container *ngIf="isChoices() && !isMultiple()">
<select #focus [id]="parameterPaneId" [formControlName]="parameterId">
<option *ngFor="let choice of choices" [label]="choiceName(choice)" [ngValue]="choice">{{choiceName(choice)}}</option>
</select>
</ng-container>
<ng-container *ngIf="isChoices() && isMultiple()">
<select #focus [id]="parameterPaneId" multiple [formControlName]="parameterId">
<option *ngFor="let choice of choices" [label]="choiceName(choice)" [ngValue]="choice">{{choiceName(choice)}}</option>
</select>
</ng-container>
<!--"EntryType.FreeForm"-->
<ng-container *ngIf="parameterEntryType === 0">
<ng-container [ngSwitch]="parameterReturnType">
<ng-container *ngSwitchCase="'string'" [ngSwitch]="format">
<ng-container *ngSwitchCase="'date'">
<nof-date-picker-facade #focus [control]="control" [form]="form" [model]="parameter"></nof-date-picker-facade>
</ng-container>
<ng-container *ngSwitchCase="'time'">
<nof-time-picker-facade #focus [control]="control" [form]="form" [model]="parameter"></nof-time-picker-facade>
</ng-container>
<ng-container *ngSwitchDefault>
<input #focus *ngIf="!isMultiline" [id]="parameterPaneId" placeholder="{{description}}"
type="{{isPassword ? 'password' : 'text'}}" [formControlName]="parameterId" [nofClear]="subject" (clear)="clear()" />
<textarea #focus *ngIf="isMultiline" rows="{{rows}}" [id]="parameterPaneId" [formControlName]="parameterId"
placeholder="{{description}}"></textarea>
</ng-container>
</ng-container>
<ng-container *ngSwitchCase="'boolean'">
<input #focus #checkbox [id]="parameterPaneId" type="checkbox" [formControlName]="parameterId" />{{description}}
</ng-container>
<ng-container *ngSwitchDefault>
<input #focus [id]="parameterPaneId" type="text" placeholder="{{description}}" [formControlName]="parameterId" [nofClear]="subject" (clear)="clear()" />
</ng-container>
</ng-container>
</ng-container>
</div>
</ng-container>
</div>
<div class="validation">{{message}}</div>