From 8bcb334306ae763acfbe5b8fb3dec2ef98e358ab Mon Sep 17 00:00:00 2001 From: Booteille Date: Thu, 5 Dec 2024 11:50:14 +0100 Subject: [PATCH] Fix uploading multiple files without compression --- themes/default/public/js/upload.js | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/themes/default/public/js/upload.js b/themes/default/public/js/upload.js index 2879786..1dd187c 100644 --- a/themes/default/public/js/upload.js +++ b/themes/default/public/js/upload.js @@ -151,14 +151,6 @@ document.addEventListener("DOMContentLoaded", () => { const cardId = isSecureContext ? crypto.randomUUID() : uuidv4(); - const uploadingFileCard = initCard("uploading", cardId); - - uploadingFileCard.querySelector(".name").innerText = zipName; - uploadingFileCard.querySelector(".size").innerText = i18n.unknownYet; - uploadingFileCard.querySelector(".info").innerText = i18n.compressing; - - uploadFilesDOM.prepend(uploadingFileCard); - const runUpload = (job = null) => { if (!job || job.status === JobStatus.COMPLETE) { return lufi @@ -175,6 +167,8 @@ document.addEventListener("DOMContentLoaded", () => { .andThen((jobs) => ResultAsync.combine( jobs.map((job) => { + const uploadingFileCard = initCard("uploading", cardId); + uploadingFileCard.querySelector(".name").innerText = job.lufiFile.name; uploadingFileCard.querySelector(".size").innerText = filesize( @@ -194,6 +188,8 @@ document.addEventListener("DOMContentLoaded", () => { updateProgressBar(job.lufiFile, uploadingFileCard); }); + uploadFilesDOM.prepend(uploadingFileCard); + return job .waitForCompletion() .andThen((job) => { @@ -299,6 +295,14 @@ document.addEventListener("DOMContentLoaded", () => { }; if (isZipped) { + const uploadingFileCard = initCard("uploading", cardId); + + uploadingFileCard.querySelector(".name").innerText = zipName; + uploadingFileCard.querySelector(".size").innerText = i18n.unknownYet; + uploadingFileCard.querySelector(".info").innerText = i18n.compressing; + + uploadFilesDOM.prepend(uploadingFileCard); + return lufi .addFilesToArchive(files) .andThen((archiveEntries) => lufi.compress(archiveEntries, zipName))