fix(react): fallback to default export when variant named export not … #308
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR: fix(react): fallback to default export when variant named export not found
Checkboxes to select
Description / Motivation
When using SXA rendering variants in Next.js App Router with XM Cloud, components with
params.FieldNamesset (e.g.,HeroST (Right)) fail to render with error:Root Cause
In
packages/react/src/components/Placeholder/placeholder-utils.tsx, the component resolution logic looks for a named export matchingparams.FieldNames(e.g.,component.Right). If not found, it throws an error instead of falling back to the default export.Before:
Solution
Gracefully fallback to the default export when a named variant export is not found:
This allows components to:
export const Right = ...)params.FieldNamesprop in the default exportTesting Details
HeroSTcomponent andHeroST (Right)variant in XM Cloudparams.FieldNamesprop to handle variant logic