-
Notifications
You must be signed in to change notification settings - Fork 39
feat(headless): support spotlight content for commerce COMHUB2-1228 #6646
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
agillesCoveo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm okay giving you the routemasters stamp but I feel you need DX reviews more than ours
I've got some already on this PR 😃. I asked for routemasters after getting DX I just need to test this PR manually a bit and then I'll merge, probably on Monday. There is a weird bug in the CMH blocking me from testing this repo easily atm, and the fix hasn't reached prod cos the pipeline is blocked by unrelated things. |

COMHUB2-1228
We have a new feature in Commerce called Spotlight Content. These are arbitrary bits of content that the merchandiser can have returned for their Product Listings, though in future it will be needed for Search and Recommendations as well. Here it is in the Commerce Hub preview. You can see a random bit of content mixed in with the products.
It means it no longer makes much sense for the
productslist in the responses to be called that, so there is a new list ofresultsnow, which can contain both Products and Spotlight Content. To not be a breaking change, this is an opt-in feature, where users have to send anenableResultsparam on their requests. When they send the param, theresultsfield is filled in instead of theproductsfield, and they can see their Spotlight Content. There is a doc here explaining the approach in more detail.To facilitate
enableResultsin Headless, I've tried to introduce a new option to the ProductListing controller, where the user can pass an optionalenableResultsboolean, which gets propagated down. Have I done this right? It is my first time working with Headless or Redux. The plan is that there should be no change for existing users, and users who want Spotlight Content can opt-in by sending that boolean. Do I need to update anything apart from Headless, like Atomic and stuff? Edit: After talking with Benoit Thibault and a couple others, we need only Headless support for now.