From 692071eea0ec9230eb225c9ba38c433f3ce570c2 Mon Sep 17 00:00:00 2001 From: ZXY101 Date: Wed, 17 Jan 2024 00:17:11 +0200 Subject: [PATCH] Fix zip image ordering --- src/lib/upload/index.ts | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/lib/upload/index.ts b/src/lib/upload/index.ts index cee2b23..9338510 100644 --- a/src/lib/upload/index.ts +++ b/src/lib/upload/index.ts @@ -13,22 +13,17 @@ const imageTypes = ['image/jpeg', 'image/png', 'image/webp']; export async function unzipManga(file: File) { const zipFileReader = new BlobReader(file); const zipReader = new ZipReader(zipFileReader); - + const entries = await zipReader.getEntries(); const unzippedFiles: Record = {}; const sortedEntries = entries.sort((a, b) => { - if (a.filename < b.filename) { - return -1; - } - - if (a.filename > b.filename) { - return 1; - } - - return 0; + return a.filename.localeCompare(b.filename, undefined, { + numeric: true, + sensitivity: 'base' + }); }) - + for (const entry of sortedEntries) { const mime = getMimeType(entry.filename); if (imageTypes.includes(mime)) { @@ -39,7 +34,7 @@ export async function unzipManga(file: File) { } } } - + return unzippedFiles; }