MCPcopy Create free account
hub / github.com/krasimir/react-in-patterns / appendAllChildren

Function appendAllChildren

code/communication/public/app.js:10665–10693  ·  view source on GitHub ↗
(parent, workInProgress)

Source from the content-addressed store, hash-verified

10663 }
10664
10665 function appendAllChildren(parent, workInProgress) {
10666 // We only have the top Fiber that was created but we need recurse down its
10667 // children to find all the terminal nodes.
10668 var node = workInProgress.child;
10669 while (node !== null) {
10670 if (node.tag === HostComponent || node.tag === HostText) {
10671 appendInitialChild(parent, node.stateNode);
10672 } else if (node.tag === HostPortal) {
10673 // If we have a portal child, then we don't want to traverse
10674 // down its children. Instead, we'll get insertions from each child in
10675 // the portal directly.
10676 } else if (node.child !== null) {
10677 node.child['return'] = node;
10678 node = node.child;
10679 continue;
10680 }
10681 if (node === workInProgress) {
10682 return;
10683 }
10684 while (node.sibling === null) {
10685 if (node['return'] === null || node['return'] === workInProgress) {
10686 return;
10687 }
10688 node = node['return'];
10689 }
10690 node.sibling['return'] = node['return'];
10691 node = node.sibling;
10692 }
10693 }
10694
10695 var updateHostContainer = void 0;
10696 var updateHostComponent = void 0;

Callers 2

ReactFiberCompleteWorkFunction · 0.70
completeWorkFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected