Skip to content

Release Notes - June 2022

Compare
Choose a tag to compare
@carolinamenezes carolinamenezes released this 01 Jul 12:06
· 1140 commits to main since this release
03d5644

The FastStore UI now includes the Hero and Dropdown components. Also, the FastStore API was enhanced to better support page error handling. Global changes were also implemented to enable price range filtering on PLPs.

FastStore UI

Hero

  • 🎉 New Hero component - #1336

    The Hero component is a full-width banner presented on the above-the-fold section of a web page. It serves as the first glimpse of your brand's identity and messaging.

    Hero component

AggregateRating

  • 🎉 New AggregateRating component - #1386

OutOfStock

  • OutOfStock's nested components now accept otherProps - #1341

    The OutOfStockTitle and OutOfStockMessage components now accept additional data attributes through the otherProps attribute.

Slider

  • Slider component enhanced - #1364

    The Slider component now accepts an initial state out of the min/max domain. Also, the onEnd callback function was added to enable triggering effects after user interaction.

FastStore API

VTEX Platform

  • 🎉 Request error handling functionality added - #1361

    The FastStore API now returns the proper page error code (400 or 404), allowing FastStore websites to respond to these errors accordingly.

  • 🎉 Canonical PDP slugs added - #1338

    So that VTEX stores migrating to FastStore can work seamlessly, a 301 redirect between vtexSlug and fastStoreSlug was created, where:

    • vtexSlug: /{slug}/p
    • fastStoreSlug: ${slug}-${skuId}/p
  • Resolvers and types updated to allow price range filtering on PLPs - #1364

    The search query now receives price. Also, the StoreFacetRange, StoreFacetBoolean, StoreFacetValueRange, and StoreFacetValueBoolean types were created to allow price range filtering on PLPs.

  • 🐛 validateCart error for additionalProperties fixed - #1325

    The following error Field "propertyID" is not defined by type IStorePropertyValue., related to products with additionalProperties added to the cart, was fixed.

  • 🐛 AggregateOffer resolver fixed for selecting the best seller - #1350

    For SKUs sold by multiple sellers, the AggregateOffer resolver was not able to detect the best seller consistently. This issue was solved by making the AggregateOffer resolver return the lowest and highest prices according to the bestOfferFirst function.

  • 🐛 Test inconsistencies fixed - #1360

    Test inconsistencies were resolved to provide a development environment more similar to the production one.

  • 🧹 FastStore API mocks updated to use auto fuzzy - #1359

FastStore SDK

  • 🎉 Full support to Trade Policies now available - #1319

    The Session context provider now accepts a new function called onValidateSession, which calls the backend to validate the session. On any modification to the channel, such as logging in to the store, the session values (e.g., channel, person, language) are updated accordingly so the user can start browsing on the new session.

  • useSearchState updated to allow price range filtering on PLPs - #1364

    The new setState function was added to the useSearchState context. All other useSearchState functions were removed and exported as helper functions.

Documentation

🎉 New

✨ Improved

Internal

  • 🎉 FastStore repository now uses Turborepo cache - #1330

  • 🎉 FastStore repository now uses CodeQL analysis - #1331

  • Codesandbox CI improved - #1357

  • 🧹 Docs package removed from Codesandbox build - #1334

  • 🧹 Circular dependencies removed from FastStore SDK - #1333

  • 🧹 Purged unused CSS from the docs package - #1345

  • 🧹 Typescript errors fixed - #1352

  • 🧹 tsconfig package replaced by shared - #1379

  • 🧹 Eslint configs improved - #1368

  • 🧹 build script updated - #1362

  • 🧹 Prettier configured - #1369

  • 🧹 outdir added to all tsconfig - #1372

  • 🧹 Packages' module field updated - #1374