ConfigurableProduct
Source:
apps/jti-next/src/components/ConfigurableProduct/
Server component (RSC) that drives the PDP for configurable products (e.g. a device available in multiple colours). Fetches from Magento, then passes structured data into a Builder.io "product" model entry for layout rendering.
Props (ProductTemplateProps)
| Prop | Type | Description |
|---|---|---|
slug |
string |
Magento url_key of the product |
locale |
string |
Active locale |
categoryUrlKey |
string |
Parent category URL key (for breadcrumbs) |
activeVariantSku |
string? |
Pre-selected variant SKU (from URL params) |
sticksMatrixData |
SticksMatrixData? |
Sticks matrix data if applicable |
consumablesMatrixData |
ConsumablesMatrixData? |
Consumables matrix data if applicable |
Config keys consumed
| Key | Effect |
|---|---|
sortByProductAttribute |
Sorts colour/flavour swatches by Magento aggregation order |
productSpecification |
Renders a specification attribute list on the PDP |
Builder.io "product" model data bindings
| Key | Description |
|---|---|
productName |
Product display name |
productSku |
Active SKU |
productCurrentVariantId / productCurrentVariantSku |
Selected variant identifiers |
productConfigurableOptions |
Colour/flavour option groups with swatch data |
productGalleryAssets |
Sorted media gallery items |
productDynamicGallery / productVideoGallery |
Dynamic and video gallery items |
productPrice |
Price object |
productHasDiscountBadge / productHasStrikethroughPrice |
Price display flags |
productDescription / productMultiPackDescription |
Long and multi-pack descriptions |
productIsMultiPackEnabled / productMultiPackName / productMultiPackProducts |
Multi-pack configuration |
productIsTradeIn / productNonTradeInSku |
Trade-in product flags |
productIsBundle |
false for configurable products |
productIsTrial |
false for configurable products |
productIsCommerceDisabled |
Commerce kill-switch |
productHideCta / productHidePrice |
Visibility overrides |
productKnowMoreUrl |
"Learn more" link |
productOverwriteBadgeText |
Editorial badge override |
productCustomAttributes |
Arbitrary attribute list |
productTrustpilot |
Trustpilot widget configuration |
productHasRegistrationConsent |
Whether to show a device registration consent card |
teaserProducts / products |
Cross-sell and colour-variant product data |
productIsDynamicGalleryEnabled |
Toggle for dynamic gallery |