diff options
author | 2023-08-16 17:44:01 +0000 | |
---|---|---|
committer | 2023-08-16 17:44:01 +0000 | |
commit | fb31ce55d943a88ff0d922cc2e4cca8d98a35eba (patch) | |
tree | 912c1554e73fde4ac2777b5f02566416f080bece /packages/integrations/react/vnode-children.js | |
parent | 16a3fdf93165a1a0404c1db0973871345b2c591b (diff) | |
download | astro-fb31ce55d943a88ff0d922cc2e4cca8d98a35eba.tar.gz astro-fb31ce55d943a88ff0d922cc2e4cca8d98a35eba.tar.zst astro-fb31ce55d943a88ff0d922cc2e4cca8d98a35eba.zip |
[ci] format
Diffstat (limited to 'packages/integrations/react/vnode-children.js')
-rw-r--r-- | packages/integrations/react/vnode-children.js | 63 |
1 files changed, 31 insertions, 32 deletions
diff --git a/packages/integrations/react/vnode-children.js b/packages/integrations/react/vnode-children.js index 0c9d5e08d..9c7abe644 100644 --- a/packages/integrations/react/vnode-children.js +++ b/packages/integrations/react/vnode-children.js @@ -1,38 +1,37 @@ -import { parse, walkSync, DOCUMENT_NODE, ELEMENT_NODE, TEXT_NODE } from 'ultrahtml' +import { parse, walkSync, DOCUMENT_NODE, ELEMENT_NODE, TEXT_NODE } from 'ultrahtml'; import { createElement, Fragment } from 'react'; export default function convert(children) { - const nodeMap = new WeakMap(); - let doc = parse(children.toString().trim()); - let root = createElement(Fragment, { children: [] }); + const nodeMap = new WeakMap(); + let doc = parse(children.toString().trim()); + let root = createElement(Fragment, { children: [] }); - walkSync(doc, (node, parent, index) => { - let newNode = {}; - if (node.type === DOCUMENT_NODE) { - nodeMap.set(node, root); - } else if (node.type === ELEMENT_NODE) { - const { class: className, ...props } = node.attributes; - newNode = createElement(node.name, { ...props, className, children: [] }); - nodeMap.set(node, newNode); - if (parent) { - const newParent = nodeMap.get(parent); - newParent.props.children[index] = newNode; - - } - } else if (node.type === TEXT_NODE) { - newNode = node.value.trim(); - if (newNode.trim()) { - if (parent) { - const newParent = nodeMap.get(parent); - if (parent.children.length === 1) { - newParent.props.children[0] = newNode; - } else { - newParent.props.children[index] = newNode; - } - } - } - } - }); + walkSync(doc, (node, parent, index) => { + let newNode = {}; + if (node.type === DOCUMENT_NODE) { + nodeMap.set(node, root); + } else if (node.type === ELEMENT_NODE) { + const { class: className, ...props } = node.attributes; + newNode = createElement(node.name, { ...props, className, children: [] }); + nodeMap.set(node, newNode); + if (parent) { + const newParent = nodeMap.get(parent); + newParent.props.children[index] = newNode; + } + } else if (node.type === TEXT_NODE) { + newNode = node.value.trim(); + if (newNode.trim()) { + if (parent) { + const newParent = nodeMap.get(parent); + if (parent.children.length === 1) { + newParent.props.children[0] = newNode; + } else { + newParent.props.children[index] = newNode; + } + } + } + } + }); - return root.props.children; + return root.props.children; } |