Skip to content

Commit 7b759cf

Browse files
authored
Fix rendering of hr elements (#141)
* Fix rendering of hr elements * Changesets * prettier
1 parent 4d58328 commit 7b759cf

2 files changed

Lines changed: 16 additions & 6 deletions

File tree

.changeset/plenty-crabs-press.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@v0-sdk/react': patch
3+
---
4+
5+
Fix void element rendering error for elements like `hr` that have no children

packages/react/src/components/message.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -247,11 +247,14 @@ function MessageRenderer({
247247
props?.className,
248248
componentOrConfig.className,
249249
)
250-
return React.createElement(
251-
tagName,
252-
{ key: element.key, ...props, className: mergedClassName },
253-
renderedChildren,
254-
)
250+
const elementProps = {
251+
key: element.key,
252+
...props,
253+
className: mergedClassName,
254+
}
255+
return renderedChildren?.length
256+
? React.createElement(tagName, elementProps, renderedChildren)
257+
: React.createElement(tagName, elementProps)
255258
} else {
256259
// Default HTML element rendering
257260
const elementProps: Record<string, any> = {
@@ -268,7 +271,9 @@ function MessageRenderer({
268271
elementProps.rel = 'noopener noreferrer'
269272
}
270273

271-
return React.createElement(tagName, elementProps, renderedChildren)
274+
return renderedChildren?.length
275+
? React.createElement(tagName, elementProps, renderedChildren)
276+
: React.createElement(tagName, elementProps)
272277
}
273278

274279
case 'component':

0 commit comments

Comments
 (0)