From e111b33e9fbf1ce6ce4cfbae695312de66eaa361 Mon Sep 17 00:00:00 2001 From: gopienkonikita Date: Fri, 26 Jan 2024 16:15:24 +0300 Subject: [PATCH 1/3] Web: Files: fixed upload progress --- packages/client/src/store/UploadDataStore.js | 29 +++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/packages/client/src/store/UploadDataStore.js b/packages/client/src/store/UploadDataStore.js index 5e7a8cb92c..9960813e3b 100644 --- a/packages/client/src/store/UploadDataStore.js +++ b/packages/client/src/store/UploadDataStore.js @@ -938,7 +938,10 @@ class UploadDataStore { ? fileSize : this.settingsStore.chunkUploadSize; } else { - uploadedSize = fileSize - index * this.settingsStore.chunkUploadSize; + uploadedSize = + fileSize <= this.settingsStore.chunkUploadSize + ? fileSize + : fileSize - index * this.settingsStore.chunkUploadSize; } newPercent = this.getFilesPercent(uploadedSize); } @@ -1041,18 +1044,17 @@ class UploadDataStore { ].chunksArray.findIndex((x) => !x.isActive && !x.isFinalize); if (chunkObjIndex !== -1) { - this.asyncUploadObj[operationId].chunksArray[ - chunkObjIndex - ].isActive = true; + this.asyncUploadObj[operationId].chunksArray[chunkObjIndex].isActive = + true; try { - const res = await this.asyncUploadObj[operationId].chunksArray[ - chunkObjIndex - ].onUpload(); + const res = + await this.asyncUploadObj[operationId].chunksArray[ + chunkObjIndex + ].onUpload(); - this.asyncUploadObj[operationId].chunksArray[ - chunkObjIndex - ].isFinished = true; + this.asyncUploadObj[operationId].chunksArray[chunkObjIndex].isFinished = + true; if (!res.data.data && res.data.message) { delete this.asyncUploadObj[operationId]; @@ -1088,9 +1090,10 @@ class UploadDataStore { ].chunksArray.findIndex((x) => x.isFinalize); if (finalizeChunkIndex > -1) { - const finalizeRes = await this.asyncUploadObj[ - operationId - ].chunksArray[finalizeChunkIndex].onUpload(); + const finalizeRes = + await this.asyncUploadObj[operationId].chunksArray[ + finalizeChunkIndex + ].onUpload(); const finalizeIndex = this.asyncUploadObj[operationId].chunksArray.length - 1; From 62ad45421c185cfcba0f0c27d309991742ea7905 Mon Sep 17 00:00:00 2001 From: gopienkonikita Date: Fri, 26 Jan 2024 17:21:58 +0300 Subject: [PATCH 2/3] Web: Files: fixed upload progress --- packages/client/src/store/UploadDataStore.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/client/src/store/UploadDataStore.js b/packages/client/src/store/UploadDataStore.js index 9960813e3b..af56a387a9 100644 --- a/packages/client/src/store/UploadDataStore.js +++ b/packages/client/src/store/UploadDataStore.js @@ -915,7 +915,8 @@ class UploadDataStore { length, resolve, reject, - isAsyncUpload = false + isAsyncUpload = false, + isFinalize = false ) => { if (!res.data.data && res.data.message) { return reject(res.data.message); @@ -938,8 +939,9 @@ class UploadDataStore { ? fileSize : this.settingsStore.chunkUploadSize; } else { - uploadedSize = - fileSize <= this.settingsStore.chunkUploadSize + uploadedSize = isFinalize + ? 0 + : fileSize <= this.settingsStore.chunkUploadSize ? fileSize : fileSize - index * this.settingsStore.chunkUploadSize; } @@ -1108,7 +1110,8 @@ class UploadDataStore { length, resolve, reject, - true + true, // isAsyncUpload + true //isFinalize ); } } From a665792dcecbf54154fe472ceb039597a0434260 Mon Sep 17 00:00:00 2001 From: gopienkonikita Date: Fri, 26 Jan 2024 17:45:07 +0300 Subject: [PATCH 3/3] Web: Files: Upload: fixed finalizeIndex --- packages/client/src/store/UploadDataStore.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/client/src/store/UploadDataStore.js b/packages/client/src/store/UploadDataStore.js index af56a387a9..bfe3d936da 100644 --- a/packages/client/src/store/UploadDataStore.js +++ b/packages/client/src/store/UploadDataStore.js @@ -1092,14 +1092,14 @@ class UploadDataStore { ].chunksArray.findIndex((x) => x.isFinalize); if (finalizeChunkIndex > -1) { + const finalizeIndex = + this.asyncUploadObj[operationId].chunksArray.length - 1; + const finalizeRes = await this.asyncUploadObj[operationId].chunksArray[ finalizeChunkIndex ].onUpload(); - const finalizeIndex = - this.asyncUploadObj[operationId].chunksArray.length - 1; - this.checkChunkUpload( t, finalizeRes,