Skip to content

Commit 53e3bce

Browse files
committed
[DSC-2256] Migrate to control flow
1 parent 1c1f307 commit 53e3bce

258 files changed

Lines changed: 3537 additions & 3162 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/app/admin/admin-edit-user-agreement/admin-edit-user-agreement.component.html

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
<div class="container">
22
<h2>{{'admin.edit-user-agreement.header' | translate}}</h2>
33
<ds-alert [type]="'alert-info'" [dismissible]="true" [content]="'admin.edit-user-agreement.markdown' | translate"></ds-alert>
4-
<div *ngFor="let userAgreementText of (userAgreementTexts | keyvalue)" class="form-group">
5-
<label>{{userAgreementText.value.languageLabel}}</label>
6-
<textarea class="col-md-12 m-2" [(ngModel)]="userAgreementText.value.text" rows="10"></textarea>
7-
</div>
4+
@for (userAgreementText of (userAgreementTexts | keyvalue); track userAgreementText) {
5+
<div class="form-group">
6+
<label>{{userAgreementText.value.languageLabel}}</label>
7+
<textarea class="col-md-12 m-2" [(ngModel)]="userAgreementText.value.text" rows="10"></textarea>
8+
</div>
9+
}
810
<div class="col-md">
911
<button class="btn btn-primary float-right m-2" (click)="$event.preventDefault();confirmEdit(content)" >
1012
<span>

src/app/admin/admin-edit-user-agreement/admin-edit-user-agreement.component.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
import {
2-
KeyValuePipe,
3-
NgForOf,
4-
} from '@angular/common';
1+
import { KeyValuePipe } from '@angular/common';
52
import {
63
Component,
74
OnDestroy,
@@ -34,7 +31,6 @@ import { NotificationsService } from '../../shared/notifications/notifications.s
3431
AlertComponent,
3532
FormsModule,
3633
KeyValuePipe,
37-
NgForOf,
3834
TranslateModule,
3935
],
4036
standalone: true,

src/app/admin/edit-cms-metadata/edit-cms-metadata.component.html

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,56 @@
1-
<ng-container *ngIf="(editMode | async); then editMetadataTemplate else selectMetadataTemplate"></ng-container>
2-
3-
<ng-template #selectMetadataTemplate>
1+
@if ((editMode | async)) {
2+
<div class="container">
3+
<h2 class=" mb-5">{{'admin.edit-cms-metadata.title' | translate}} '{{selectedMetadata}}'</h2>
4+
<div class="row">
5+
<div class="col-md">
6+
@for (lang of languageList; track lang) {
7+
<div class="form-group">
8+
<label>{{languageLabel(lang)}}</label>
9+
<textarea class="col-md-12 m-2" [ngModel]="selectedMetadataValues.get(lang)" (ngModelChange)="selectedMetadataValues.set(lang, $event)" rows="10"></textarea>
10+
</div>
11+
}
12+
</div>
13+
</div>
14+
<ng-container *ngTemplateOutlet="editMetadataButtonsTemplate"></ng-container>
15+
</div>
16+
} @else {
417
<div class="container">
518
<h3 class="mb-4">{{'menu.section.cms.edit.metadata.head' | translate}}</h3>
619
<div class="input-group">
720
<select class="form-control col-md-4 mr-3 mb-2" aria-label="Select metadata" [(ngModel)]="selectedMetadata">
821
<option [ngValue]="undefined" disabled selected>{{'admin.edit-cms-metadata.select-metadata' | translate}}</option>
9-
<option *ngFor="let md of metadataList" [value]="md">{{md}}</option>
22+
@for (md of metadataList; track md) {
23+
<option [value]="md">{{md}}</option>
24+
}
1025
</select>
1126
<span class="input-group-btn">
1227
<button id="edit-metadata-btn" class="btn btn-primary" (click)="editSelectedMetadata()" [dsBtnDisabled]="!selectedMetadata">
1328
<i class="fas fa-edit mr-1"></i>
1429
{{'admin.edit-cms-metadata.edit-button' | translate}}
1530
</button>
16-
</span>
31+
</span>
1732
</div>
1833
</div>
19-
</ng-template>
34+
}
35+
2036

2137

22-
<ng-template #editMetadataTemplate>
23-
<div class="container">
24-
<h2 class=" mb-5">{{'admin.edit-cms-metadata.title' | translate}} '{{selectedMetadata}}'</h2>
25-
<div class="row">
26-
<div class="col-md">
27-
<div *ngFor="let lang of languageList" class="form-group">
28-
<label>{{languageLabel(lang)}}</label>
29-
<textarea class="col-md-12 m-2" [ngModel]="selectedMetadataValues.get(lang)" (ngModelChange)="selectedMetadataValues.set(lang, $event)" rows="10"></textarea>
30-
</div>
31-
</div>
32-
</div>
33-
<ng-container *ngTemplateOutlet="editMetadataButtonsTemplate"></ng-container>
34-
</div>
35-
</ng-template>
3638

3739

3840
<ng-template #editMetadataButtonsTemplate>
3941
<div class="row">
4042
<div class="col-md">
4143
<button id="save-metadata-btn" class="btn btn-primary float-right m-2" (click)="saveMetadata()">
42-
<span>
43-
<i class="fas fa-save mr-1"></i>
44-
{{ 'admin.edit-cms-metadata.save-button' | translate }}
45-
</span>
44+
<span>
45+
<i class="fas fa-save mr-1"></i>
46+
{{ 'admin.edit-cms-metadata.save-button' | translate }}
47+
</span>
4648
</button>
4749
<button id="back-metadata-btn" class="btn btn-outline-secondary float-right m-2" (click)="back()">
48-
<span>
49-
<i class="fas fa-arrow-left mr-1"></i>
50-
{{ 'admin.edit-cms-metadata.back-button' | translate }}
51-
</span>
50+
<span>
51+
<i class="fas fa-arrow-left mr-1"></i>
52+
{{ 'admin.edit-cms-metadata.back-button' | translate }}
53+
</span>
5254
</button>
5355
</div>
5456
</div>

src/app/admin/edit-cms-metadata/edit-cms-metadata.component.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import {
22
AsyncPipe,
3-
NgForOf,
4-
NgIf,
53
NgTemplateOutlet,
64
} from '@angular/common';
75
import {
@@ -34,8 +32,6 @@ import { NotificationsService } from '../../shared/notifications/notifications.s
3432
AsyncPipe,
3533
BtnDisabledDirective,
3634
FormsModule,
37-
NgForOf,
38-
NgIf,
3935
NgTemplateOutlet,
4036
TranslateModule,
4137
],

src/app/app.component.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<ds-root
22
[shouldShowFullscreenLoader]="(isAuthBlocking$ | async) || (isThemeLoading$ | async)"
3-
[shouldShowRouteLoader]="isRouteLoading$ | async"></ds-root>
3+
[shouldShowRouteLoader]="isRouteLoading$ | async"></ds-root>
44

5-
<ds-social *ngIf="browserPlatform"></ds-social>
5+
@if (browserPlatform) {
6+
<ds-social></ds-social>
7+
}
Lines changed: 21 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,28 @@
11
<div class="container" *ngVar="(auditRD$ | async)?.payload as audit">
2-
<div class="d-flex">
3-
<h2 class="flex-grow-1">{{'audit.detail.title' | translate }}</h2>
4-
</div>
2+
<div class="d-flex">
3+
<h2 class="flex-grow-1">{{'audit.detail.title' | translate }}</h2>
4+
</div>
55

6-
<ng-container *ngIf="audit">
7-
<h4 class="mt-4">{{ 'audit.detail.id' | translate}}</h4>
8-
<div>{{ audit.id }}</div>
6+
@if (audit) {
7+
<h4 class="mt-4">{{ 'audit.detail.id' | translate}}</h4>
8+
<div>{{ audit.id }}</div>
9+
<h4 class="mt-4">{{ 'audit.detail.eventType' | translate}}</h4>
10+
<div>{{ audit.eventType }}</div>
11+
<h4 class="mt-4">{{ 'audit.detail.subjectUUID' | translate}}</h4>
12+
<div>{{ audit.subjectUUID }}</div>
13+
<h4 class="mt-4">{{ 'audit.detail.subjectType' | translate}}</h4>
14+
<div>{{ audit.subjectType }}</div>
15+
<h4 class="mt-4">{{ 'audit.detail.eperson' | translate}}</h4>
16+
<div *ngVar="(getEpersonName(audit) | async) as ePersonName">{{ePersonName}}</div>
17+
<h4 class="mt-4">{{ 'audit.detail.timeStamp' | translate}}</h4>
18+
<div>{{ audit.timeStamp | date:dateFormat}}</div>
19+
}
920

10-
<h4 class="mt-4">{{ 'audit.detail.eventType' | translate}}</h4>
11-
<div>{{ audit.eventType }}</div>
1221

13-
<h4 class="mt-4">{{ 'audit.detail.subjectUUID' | translate}}</h4>
14-
<div>{{ audit.subjectUUID }}</div>
15-
16-
<h4 class="mt-4">{{ 'audit.detail.subjectType' | translate}}</h4>
17-
<div>{{ audit.subjectType }}</div>
18-
19-
<h4 class="mt-4">{{ 'audit.detail.eperson' | translate}}</h4>
20-
<div *ngVar="(getEpersonName(audit) | async) as ePersonName">{{ePersonName}}</div>
21-
22-
<h4 class="mt-4">{{ 'audit.detail.timeStamp' | translate}}</h4>
23-
<div>{{ audit.timeStamp | date:dateFormat}}</div>
24-
</ng-container>
25-
22+
<a class="btn btn-light mt-3" [routerLink]="'/auditlogs'">{{'audit.detail.back' | translate}}</a>
2623

27-
<a class="btn btn-light mt-3" [routerLink]="'/auditlogs'">{{'audit.detail.back' | translate}}</a>
28-
29-
<a *ngIf="audit.objectUUID" class="btn btn-light mt-3" [routerLink]="['/auditlogs/object/', audit.objectUUID]">{{'audit.detail.back.subject' | translate}}</a>
24+
@if (audit.objectUUID) {
25+
<a class="btn btn-light mt-3" [routerLink]="['/auditlogs/object/', audit.objectUUID]">{{'audit.detail.back.subject' | translate}}</a>
26+
}
3027

3128
</div>

src/app/audit-page/detail/audit-detail.component.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import {
22
AsyncPipe,
33
DatePipe,
4-
NgIf,
54
} from '@angular/common';
65
import {
76
ChangeDetectionStrategy,
@@ -35,7 +34,6 @@ import { VarDirective } from '../../shared/utils/var.directive';
3534
imports: [
3635
AsyncPipe,
3736
DatePipe,
38-
NgIf,
3937
RouterLink,
4038
TranslateModule,
4139
VarDirective,
Lines changed: 55 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,70 @@
11
<div class="container">
2-
<div class="d-flex">
3-
<h2 class="flex-grow-1">{{'audit.object.overview.title' | translate}}</h2>
4-
</div>
2+
<div class="d-flex">
3+
<h2 class="flex-grow-1">{{'audit.object.overview.title' | translate}}</h2>
4+
</div>
55

6-
<ng-container *ngIf="object">
7-
<h4 class="mt-4 mb-4">{{ object.name }} (<em>{{object.type}}</em>)</h4>
8-
9-
<ng-container *ngIf="(auditsRD$ | async)?.payload as audits">
10-
11-
<div *ngIf="audits.totalElements === 0">
6+
@if (object) {
7+
<h4 class="mt-4 mb-4">{{ object.name }} (<em>{{object.type}}</em>)</h4>
8+
@if ((auditsRD$ | async)?.payload; as audits) {
9+
@if (audits.totalElements === 0) {
10+
<div>
1211
No audits found.
1312
</div>
14-
15-
<ds-pagination *ngIf="audits.totalElements > 0"
16-
[paginationOptions]="pageConfig"
17-
[collectionSize]="audits.totalElements"
18-
[hideGear]="true"
19-
[hidePagerWhenSinglePage]="true">
20-
13+
}
14+
@if (audits.totalElements > 0) {
15+
<ds-pagination
16+
[paginationOptions]="pageConfig"
17+
[collectionSize]="audits.totalElements"
18+
[hideGear]="true"
19+
[hidePagerWhenSinglePage]="true">
2120
<div class="table-responsive">
2221
<table class="table table-striped table-hover">
2322
<thead>
24-
<tr>
25-
<!-- <th>{{ 'audit.overview.table.id' | translate }}</th> -->
26-
<th>{{ 'audit.overview.table.entityType' | translate }}</th>
27-
<th>{{ 'audit.overview.table.eperson' | translate }}</th>
28-
<th>{{ 'audit.overview.table.timestamp' | translate }}</th>
29-
<th>Other Object</th>
30-
</tr>
23+
<tr>
24+
<!-- <th>{{ 'audit.overview.table.id' | translate }}</th> -->
25+
<th>{{ 'audit.overview.table.entityType' | translate }}</th>
26+
<th>{{ 'audit.overview.table.eperson' | translate }}</th>
27+
<th>{{ 'audit.overview.table.timestamp' | translate }}</th>
28+
<th>Other Object</th>
29+
</tr>
3130
</thead>
3231
<tbody>
33-
<tr *ngFor="let audit of audits.page">
34-
<!-- <td><a [routerLink]="['/auditlogs/', audit.id]">{{audit.id}}</a></td> -->
35-
<td>{{ audit.eventType }}</td>
36-
<td *ngVar="(getEpersonName(audit) | async) as ePersonName">{{ePersonName}}</td>
37-
<td>{{ audit.timeStamp | date:dateFormat}}</td>
38-
<td>
39-
<span *ngIf="object.id === audit.objectUUID">
40-
<!-- object.id === audit.objectUUID -->
41-
<ng-container *ngIf="(getOtherObject(audit, object.id) | async) as subject">
42-
<ng-container *ngIf="subject">
43-
{{ subject.name }} <em>({{ subject.type }})</em>
44-
</ng-container>
45-
</ng-container>
46-
</span>
47-
48-
<span *ngIf="object.id === audit.subjectUUID">
49-
<!-- object.id === audit.subjectUUID -->
50-
</span>
51-
</td>
52-
</tr>
32+
@for (audit of audits.page; track audit) {
33+
<tr>
34+
<!-- <td><a [routerLink]="['/auditlogs/', audit.id]">{{audit.id}}</a></td> -->
35+
<td>{{ audit.eventType }}</td>
36+
<td *ngVar="(getEpersonName(audit) | async) as ePersonName">{{ePersonName}}</td>
37+
<td>{{ audit.timeStamp | date:dateFormat}}</td>
38+
<td>
39+
@if (object.id === audit.objectUUID) {
40+
<span>
41+
<!-- object.id === audit.objectUUID -->
42+
@if ((getOtherObject(audit, object.id) | async); as subject) {
43+
@if (subject) {
44+
{{ subject.name }} <em>({{ subject.type }})</em>
45+
}
46+
}
47+
</span>
48+
}
49+
@if (object.id === audit.subjectUUID) {
50+
<span>
51+
<!-- object.id === audit.subjectUUID -->
52+
</span>
53+
}
54+
</td>
55+
</tr>
56+
}
5357
</tbody>
5458
</table>
5559
</div>
5660
</ds-pagination>
57-
58-
<a class="btn btn-light mt-3" [routerLink]="['/items', object.id]"><i class="fas fa-arrow-left"></i> Back to Item</a>
59-
60-
<!-- <a class="btn btn-light mt-3" [routerLink]="'/auditlogs'">{{'audit.detail.back' | translate}}</a> -->
61-
62-
</ng-container>
63-
64-
<h4 class="mt-4 mb-4" *ngIf="(auditsRD$ | async)?.statusCode === 404">{{'audit.object.overview.disabled.message' | translate}}</h4>
65-
66-
</ng-container>
61+
}
62+
<a class="btn btn-light mt-3" [routerLink]="['/items', object.id]"><i class="fas fa-arrow-left"></i> Back to Item</a>
63+
<!-- <a class="btn btn-light mt-3" [routerLink]="'/auditlogs'">{{'audit.detail.back' | translate}}</a> -->
64+
}
65+
@if ((auditsRD$ | async)?.statusCode === 404) {
66+
<h4 class="mt-4 mb-4">{{'audit.object.overview.disabled.message' | translate}}</h4>
67+
}
68+
}
6769

6870
</div>

src/app/audit-page/object-audit-overview/object-audit-overview.component.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
import {
22
AsyncPipe,
33
DatePipe,
4-
NgForOf,
5-
NgIf,
64
} from '@angular/common';
75
import {
86
Component,
@@ -57,8 +55,6 @@ import { VarDirective } from '../../shared/utils/var.directive';
5755
imports: [
5856
AsyncPipe,
5957
DatePipe,
60-
NgForOf,
61-
NgIf,
6258
PaginationComponent,
6359
RouterLink,
6460
TranslateModule,

0 commit comments

Comments
 (0)