519df665 by Adam Heath

When rendering replaced nodes as strings, if no replaced content is

given, render the original children.
1 parent 4bd75132
1 --- 1 ---
2 import { ELEMENT_NODE, TEXT_NODE } from 'ultrahtml' 2 import { ELEMENT_NODE, TEXT_NODE } from 'ultrahtml'
3 import Node from './node.astro' 3 import Node from './node.astro'
4 import Children from './children.astro'
4 5
5 const { props: { parent = null, node, index = 0, special, debug = 0, replacers, slotHandler } } = Astro 6 const { props: { parent = null, node, index = 0, special, debug = 0, replacers, slotHandler } } = Astro
6 const { name: Name, attributes } = node 7 const { name: Name, attributes } = node
...@@ -21,7 +22,7 @@ const nextDebug = debug ? debug - 1 : 0 ...@@ -21,7 +22,7 @@ const nextDebug = debug ? debug - 1 : 0
21 const [ Component, componentArgs, componentContent ] = Array.isArray(slotName) ? slotName : [] 22 const [ Component, componentArgs, componentContent ] = Array.isArray(slotName) ? slotName : []
22 --- 23 ---
23 { 24 {
24 typeof Component === 'string' ? <Component {...node.attributes} {...componentArgs}>{componentContent}</Component> 25 typeof Component === 'string' ? <Component {...node.attributes} {...componentArgs}>{componentContent || <Children parent={node} children={node.children} debug={nextDebug} replacers={replacers} slotHandler={slotHandler}/>}</Component>
25 : Component ? (<Component {...componentArgs} parent={parent} node={node} index={index} debug={nextDebug} replacers={replacers} slotHandler={slotHandler} special={special}>{componentContent}</Component>) 26 : Component ? (<Component {...componentArgs} parent={parent} node={node} index={index} debug={nextDebug} replacers={replacers} slotHandler={slotHandler} special={special}>{componentContent}</Component>)
26 : slotName ? slotHandler(slotName, node, special) 27 : slotName ? slotHandler(slotName, node, special)
27 : <Node parent={parent} node={node} index={index} debug={nextDebug} replacers={replacers} slotHandler={slotHandler} special={special}/> 28 : <Node parent={parent} node={node} index={index} debug={nextDebug} replacers={replacers} slotHandler={slotHandler} special={special}/>
......