3 of the Depict UI there some breaking changes that apply to everyone.
The reason for most of them is that Depict is now designed to own your categories, brand pages, campaign pages, etc.
That means that when creating a category, you’d go into Depict. And this in turn means that your routing should have Depict as source of truth. Use the get listings API to know which product listings are available and render the menu and navigation on your site - let us know how we can simplify that part.
As for the Depict UI, you have to do the following things to update to version 3:
- Update all depict packages to the latest version (
@depict-ai/react-uito at least version3.0.18or@depict-ai/js-uito at least3.0.16).
Changes applicable to all Depict UI users
- You now must specify a
localeobject to the provider(s). This locale object now both dictates the UI language as well as the language used in the response of the Depict Backend. Please see the locale selector in the header of demo.depict.ai for what locales you should use. - For product listing pages (the
CategoryPagecomponent), what products to show is now decided by a new property calledlistingQueryinstead ofcategoryId. See this excerpt of the integration guide for more details on what to specify. The type of that property looks as follows:
Changes that might affect you
- The the type for QuickLinks, BreadCrumbs and Category Suggestions that you receive in the displayTransformers has changed, please refer to the latest type definitions for the new format.
- Every object in the array you return from the displayTransformers now has to contain all data that was originally passed to the displayTransformer. This enables you to fully delete or add objects in the display transformer.
pageURLCreatorhas been removed, please migrate your code to usedisplayTransformersinstead.userIdhas been removed, there is now only one id used to tie together tracking events for personalisation and analytics:sessionId. If you specify something falsey as sessionId, Depict will generate a random string and store it inlocalStorage._dep_idand use that as session id, otherwise the provided value will be used.- The property
disableOverrideQueryIdhas been renamed todisableOverrideListingId onCategoryIdChangehas been renamed toonListingQueryChangeand now receives aListingQueryinstead of astringfor the previous and next query- No
merchantormarketis passed to your ProductCard anymore which you might have received before - The
ProductCardTemplateWithoutMerchantAndMarkettype is no longer exported metaTitleSuffixis deleted- Some minor changes have been made to the styling to accommodate for supporting product listing pages as sliders, please check your styling to make sure everything looks as expected

