|
1 | 1 | <div class="s3-widget"> |
2 | 2 | <mat-form-field class="s3-widget__key" appearance="outline"> |
3 | | - <mat-label>{{normalizedLabel}}</mat-label> |
4 | | - <input matInput type="text" name="{{label}}-{{key}}" |
5 | | - [required]="required" [disabled]="disabled" [readonly]="readonly" |
6 | | - attr.data-testid="record-{{label}}-s3" |
7 | | - [(ngModel)]="value" (ngModelChange)="onFieldChange.emit($event)"> |
| 3 | + <mat-label>{{normalizedLabel()}}</mat-label> |
| 4 | + <input matInput type="text" name="{{label()}}-{{key()}}" |
| 5 | + [required]="required()" [disabled]="disabled()" [readonly]="readonly()" |
| 6 | + attr.data-testid="record-{{label()}}-s3" |
| 7 | + [ngModel]="internalValue() || value()" (ngModelChange)="onValueChange($event)"> |
8 | 8 | </mat-form-field> |
9 | 9 |
|
10 | 10 | <div class="s3-widget__actions"> |
11 | | - <input type="file" #fileInput hidden [accept]="fileAccept" (change)="onFileSelected($event)"> |
| 11 | + <input type="file" #fileInput hidden [accept]="fileAccept()" (change)="onFileSelected($event)"> |
12 | 12 | <button mat-stroked-button type="button" |
13 | | - [disabled]="disabled || readonly || isLoading" |
| 13 | + [disabled]="disabled() || readonly() || isLoading()" |
14 | 14 | (click)="fileInput.click()"> |
15 | 15 | <mat-icon>upload</mat-icon> |
16 | 16 | Upload |
17 | 17 | </button> |
18 | 18 | <button mat-stroked-button type="button" |
19 | | - *ngIf="previewUrl" |
| 19 | + *ngIf="previewUrl()" |
20 | 20 | (click)="openFile()"> |
21 | 21 | <mat-icon>open_in_new</mat-icon> |
22 | 22 | Open |
23 | 23 | </button> |
24 | 24 | </div> |
25 | 25 |
|
26 | | - <div class="s3-widget__preview" *ngIf="value"> |
27 | | - <mat-spinner *ngIf="isLoading" diameter="40"></mat-spinner> |
28 | | - <img *ngIf="isImage && previewUrl && !isLoading" |
29 | | - [src]="previewUrl" |
| 26 | + <div class="s3-widget__preview" *ngIf="internalValue() || value()"> |
| 27 | + <mat-spinner *ngIf="isLoading()" diameter="40"></mat-spinner> |
| 28 | + <img *ngIf="isImage() && previewUrl() && !isLoading()" |
| 29 | + [src]="previewUrl()" |
30 | 30 | class="s3-widget__thumbnail" |
31 | 31 | alt="Preview"> |
32 | | - <div *ngIf="!isImage && previewUrl && !isLoading" class="s3-widget__file-icon"> |
| 32 | + <div *ngIf="!isImage() && previewUrl() && !isLoading()" class="s3-widget__file-icon"> |
33 | 33 | <mat-icon>insert_drive_file</mat-icon> |
34 | | - <span class="s3-widget__filename">{{value | slice:-30}}</span> |
| 34 | + <span class="s3-widget__filename">{{(internalValue() || value()) | slice:-30}}</span> |
35 | 35 | </div> |
36 | 36 | </div> |
37 | 37 | </div> |
0 commit comments