CST-12455_coar-7sync Last refactor and TODO removal

This commit is contained in:
Mattia Vianelli
2023-11-16 22:03:23 +01:00
parent 64d9aba08c
commit bb3cbadfa4
23 changed files with 1967 additions and 1957 deletions

View File

@@ -13,11 +13,12 @@
</div> </div>
</div> </div>
</div> </div>
<!-- In the Name section -->
<div class="mb-5"> <div class="mb-5">
<label for="name">{{ 'ldn-new-service.form.label.name' | translate }}</label> <label for="name">{{ 'ldn-new-service.form.label.name' | translate }}</label>
<input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched" <input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched"
[placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control" formControlName="name" [placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control"
formControlName="name"
id="name" id="name"
name="name" name="name"
type="text"> type="text">
@@ -37,7 +38,8 @@
<div class="mb-5 mt-5"> <div class="mb-5 mt-5">
<label for="url">{{ 'ldn-new-service.form.label.url' | translate }}</label> <label for="url">{{ 'ldn-new-service.form.label.url' | translate }}</label>
<input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched" <input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched"
[placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control" formControlName="url" [placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control"
formControlName="url"
id="url" id="url"
name="url" name="url"
type="text"> type="text">
@@ -73,7 +75,7 @@
</div> </div>
</div> </div>
<!-- In the Inbound Patterns Labels section -->
<div class="row mb-1 mt-5"> <div class="row mb-1 mt-5">
<div class="col"> <div class="col">
<label>{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label> <label>{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label>
@@ -90,6 +92,7 @@
</div> </div>
</div> </div>
<!-- In the Inbound Patterns section -->
<div *ngFor="let patternGroup of formModel.get('notifyServiceInboundPatterns')['controls']; let i = index" <div *ngFor="let patternGroup of formModel.get('notifyServiceInboundPatterns')['controls']; let i = index"
[class.marked-for-deletion]="markedForDeletionInboundPattern.includes(i)" [class.marked-for-deletion]="markedForDeletionInboundPattern.includes(i)"
formGroupName="notifyServiceInboundPatterns"> formGroupName="notifyServiceInboundPatterns">
@@ -114,8 +117,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="inboundPatternDropdownButton"
<div aria-labelledby="inboundPatternDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectInboundPattern(pattern, i); $event.stopPropagation()" <button (click)="selectInboundPattern(pattern, i); $event.stopPropagation()"
@@ -152,8 +155,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="inboundItemfilterDropdownButton"
<div aria-labelledby="inboundItemfilterDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectInboundItemFilter(constraint.id, i); $event.stopPropagation()" <button (click)="selectInboundItemFilter(constraint.id, i); $event.stopPropagation()"
@@ -207,7 +210,7 @@
<span (click)="addInboundPattern()" <span (click)="addInboundPattern()"
class="add-pattern-link mb-2">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span> class="add-pattern-link mb-2">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span>
<!-- In the Outbound Patterns Labels section -->
<div class="row mb-1 mt-5"> <div class="row mb-1 mt-5">
<div class="col"> <div class="col">
<label>{{ 'ldn-new-service.form.label.outboundPattern' | translate }} </label> <label>{{ 'ldn-new-service.form.label.outboundPattern' | translate }} </label>
@@ -226,13 +229,13 @@
</div> </div>
</div> </div>
<!-- In the Outbound Patterns section -->
<div *ngFor="let patternGroup of formModel.get('notifyServiceOutboundPatterns')['controls']; let i = index" <div *ngFor="let patternGroup of formModel.get('notifyServiceOutboundPatterns')['controls']; let i = index"
[class.marked-for-deletion]="markedForDeletionOutboundPattern.includes(i)" [class.marked-for-deletion]="markedForDeletionOutboundPattern.includes(i)"
formGroupName="notifyServiceOutboundPatterns"> formGroupName="notifyServiceOutboundPatterns">
<ng-container [formGroupName]="i"> <ng-container [formGroupName]="i">
<!-- Input elements in a separate row -->
<div class="row mb-1"> <div class="row mb-1">
<div class="col"> <div class="col">
<div #outboundPatternDropdown="ngbDropdown" class="w-100" id="additionalOutboundPattern{{i}}" <div #outboundPatternDropdown="ngbDropdown" class="w-100" id="additionalOutboundPattern{{i}}"
@@ -251,8 +254,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3-5 selects --> <div aria-labelledby="outboundPatternDropdownButton"
<div aria-labelledby="outboundPatternDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectOutboundPattern(pattern, i); $event.stopPropagation()" <button (click)="selectOutboundPattern(pattern, i); $event.stopPropagation()"
@@ -289,8 +292,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="outboundItemfilterDropdownButton"
<div aria-labelledby="outboundItemfilterDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectOutboundItemFilter(constraint.id, i); $event.stopPropagation()" <button (click)="selectOutboundItemFilter(constraint.id, i); $event.stopPropagation()"

View File

@@ -7,7 +7,8 @@
<div class="mb-5 "> <div class="mb-5 ">
<label for="name">{{ 'ldn-new-service.form.label.name' | translate }}</label> <label for="name">{{ 'ldn-new-service.form.label.name' | translate }}</label>
<input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched" <input [class.invalid-field]="formModel.get('name').invalid && formModel.get('name').touched"
[placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control" formControlName="name" [placeholder]="'ldn-new-service.form.placeholder.name' | translate" class="form-control"
formControlName="name"
id="name" id="name"
name="name" name="name"
type="text"> type="text">
@@ -28,7 +29,8 @@
<div class="mb-5 mt-5"> <div class="mb-5 mt-5">
<label for="url">{{ 'ldn-new-service.form.label.url' | translate }}</label> <label for="url">{{ 'ldn-new-service.form.label.url' | translate }}</label>
<input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched" <input [class.invalid-field]="formModel.get('url').invalid && formModel.get('url').touched"
[placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control" formControlName="url" [placeholder]="'ldn-new-service.form.placeholder.url' | translate" class="form-control"
formControlName="url"
id="url" id="url"
name="url" name="url"
type="text"> type="text">
@@ -64,7 +66,7 @@
</div> </div>
</div> </div>
<!-- In the Inbound Patterns section --> <!-- In the Inbound Patterns Labels section -->
<div class="row mb-2 mt-5"> <div class="row mb-2 mt-5">
<div class="col"> <div class="col">
<label>{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label> <label>{{ 'ldn-new-service.form.label.inboundPattern' | translate }} </label>
@@ -81,6 +83,7 @@
</div> </div>
</div> </div>
<!-- In the Inbound Patterns section -->
<div *ngFor="let patternGroup of formModel.get('notifyServiceInboundPatterns')['controls']; let i = index" <div *ngFor="let patternGroup of formModel.get('notifyServiceInboundPatterns')['controls']; let i = index"
formGroupName="notifyServiceInboundPatterns"> formGroupName="notifyServiceInboundPatterns">
@@ -106,13 +109,15 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<div aria-labelledby="inboundPatternDropdownButton" ngbDropdownMenu class="dropdown-menu scrollable-dropdown-menu w-100 " > <div aria-labelledby="inboundPatternDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectInboundPattern(pattern, i); $event.stopPropagation()" class="dropdown-item collection-item text-truncate w-100" <button (click)="selectInboundPattern(pattern, i); $event.stopPropagation()"
*ngFor="let pattern of inboundPatterns" *ngFor="let pattern of inboundPatterns"
[title]="'ldn-service.form.pattern.' + pattern + '.description' | translate"
class="dropdown-item collection-item text-truncate w-100"
ngbDropdownItem ngbDropdownItem
type="button" type="button">
[title]="'ldn-service.form.pattern.' + pattern + '.description' | translate">
<div>{{ 'ldn-service.form.pattern.' + pattern + '.label' | translate }}</div> <div>{{ 'ldn-service.form.pattern.' + pattern + '.label' | translate }}</div>
<div <div
class="small-text">{{ 'ldn-service.form.pattern.' + pattern + '.description' | translate }}</div> class="small-text">{{ 'ldn-service.form.pattern.' + pattern + '.description' | translate }}</div>
@@ -142,8 +147,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="inboundItemfilterDropdownButton"
<div aria-labelledby="inboundItemfilterDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectInboundItemFilter(constraint.id, i); $event.stopPropagation() " <button (click)="selectInboundItemFilter(constraint.id, i); $event.stopPropagation() "
@@ -186,7 +191,7 @@
class="add-pattern-link mb-4">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span> class="add-pattern-link mb-4">{{ 'ldn-new-service.form.label.addPattern' | translate }}</span>
<!-- In the Outbound Patterns section --> <!-- In the Outbound Patterns Labels section -->
<div class="row mb-1 mt-5"> <div class="row mb-1 mt-5">
<div class="col"> <div class="col">
<label>{{ 'ldn-new-service.form.label.outboundPattern' | translate }}</label> <label>{{ 'ldn-new-service.form.label.outboundPattern' | translate }}</label>
@@ -205,12 +210,12 @@
</div> </div>
</div> </div>
<!-- In the Outbound Patterns section -->
<div *ngFor="let patternGroup of formModel.get('notifyServiceOutboundPatterns')['controls']; let i = index" <div *ngFor="let patternGroup of formModel.get('notifyServiceOutboundPatterns')['controls']; let i = index"
formGroupName="notifyServiceOutboundPatterns"> formGroupName="notifyServiceOutboundPatterns">
<ng-container [formGroupName]="i"> <ng-container [formGroupName]="i">
<!-- Input elements in a separate row -->
<div class="row mb-1"> <div class="row mb-1">
<div class="col"> <div class="col">
<div #outboundPatternDropdown="ngbDropdown" class="w-100" id="additionalOutboundPattern{{i}}" <div #outboundPatternDropdown="ngbDropdown" class="w-100" id="additionalOutboundPattern{{i}}"
@@ -229,13 +234,14 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="outboundPatternDropdownButton"
<div aria-labelledby="outboundPatternDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectOutboundPattern(pattern, i); $event.stopPropagation()" <button (click)="selectOutboundPattern(pattern, i); $event.stopPropagation()"
*ngFor="let pattern of outboundPatterns" *ngFor="let pattern of outboundPatterns"
[title]="'ldn-service.form.pattern.' + pattern + '.description' | translate" class="dropdown-item collection-item text-truncate w-100" [title]="'ldn-service.form.pattern.' + pattern + '.description' | translate"
class="dropdown-item collection-item text-truncate w-100"
ngbDropdownItem ngbDropdownItem
type="button"> type="button">
<div>{{ 'ldn-service.form.pattern.' + pattern + '.label' | translate }}</div> <div>{{ 'ldn-service.form.pattern.' + pattern + '.label' | translate }}</div>
@@ -267,8 +273,8 @@
ngbDropdownAnchor ngbDropdownAnchor
type="text" type="text"
/> />
<!-- TODO: infinite scroll with 3 selects --> <div aria-labelledby="outboundItemfilterDropdownButton"
<div aria-labelledby="outboundItemfilterDropdownButton" class="dropdown-menu scrollable-dropdown-menu w-100 " class="dropdown-menu scrollable-dropdown-menu w-100 "
ngbDropdownMenu> ngbDropdownMenu>
<div class="scrollable-menu" role="listbox"> <div class="scrollable-menu" role="listbox">
<button (click)="selectOutboundItemFilter(constraint.id, i); $event.stopPropagation()" <button (click)="selectOutboundItemFilter(constraint.id, i); $event.stopPropagation()"

View File

@@ -84,7 +84,8 @@ export class LdnServiceFormComponent implements OnInit {
name: ['', Validators.required], name: ['', Validators.required],
description: [''], description: [''],
url: ['', Validators.required], url: ['', Validators.required],
score: ['', [Validators.required, Validators.pattern('^0*(\.[0-9]+)?$|^1(\.0+)?$')]], ldnUrl: ['', Validators.required], score: ['', [Validators.required, Validators.pattern('^0*(\.[0-9]+)?$|^1(\.0+)?$')]],
ldnUrl: ['', Validators.required],
inboundPattern: [''], inboundPattern: [''],
outboundPattern: [''], outboundPattern: [''],
constraintPattern: [''], constraintPattern: [''],