From 1415cb624472b9529a8d2162434f17602871bb7a Mon Sep 17 00:00:00 2001 From: patrick Date: Mon, 10 Aug 2026 23:58:42 -0400 Subject: [PATCH] fix: preserve directory structure when uploading books --- frontend/src/lib/components/forms/books-upload.svelte | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/frontend/src/lib/components/forms/books-upload.svelte b/frontend/src/lib/components/forms/books-upload.svelte index 1d29d6e..a27375e 100644 --- a/frontend/src/lib/components/forms/books-upload.svelte +++ b/frontend/src/lib/components/forms/books-upload.svelte @@ -35,7 +35,11 @@ let formEl = $state(); const onUpload: FileDropZoneProps['onUpload'] = async (uploadedFiles) => { - uploadBooks.fields.files.set([...Array.from(files), ...uploadedFiles]); + // Rename files to use webkitRelativePath so directory structure is preserved through form submission + const renamedFiles = uploadedFiles.map(f => + new File([f], f.webkitRelativePath || f.name, { type: f.type }) + ); + uploadBooks.fields.files.set([...Array.from(files), ...renamedFiles]); if (autoUploadOnDrop && files.length > 0) { await tick(); formEl?.requestSubmit();