diff --git a/apps/red-ui/src/app/upload/file-upload.service.ts b/apps/red-ui/src/app/upload/file-upload.service.ts index 429a9fe4f..2bb40d6f2 100644 --- a/apps/red-ui/src/app/upload/file-upload.service.ts +++ b/apps/red-ui/src/app/upload/file-upload.service.ts @@ -30,6 +30,7 @@ export class FileUploadService { } uploadFiles(files: FileUploadModel[]) { + files.sort((a, b) => a.file.size - b.file.size); this.files.push(...files); files.forEach((newFile) => { this.scheduleUpload(newFile); @@ -45,7 +46,7 @@ export class FileUploadService { let cnt = FileUploadService.MAX_PARALLEL_UPLOADS - this._activeUploads.length; while (cnt > 0) { cnt--; - const popped = this._pendingUploads.pop(); + const popped = this._pendingUploads.shift(); if (popped) { const sub = this._createSubscription(popped); this._activeUploads.push(sub);