diff --git a/web/apps/photos/src/services/upload/uploadManager.ts b/web/apps/photos/src/services/upload/uploadManager.ts index c69e508b1..2b4844c14 100644 --- a/web/apps/photos/src/services/upload/uploadManager.ts +++ b/web/apps/photos/src/services/upload/uploadManager.ts @@ -429,6 +429,12 @@ class UploadManager { } } + private abortIfCancelled = () => { + if (uploadCancelService.isUploadCancelationRequested()) { + throw Error(CustomError.UPLOAD_CANCELLED); + } + }; + private async parseMetadataJSONFiles(metadataFiles: FileWithCollection2[]) { try { log.info(`parseMetadataJSONFiles function executed `); @@ -436,12 +442,9 @@ class UploadManager { this.uiService.reset(metadataFiles.length); for (const { file, collectionID } of metadataFiles) { + this.abortIfCancelled(); const name = getFileName(file); try { - if (uploadCancelService.isUploadCancelationRequested()) { - throw Error(CustomError.UPLOAD_CANCELLED); - } - log.info(`parsing metadata json file ${name}`); const metadataJSON = @@ -523,6 +526,9 @@ class UploadManager { this.parsedMetadataJSONMap, this.uploaderName, this.isCFUploadProxyDisabled, + () => { + this.abortIfCancelled(); + }, ( fileLocalID: number, percentPerPart?: number, diff --git a/web/apps/photos/src/services/upload/uploadService.ts b/web/apps/photos/src/services/upload/uploadService.ts index 97fbba988..1df51a5ac 100644 --- a/web/apps/photos/src/services/upload/uploadService.ts +++ b/web/apps/photos/src/services/upload/uploadService.ts @@ -58,7 +58,6 @@ import { generateThumbnailNative, generateThumbnailWeb, } from "./thumbnail"; -import uploadCancelService from "./uploadCancelService"; import UploadHttpClient from "./uploadHttpClient"; /** Upload files to cloud storage */ @@ -168,16 +167,12 @@ export const uploader = async ( parsedMetadataJSONMap: Map, uploaderName: string, isCFUploadProxyDisabled: boolean, + abortIfCancelled: () => void, makeProgessTracker: MakeProgressTracker, ): Promise => { const name = assetName(fileWithCollection); log.info(`Uploading ${name}`); - const abortIfCancelled = () => { - if (uploadCancelService.isUploadCancelationRequested()) - throw Error(CustomError.UPLOAD_CANCELLED); - }; - const { collection, localID, ...uploadAsset2 } = fileWithCollection; /* TODO(MR): ElectronFile changes */ const uploadAsset = uploadAsset2 as UploadAsset;