diff --git a/packages/trpc/lib/routers/hotels/schemas/hotel/detailedFacility.ts b/packages/trpc/lib/routers/hotels/schemas/hotel/detailedFacility.ts index df5c99875..162a6e9c5 100644 --- a/packages/trpc/lib/routers/hotels/schemas/hotel/detailedFacility.ts +++ b/packages/trpc/lib/routers/hotels/schemas/hotel/detailedFacility.ts @@ -29,8 +29,15 @@ export const detailedFacilitySchema = rawDetailedFacilitySchema.transform( export const detailedFacilitiesSchema = nullableArrayObjectValidator( rawDetailedFacilitySchema -).transform((facilities) => - facilities +).transform((facilities) => { + const uniqueFacilities = new Map() + facilities.forEach((facility) => { + if (!uniqueFacilities.has(facility.id)) { + uniqueFacilities.set(facility.id, facility) + } + }) + + return Array.from(uniqueFacilities.values()) .sort((a, b) => b.sortOrder - a.sortOrder) .map(transformDetailedFacility) -) +})