From ca04bc0095e5ca8beae3e85ce9493a690ae10ca8 Mon Sep 17 00:00:00 2001 From: Sean Morley Date: Tue, 4 Jun 2024 13:13:40 +0000 Subject: [PATCH] chore: Remove duplicate adventures in search results --- src/routes/api/search/+server.ts | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/routes/api/search/+server.ts b/src/routes/api/search/+server.ts index 68d0358..4c6f84b 100644 --- a/src/routes/api/search/+server.ts +++ b/src/routes/api/search/+server.ts @@ -26,12 +26,20 @@ export const GET: RequestHandler = async ({ const locationResults = await locationSearch(value, locals); const namesResults = await nameSearch(value, locals); + // remove duplicates by id + let adventures: any = {}; + activityResults.adventures.forEach((a: any) => { + adventures[a.id] = a; + }); + locationResults.adventures.forEach((a: any) => { + adventures[a.id] = a; + }); + namesResults.adventures.forEach((a: any) => { + adventures[a.id] = a; + }); + return json({ - adventures: [ - ...activityResults.adventures, - ...locationResults.adventures, - ...namesResults.adventures, - ], + adventures: Object.values(adventures), }); } else if (type === "activity") { return json(await activitySearch(value, locals, isVisited));