import type { HotelData } from "@/types/components/hotelReservation/selectHotel/hotelCardListingProps"
import type { HotelPin } from "@/types/components/hotelReservation/selectHotel/map"

export function getHotelPins(hotels: HotelData[]): HotelPin[] {
  return hotels.map((hotel) => ({
    coordinates: {
      lat: hotel.hotelData.location.latitude,
      lng: hotel.hotelData.location.longitude,
    },
    name: hotel.hotelData.name,
    publicPrice: hotel.price?.regularAmount ?? null,
    memberPrice: hotel.price?.memberAmount ?? null,
    currency: hotel.price?.currency || null,
    images: [
      hotel.hotelData.hotelContent.images,
      ...(hotel.hotelData.gallery?.heroImages ?? []),
    ],
    amenities: hotel.hotelData.detailedFacilities.slice(0, 3),
    ratings: hotel.hotelData.ratings?.tripAdvisor.rating ?? null,
    operaId: hotel.hotelData.operaId,
  }))
}
