From 4fbf306308b8b94c852fd3ac1de148160a86ff76 Mon Sep 17 00:00:00 2001 From: Vito0912 <86927734+Vito0912@users.noreply.github.com> Date: Sun, 31 Aug 2025 08:27:01 +0200 Subject: [PATCH] Normalize tags and genres in BookFinder results --- server/finders/BookFinder.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/server/finders/BookFinder.js b/server/finders/BookFinder.js index 2d7b57f14..7ca52fefc 100644 --- a/server/finders/BookFinder.js +++ b/server/finders/BookFinder.js @@ -595,6 +595,15 @@ class BookFinder { book.description = htmlSanitizer.sanitize(book.description) book.descriptionPlain = htmlSanitizer.stripAllTags(book.description) } + if (book.tags) { + // Some return comma-separated strings, some return arrays + const tagsArray = Array.isArray(book.tags) ? book.tags : String(book.tags).split(',') + book.tags = [...new Set(tagsArray.map((t) => t.trim()).filter(Boolean))] + } + if (book.genres) { + const genresArray = Array.isArray(book.genres) ? book.genres : String(book.genres).split(',') + book.genres = [...new Set(genresArray.map((g) => g.trim()).filter(Boolean))] + } }) return books }