diff --git a/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.html b/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.html
index f2b4c23d17..065a3a0a15 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.html
+++ b/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.html
@@ -1,116 +1,116 @@
-
+@if (canShowDialog()) {
+
-
-
- {{
- (totalErrors > 1
- ? 'FILE_UPLOAD.MESSAGES.UPLOAD_ERRORS'
- : 'FILE_UPLOAD.MESSAGES.UPLOAD_ERROR')
- | translate: { total: totalErrors }
+
+ @if (!uploadList.isUploadCancelled()) {
+
+ {{ 'FILE_UPLOAD.MESSAGES.UPLOAD_PROGRESS'
+ | translate: {
+ completed: totalCompleted,
+ total: filesUploadingList.length
+ }
}}
+
+ }
+ @if (uploadList.isUploadCancelled()) {
+
+ {{ 'FILE_UPLOAD.MESSAGES.UPLOAD_CANCELED' | translate }}
+
+ }
+
+ @if (totalErrors) {
+
+ {{
+ (totalErrors > 1
+ ? 'FILE_UPLOAD.MESSAGES.UPLOAD_ERRORS'
+ : 'FILE_UPLOAD.MESSAGES.UPLOAD_ERROR')
+ | translate: { total: totalErrors }
+ }}
-
-
-
-
-
-
-
-
-
-
- {{ 'ADF_FILE_UPLOAD.CONFIRMATION.MESSAGE.TITLE' | translate }}
-
-
- {{ 'ADF_FILE_UPLOAD.CONFIRMATION.MESSAGE.TEXT' | translate }}
-
-
-
-
-
+}
diff --git a/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.ts b/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.ts
index 771da44951..c79a69e1a0 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.ts
+++ b/lib/content-services/src/lib/upload/components/file-uploading-dialog.component.ts
@@ -38,7 +38,7 @@ import { delay } from 'rxjs/operators';
import { UploadService } from '../../common/services/upload.service';
import { FileModel, FileUploadStatus } from '../../common/models/file.model';
import { FileUploadCompleteEvent, FileUploadDeleteEvent } from '../../common/events/file.event';
-import { CommonModule } from '@angular/common';
+
import { MatButtonModule } from '@angular/material/button';
import { TranslatePipe } from '@ngx-translate/core';
import { FileUploadingListRowComponent } from './file-uploading-list-row.component';
@@ -47,7 +47,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
@Component({
selector: 'adf-file-uploading-dialog',
- imports: [CommonModule, MatButtonModule, TranslatePipe, IconModule, FileUploadingListComponent, FileUploadingListRowComponent, A11yModule],
+ imports: [MatButtonModule, TranslatePipe, IconModule, FileUploadingListComponent, FileUploadingListRowComponent, A11yModule],
templateUrl: './file-uploading-dialog.component.html',
styleUrls: ['./file-uploading-dialog.component.scss'],
encapsulation: ViewEncapsulation.None
diff --git a/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.html b/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.html
index c458b05c67..efbd9fdd7c 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.html
+++ b/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.html
@@ -1,92 +1,108 @@
-
+ @if (mimeType === 'default') {
+
+ }
-
+ @if (mimeType !== 'default') {
+
+ }
-
- {{ file.name }}
-
+
+ {{ file.name }}
+
-
- {{ versionNumber }}
+ @if (isUploadVersion()) {
+
+ {{ versionNumber }}
+ }
+ @if (isUploading()) {
-
-
- {{ file.progress.loaded | adfFileSize }} / {{ file.progress.total | adfFileSize }}
+ tabindex="0"
+ role="button"
+ #toggleIcon="toggleIcon"
+ adf-toggle-icon
+ (keyup.enter)="onCancel(file)"
+ (click)="onCancel(file)"
+ data-automation-id="cancel-upload-progress"
+ [attr.aria-label]="'ADF_FILE_UPLOAD.ARIA-LABEL.STOP_FILE_UPLOAD' | translate: { file: file.name }"
+ class="adf-file-uploading-row__group adf-file-uploading-row__group--toggle"
+ title="{{ 'ADF_FILE_UPLOAD.BUTTON.STOP_FILE' | translate }}">
+ @if (!toggleIcon.isToggled) {
+
+ {{ file.progress.loaded | adfFileSize }} / {{ file.progress.total | adfFileSize }}
-
-
+ }
+ @if (toggleIcon.isToggled) {
+
+ }
+ }
+ @if (isUploadComplete()) {
+ }
+ @if (isUploadVersionComplete()) {
-
+ class="adf-file-uploading-row__file-version"
+ [attr.aria-label]="'ADF_FILE_UPLOAD.STATUS.FILE_DONE_STATUS' | translate"
+ >
+
+ }
+ @if (canCancelUpload()) {
+ }
+ @if (isUploadError()) {
-
+
+ }
+ @if (showCancelledStatus()) {
- {{ 'ADF_FILE_UPLOAD.STATUS.FILE_CANCELED_STATUS' | translate }}
+ [attr.aria-label]="'ADF_FILE_UPLOAD.STATUS.FILE_CANCELED_STATUS' | translate"
+ role="status"
+ class="adf-file-uploading-row__block adf-file-uploading-row__status--cancelled">
+ {{ 'ADF_FILE_UPLOAD.STATUS.FILE_CANCELED_STATUS' | translate }}
+ }
diff --git a/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.ts b/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.ts
index fe9777ae0c..2d80eb0f8f 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.ts
+++ b/lib/content-services/src/lib/upload/components/file-uploading-list-row.component.ts
@@ -17,7 +17,7 @@
import { FileModel, FileUploadStatus } from '../../common/models/file.model';
import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
-import { CommonModule } from '@angular/common';
+
import { MatListModule } from '@angular/material/list';
import { FileSizePipe, IconModule } from '@alfresco/adf-core';
import { MatChipsModule } from '@angular/material/chips';
@@ -28,17 +28,7 @@ import { FileUploadErrorPipe } from '../pipes/file-upload-error.pipe';
@Component({
selector: 'adf-file-uploading-list-row',
- imports: [
- CommonModule,
- IconModule,
- MatListModule,
- MatChipsModule,
- TranslatePipe,
- ToggleIconDirective,
- FileSizePipe,
- MatButtonModule,
- FileUploadErrorPipe
- ],
+ imports: [IconModule, MatListModule, MatChipsModule, TranslatePipe, ToggleIconDirective, FileSizePipe, MatButtonModule, FileUploadErrorPipe],
templateUrl: './file-uploading-list-row.component.html',
styleUrls: ['./file-uploading-list-row.component.scss'],
encapsulation: ViewEncapsulation.None
diff --git a/lib/content-services/src/lib/upload/components/file-uploading-list.component.html b/lib/content-services/src/lib/upload/components/file-uploading-list.component.html
index 0b0e0f821e..fa4af49900 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-list.component.html
+++ b/lib/content-services/src/lib/upload/components/file-uploading-list.component.html
@@ -1,6 +1,7 @@
+ @for (file of files; track file) {
+ [ngTemplateOutlet]="template"
+ [ngTemplateOutletContext]="{ $implicit: file }" />
+ }
diff --git a/lib/content-services/src/lib/upload/components/file-uploading-list.component.ts b/lib/content-services/src/lib/upload/components/file-uploading-list.component.ts
index be284bd05a..d91ca510e1 100644
--- a/lib/content-services/src/lib/upload/components/file-uploading-list.component.ts
+++ b/lib/content-services/src/lib/upload/components/file-uploading-list.component.ts
@@ -20,11 +20,10 @@ import { UploadService } from '../../common/services/upload.service';
import { FileModel, FileUploadStatus } from '../../common/models/file.model';
import { Component, ContentChild, Input, Output, TemplateRef, EventEmitter, inject } from '@angular/core';
-import { CommonModule } from '@angular/common';
@Component({
selector: 'adf-file-uploading-list',
- imports: [CommonModule],
+ imports: [],
templateUrl: './file-uploading-list.component.html',
styleUrls: ['./file-uploading-list.component.scss']
})
diff --git a/lib/content-services/src/lib/upload/components/upload-button.component.html b/lib/content-services/src/lib/upload/components/upload-button.component.html
index 4b7ea3f14b..5203f70d16 100644
--- a/lib/content-services/src/lib/upload/components/upload-button.component.html
+++ b/lib/content-services/src/lib/upload/components/upload-button.component.html
@@ -1,70 +1,76 @@
diff --git a/lib/content-services/src/lib/upload/components/upload-button.component.ts b/lib/content-services/src/lib/upload/components/upload-button.component.ts
index d692ab6207..0234b35de7 100644
--- a/lib/content-services/src/lib/upload/components/upload-button.component.ts
+++ b/lib/content-services/src/lib/upload/components/upload-button.component.ts
@@ -24,13 +24,13 @@ import { Node } from '@alfresco/js-api';
import { Subject } from 'rxjs';
import { PermissionModel } from '../../document-list/models/permissions.model';
import { UploadBase } from './base-upload/upload-base';
-import { CommonModule } from '@angular/common';
+
import { MatButtonModule } from '@angular/material/button';
import { TranslatePipe } from '@ngx-translate/core';
@Component({
selector: 'adf-upload-button',
- imports: [CommonModule, MatButtonModule, TranslatePipe, IconModule],
+ imports: [MatButtonModule, TranslatePipe, IconModule],
templateUrl: './upload-button.component.html',
styleUrls: ['./upload-button.component.scss'],
encapsulation: ViewEncapsulation.None