MCPcopy
hub / github.com/antvis/Infographic / nodeToRenderableNodes

Function nodeToRenderableNodes

src/jsx/utils/element.ts:9–31  ·  view source on GitHub ↗
(
  node: JSXNode,
  result: RenderableNode[] = [],
)

Source from the content-addressed store, hash-verified

7}
8
9export function nodeToRenderableNodes(
10 node: JSXNode,
11 result: RenderableNode[] = [],
12): RenderableNode[] {
13 if (!node || typeof node === 'boolean') {
14 return result;
15 }
16
17 if (Array.isArray(node)) {
18 node.forEach((child) => nodeToRenderableNodes(child, result));
19 } else {
20 if (isFragment(node)) {
21 const children = node.props?.children;
22 (Array.isArray(children) ? children : [children])
23 .filter(Boolean)
24 .forEach((child) => {
25 nodeToRenderableNodes(child, result);
26 });
27 } else if (typeof node === 'object') result.push(node);
28 else result.push(node);
29 }
30 return result;
31}

Callers 3

getRenderableChildrenOfFunction · 0.90
element.test.tsFile · 0.90
nodeToElementsFunction · 0.85

Calls 2

isFragmentFunction · 0.90
forEachMethod · 0.80

Tested by

no test coverage detected