mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
* ADF-5074 Scrollable non-multiline and full display for multiline * ADF-5074 Refactor template * ADF-5074 Scrollbar displayed only on overflow * ADF-5074 adf-textitem-ellipsis is now replaced by adf-textitem-scroll * ADF-5074 Scrollable non-multiline and full display for multiline * ADF-5074 Refactor template * ADF-5074 Scrollbar displayed only on overflow * ADF-5074 adf-textitem-ellipsis is now replaced by adf-textitem-scroll
96 lines
5.2 KiB
HTML
96 lines
5.2 KiB
HTML
<div [attr.data-automation-id]="'card-textitem-label-' + property.key" class="adf-property-label" *ngIf="showProperty() || isEditable()">{{ property.label | translate }}</div>
|
|
<div class="adf-property-value">
|
|
<span *ngIf="!isEditable()">
|
|
<span *ngIf="!isClickable(); else elseBlock" [attr.data-automation-id]="'card-textitem-value-' + property.key">
|
|
<span *ngIf="showProperty()"
|
|
[ngClass]="property.multiline?'adf-textitem-multiline':'adf-textitem-scroll'">
|
|
{{ property.displayValue }}</span>
|
|
</span>
|
|
<ng-template #elseBlock>
|
|
<div role="button" class="adf-textitem-clickable" [attr.data-automation-id]="'card-textitem-toggle-' + property.key" (click)="clicked()" fxLayout="row" fxLayoutAlign="space-between center">
|
|
<span class="adf-textitem-clickable-value" [attr.data-automation-id]="'card-textitem-value-' + property.key">
|
|
<span *ngIf="showProperty(); else elseEmptyValueBlock">{{ property.displayValue }}</span>
|
|
</span>
|
|
<button mat-icon-button fxFlex="0 0 auto" *ngIf="showClickableIcon()"
|
|
class="adf-textitem-action"
|
|
[attr.aria-label]="'CORE.METADATA.ACTIONS.EDIT' | translate"
|
|
[attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate"
|
|
[attr.data-automation-id]="'card-textitem-clickable-icon-' + property.key">
|
|
|
|
<mat-icon class="adf-textitem-icon">{{property?.icon}}</mat-icon>
|
|
</button>
|
|
</div>
|
|
</ng-template>
|
|
</span>
|
|
<span *ngIf="isEditable()">
|
|
<div *ngIf="!inEdit" role="button"
|
|
tabindex="0"
|
|
[attr.aria-label]="'CORE.METADATA.ACTIONS.EDIT' | translate"
|
|
(click)="setEditMode(true)"
|
|
(keydown.enter)="setEditMode(true)"
|
|
class="adf-textitem-readonly"
|
|
[attr.data-automation-id]="'card-textitem-toggle-' + property.key"
|
|
fxLayout="row" fxLayoutAlign="space-between center">
|
|
<span [attr.data-automation-id]="'card-textitem-value-' + property.key">
|
|
<span *ngIf="showProperty(); else elseEmptyValueBlock">{{ property.displayValue }}</span>
|
|
</span>
|
|
|
|
<button mat-icon-button fxFlex="0 0 auto"
|
|
class="adf-textitem-action"
|
|
[attr.aria-label]="'CORE.METADATA.ACTIONS.EDIT' | translate"
|
|
[attr.title]="'CORE.METADATA.ACTIONS.EDIT' | translate"
|
|
[attr.data-automation-id]="'card-textitem-edit-icon-' + property.key">
|
|
|
|
<mat-icon class="adf-textitem-icon"> create</mat-icon>
|
|
</button>
|
|
</div>
|
|
<div *ngIf="inEdit" class="adf-textitem-editable">
|
|
<div class="adf-textitem-editable-controls">
|
|
<mat-form-field floatPlaceholder="never" class="adf-input-container">
|
|
<input *ngIf="!property.multiline" #editorInput
|
|
(keydown.escape)="reset($event)"
|
|
(keydown.enter)="update($event)"
|
|
matInput
|
|
class="adf-input"
|
|
[placeholder]="property.default | translate"
|
|
[(ngModel)]="editedValue"
|
|
[attr.data-automation-id]="'card-textitem-editinput-' + property.key">
|
|
<textarea *ngIf="property.multiline" #editorInput
|
|
matInput
|
|
matTextareaAutosize
|
|
matAutosizeMaxRows="1"
|
|
matAutosizeMaxRows="5"
|
|
class="adf-textarea"
|
|
[placeholder]="property.default | translate"
|
|
[(ngModel)]="editedValue"
|
|
(input)="onTextAreaInputChange()"
|
|
[attr.data-automation-id]="'card-textitem-edittextarea-' + property.key"></textarea>
|
|
</mat-form-field>
|
|
<button mat-icon-button class="adf-textitem-action" (click)="update($event)"
|
|
[attr.aria-label]="'CORE.METADATA.ACTIONS.SAVE' | translate"
|
|
[attr.title]="'CORE.METADATA.ACTIONS.SAVE' | translate"
|
|
[attr.data-automation-id]="'card-textitem-update-' + property.key">
|
|
|
|
<mat-icon class="adf-textitem-icon">done</mat-icon>
|
|
</button>
|
|
|
|
<button mat-icon-button (click)="reset($event)" class="adf-textitem-action"
|
|
[attr.aria-label]="'CORE.METADATA.ACTIONS.CANCEL' | translate"
|
|
[attr.title]="'CORE.METADATA.ACTIONS.CANCEL' | translate"
|
|
[attr.data-automation-id]="'card-textitem-reset-' + property.key">
|
|
|
|
<mat-icon>clear</mat-icon>
|
|
</button>
|
|
</div>
|
|
<mat-error [attr.data-automation-id]="'card-textitem-error-' + property.key" class="adf-textitem-editable-error" *ngIf="hasErrors()">
|
|
<ul>
|
|
<li *ngFor="let errorMessage of errorMessages">{{ errorMessage | translate }}</li>
|
|
</ul>
|
|
</mat-error>
|
|
</div>
|
|
</span>
|
|
<ng-template #elseEmptyValueBlock>
|
|
<span class="adf-textitem-default-value">{{ property.default | translate }}</span>
|
|
</ng-template>
|
|
</div>
|