[ADF-643] upload enhancements (#1949)

* rework folder uploading

- flatterns hierarchy on folder upload
- performs a single traversal for the entire folder heirarchy and ends with a comple file list
- allows now dropping folders on existing folders
- overall code improvements

* fix unit tests

* readme updates

* clean old and unused code

* code cleanup

* limit concurrent uploads

* update code as per review

* fix upload button for Safari

* fixes for Safari

- Safari compatibility
- code updates based on review

* fix code

* fix unit tests
This commit is contained in:
Denys Vuika
2017-06-11 12:02:05 +01:00
committed by Eugenio Romano
parent 7aa3426c2f
commit 6e09b9c550
4 changed files with 10 additions and 7 deletions

View File

@@ -150,12 +150,8 @@ export class FilesComponent implements OnInit {
dialogRef.afterClosed().subscribe(folderName => { dialogRef.afterClosed().subscribe(folderName => {
if (folderName) { if (folderName) {
this.contentService.createFolder('', folderName, this.documentList.currentFolderId).subscribe( this.contentService.createFolder('', folderName, this.documentList.currentFolderId).subscribe(
node => { node => console.log(node),
console.log(node); err => console.log(err)
},
err => {
console.log(err);
}
); );
} }
}); });

View File

@@ -211,6 +211,7 @@ export class UploadButtonComponent implements OnInit, OnChanges {
return Observable.throw(error || 'Server error'); return Observable.throw(error || 'Server error');
} }
// TODO: move to AlfrescoContentService
getFolderNode(nodeId: string): Observable<MinimalNodeEntryEntity> { getFolderNode(nodeId: string): Observable<MinimalNodeEntryEntity> {
let opts: any = { let opts: any = {
includeSource: true, includeSource: true,

View File

@@ -128,7 +128,7 @@ describe('UploadDragAreaComponent', () => {
component.showUndoNotificationBar = jasmine.createSpy('_showUndoNotificationBar'); component.showUndoNotificationBar = jasmine.createSpy('_showUndoNotificationBar');
fixture.detectChanges(); fixture.detectChanges();
let fileFake = new FileModel(<File> {name: 'fake-name-1', size: 10, webkitRelativePath: 'fake-folder1/fake-name-1.json'}); let fileFake = <File> {name: 'fake-name-1', size: 10, webkitRelativePath: 'fake-folder1/fake-name-1.json'};
let filesList = [fileFake]; let filesList = [fileFake];
component.onFilesDropped(filesList); component.onFilesDropped(filesList);

View File

@@ -39,6 +39,12 @@ export class UploadDragAreaComponent {
@Input() @Input()
enabled: boolean = true; enabled: boolean = true;
/**
* @deprecated Deprecated in 1.6.0, you can use UploadService events and NotificationService api instead.
*
* @type {boolean}
* @memberof UploadButtonComponent
*/
@Input() @Input()
showNotificationBar: boolean = true; showNotificationBar: boolean = true;