+
- {{'FILE_UPLOAD.FILE_INFO.NAME' | translate}} |
- {{'FILE_UPLOAD.FILE_INFO.PROGRESS' | translate}} |
- {{'FILE_UPLOAD.FILE_INFO.SIZE' | translate}} |
- {{'FILE_UPLOAD.FILE_INFO.ACTION' | translate}} |
+ {{'FILE_UPLOAD.FILE_INFO.NAME' | translate}} |
+ {{'FILE_UPLOAD.FILE_INFO.PROGRESS' | translate}} |
+ {{'FILE_UPLOAD.FILE_INFO.SIZE' | translate}} |
+ {{'FILE_UPLOAD.FILE_INFO.ACTION' | translate}} |
-
- {{file.name}} |
-
-
+
+
+ {{file.name}}
+ |
+
+
|
{{file.size}} |
-
- done
-
- remove_circle_outline
- remove_circle
+ |
+
+ done
+
+
+ remove_circle_outline
+
+
+ remove_circle
+
|
|
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts
index ecc0dec50a..f6de9f950b 100644
--- a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts
@@ -15,11 +15,11 @@
* limitations under the License.
*/
-import { Component, ElementRef, Input } from '@angular/core';
+import { Component, Input } from '@angular/core';
import { FileModel } from '../models/file.model';
/**
- *
+ *
*
* This component show a list of the uploading files contained in the filesUploadingList.
*
@@ -37,31 +37,29 @@ import { FileModel } from '../models/file.model';
export class FileUploadingListComponent {
@Input()
- filesUploadingList: FileModel [];
-
- constructor(public el: ElementRef) {
- }
+ files: FileModel[];
/**
- * Abort the in progress uploading of a specific file.
+ * Cancel file upload
*
- * @param {string} id - FileModel id of the file to abort.
+ * @param {FileModel} file File model to cancel upload for.
+ *
+ * @memberOf FileUploadingListComponent
*/
- abort(id: string): void {
- let file = this.filesUploadingList.filter((uploadingFileModel) => {
- return uploadingFileModel.id === id;
- });
- file[0].emitAbort();
+ cancelFileUpload(file: FileModel): void {
+ if (file) {
+ file.emitAbort();
+ }
}
/**
* Call the abort method for each file
*/
- cancelAllFiles($event) {
- if ($event) {
- $event.preventDefault();
+ cancelAllFiles(event: Event): void {
+ if (event) {
+ event.preventDefault();
}
- this.filesUploadingList.forEach((uploadingFileModel: FileModel) => {
+ this.files.forEach((uploadingFileModel: FileModel) => {
uploadingFileModel.emitAbort();
});
}
@@ -70,12 +68,12 @@ export class FileUploadingListComponent {
* Verify if all the files are in state done or abort
* @returns {boolean} - false if there is a file in progress
*/
- isUploadCompleted() {
+ isUploadCompleted(): boolean {
let isPending = false;
let isAllCompleted = true;
- for (let i = 0; i < this.filesUploadingList.length && !isPending; i++) {
- let uploadingFileModel = this.filesUploadingList[i];
- if (!uploadingFileModel.done && !uploadingFileModel.abort) {
+ for (let i = 0; i < this.files.length && !isPending; i++) {
+ let file = this.files[i];
+ if (!file.done && !file.abort) {
isPending = true;
isAllCompleted = false;
}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.html b/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.html
index fda0fca497..5ae429edf2 100644
--- a/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.html
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload-drag-area.component.html
@@ -1,4 +1,4 @@
-
{
it('should add an element in the queue and returns it', () => {
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
expect(service.getQueue().length).toEqual(1);
});
it('should add two elements in the queue and returns them', () => {
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}, {name: 'fake-name2', size: 20}];
+ let filesFake = [
+ {name: 'fake-name', size: 10},
+ {name: 'fake-name2', size: 20}
+ ];
service.addToQueue(filesFake);
expect(service.getQueue().length).toEqual(2);
});
@@ -79,7 +82,7 @@ describe('UploadService', () => {
done();
});
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('-root-', 'fake-dir', emitter);
@@ -102,7 +105,7 @@ describe('UploadService', () => {
done();
});
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('-root-', '', emitter);
expect(jasmine.Ajax.requests.mostRecent().url)
@@ -123,7 +126,7 @@ describe('UploadService', () => {
done();
});
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('-root-', '', emitter);
@@ -139,7 +142,7 @@ describe('UploadService', () => {
done();
});
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('-root-', '', emitter);
@@ -154,7 +157,7 @@ describe('UploadService', () => {
total: 1234,
percent: 44
};
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.filesUpload$.subscribe((file) => {
expect(file).toBeDefined();
@@ -222,7 +225,7 @@ describe('UploadService', () => {
let enableVersioning = true;
service.setOptions(options, enableVersioning);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('-root-', '', emitter);
@@ -238,7 +241,7 @@ describe('UploadService', () => {
done();
});
service.setOptions(options, false);
- let filesFake = [{name: 'fake-name', size: 10}];
+ let filesFake = [{name: 'fake-name', size: 10}];
service.addToQueue(filesFake);
service.uploadFilesInTheQueue('123', 'fake-dir', emitter);
diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts
index 5f0628b1f8..11ec3c1875 100644
--- a/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts
+++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts
@@ -66,20 +66,18 @@ export class UploadService {
*
* return {FileModel[]} - return the file added to the queue in this call.
*/
- addToQueue(files: any[]): FileModel[] {
- let latestFilesAdded: FileModel[] = [];
+ addToQueue(files: File[]): FileModel[] {
+ const result: FileModel[] = [];
for (let file of files) {
- if (this.isFile(file)) {
- let uploadingFileModel = new FileModel(file);
- latestFilesAdded.push(uploadingFileModel);
- this.queue.push(uploadingFileModel);
- if (this.filesUploadObserverProgressBar) {
- this.filesUploadObserverProgressBar.next(this.queue);
- }
+ let uploadingFileModel = new FileModel(file);
+ result.push(uploadingFileModel);
+ this.queue.push(uploadingFileModel);
+ if (this.filesUploadObserverProgressBar) {
+ this.filesUploadObserverProgressBar.next(this.queue);
}
}
- return latestFilesAdded;
+ return result;
}
/**
@@ -149,15 +147,6 @@ export class UploadService {
return this.queue;
}
- /**
- * Check if an item is a file.
- *
- * @return {boolean}
- */
- private isFile(file: any): boolean {
- return file !== null && (file instanceof Blob || (file.name && file.size));
- }
-
/**
* Create a folder
* @param name - the folder name