diff --git a/packages/api/src/platforms/vtex/resolvers/aggregateOffer.ts b/packages/api/src/platforms/vtex/resolvers/aggregateOffer.ts index d9e0be2ea8..fd79a511f6 100644 --- a/packages/api/src/platforms/vtex/resolvers/aggregateOffer.ts +++ b/packages/api/src/platforms/vtex/resolvers/aggregateOffer.ts @@ -1,4 +1,4 @@ -import { inStock } from '../utils/productStock' +import { inStock, price } from '../utils/productStock' import type { StoreProduct } from './product' import type { PromiseType } from '../../../typings' import type { Resolver } from '..' @@ -10,13 +10,14 @@ export const StoreAggregateOffer: Record> & { } = { highPrice: (offers) => { const availableOffers = offers.filter(inStock) + const highOffer = availableOffers[availableOffers.length - 1] - return availableOffers[availableOffers.length - 1]?.Price ?? 0 + return highOffer != null ? price(highOffer) : 0 }, lowPrice: (offers) => { - const availableOffers = offers.filter(inStock) + const [lowOffer] = offers.filter(inStock) - return availableOffers[0]?.Price ?? 0 + return lowOffer ? price(lowOffer) : 0 }, offerCount: (offers) => offers.length, priceCurrency: () => '', diff --git a/packages/api/src/platforms/vtex/utils/productStock.ts b/packages/api/src/platforms/vtex/utils/productStock.ts index 3a327daa1c..a3acdb29c2 100644 --- a/packages/api/src/platforms/vtex/utils/productStock.ts +++ b/packages/api/src/platforms/vtex/utils/productStock.ts @@ -10,7 +10,7 @@ export const sellingPrice = (offer: CommertialOffer) => offer.Price ?? 0 export const availability = (available: boolean) => available ? 'https://schema.org/InStock' : 'https://schema.org/OutOfStock' -// Smallest Available Selling Price First +// Smallest Available Spot Price First export const bestOfferFirst = ( a: Pick, b: Pick