Spaces:
Sleeping
Sleeping
File size: 6,697 Bytes
88bf46c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
<div *ngIf="(authenticationState | async) == 'authenticated'">
<!-- Admin Control Panel -->
<mat-card>
<button mat-raised-button color="primary" class="full-width" (click)="refresh()">Refresh List</button>
<div class="table-container">
<table mat-table [dataSource]="dataSource" class="mat-elevation-z8 responsive-table">
<!-- Team Column -->
<ng-container matColumnDef="team">
<mat-header-cell *matHeaderCellDef> Team </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.team }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.team" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Task Column -->
<ng-container matColumnDef="task">
<mat-header-cell *matHeaderCellDef> Task </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.task }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.task" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Dataset Column -->
<ng-container matColumnDef="dataset">
<mat-header-cell *matHeaderCellDef> Dataset </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.dataset }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.dataset" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Model Column -->
<ng-container matColumnDef="model">
<mat-header-cell *matHeaderCellDef> Model </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.model }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.model" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Link Column -->
<ng-container matColumnDef="link">
<mat-header-cell *matHeaderCellDef> Link </mat-header-cell>
<mat-cell *matCellDef="let entry">
<a *ngIf="!isEditing(entry)" [href]="entry.link" target="_blank">{{ entry.link }}</a>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.link" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Email Column -->
<ng-container matColumnDef="email">
<mat-header-cell *matHeaderCellDef> Email </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.email }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.email" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Status Column -->
<ng-container matColumnDef="status">
<mat-header-cell *matHeaderCellDef> Status </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.status }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.status" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Time Column -->
<ng-container matColumnDef="time">
<mat-header-cell *matHeaderCellDef> Time </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.time }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.time" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Is Public Column -->
<ng-container matColumnDef="is_public">
<mat-header-cell *matHeaderCellDef> Is Public </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.is_public }}</span>
<input *ngIf="isEditing(entry)" type="checkbox" [(ngModel)]="entry.is_public" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Accuracy Column -->
<ng-container matColumnDef="accuracy">
<mat-header-cell *matHeaderCellDef> Accuracy </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.accuracy | number: '1.2-2' }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.accuracy" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Precision Column -->
<ng-container matColumnDef="precision">
<mat-header-cell *matHeaderCellDef> Precision </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.precision | number: '1.2-2' }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.precision" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- Recall Column -->
<ng-container matColumnDef="recall">
<mat-header-cell *matHeaderCellDef> Recall </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.recall | number: '1.2-2'}}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.recall" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<!-- F1 Score Column -->
<ng-container matColumnDef="f1_score">
<mat-header-cell *matHeaderCellDef> F1 Score </mat-header-cell>
<mat-cell *matCellDef="let entry">
<span *ngIf="!isEditing(entry)">{{ entry.f1_score | number: '1.2-2' }}</span>
<input *ngIf="isEditing(entry)" [(ngModel)]="entry.f1_score" (keyup.enter)="saveEdit(entry)">
</mat-cell>
</ng-container>
<ng-container matColumnDef="actions">
<mat-header-cell *matHeaderCellDef class="actions-cell"> Actions </mat-header-cell>
<mat-cell *matCellDef="let entry" class="actions-cell">
<button *ngIf="!isEditing(entry)" mat-button (click)="editRow(entry)">Edit</button>
<button *ngIf="isEditing(entry)" mat-button (click)="saveEdit(entry)">Save</button>
<button *ngIf="isEditing(entry)" mat-button (click)="cancelEdit(entry)">Cancel</button>
<button mat-button color="warn" (click)="deleteRow(entry.id)">Delete</button>
</mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns; sticky: true"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns"></mat-row>
</table>
</div>
</mat-card>
</div>
|