Product review normalizer
The normalizeProductReview
function maps Commercetools Review
into Unified SfProductReview
.
Parameters
Name | Type | Default value | Description |
---|---|---|---|
context | NormalizerContext | context needed for the normalizer | |
review | Review | Commercetools Review |
Extending
The SfProductReview
is returned from GetProductReviews
Method. If the SfProductReview
structure doesn't contain the information you need for your Storefront, you can extend its logic using the addCustomFields
API. The following example demonstrates how to extend SfProductReview
with a includedInStatistics
field.
export const unifiedApiExtension = createUnifiedExtension({
normalizers: {
addCustomFields: [
{
normalizeProductReview: (context, review) => ({
includedInStatistics: review.includedInStatistics
}),
},
],
},
config: {
...
},
});
Source
productReview.ts
import { maybe } from "@/helpers";
import { defineNormalizer } from "../defineNormalizer";
export const normalizeProductReview = defineNormalizer.normalizeProductReview((_context, review) => {
return {
id: review.id,
title: maybe(review.title),
text: maybe(review.text),
rating: maybe(review.rating),
reviewer: maybe(review.authorName),
createdAt: review.createdAt,
};
});