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

Function appendAllChildrenToContainer

code/third-party/public/app.js:9930–9958  ·  view source on GitHub ↗
(containerChildSet, workInProgress)

Source from the content-addressed store, hash-verified

9928 // An unfortunate fork of appendAllChildren because we have two different parent types.
9929
9930 var appendAllChildrenToContainer = function (containerChildSet, workInProgress) {
9931 // We only have the top Fiber that was created but we need recurse down its
9932 // children to find all the terminal nodes.
9933 var node = workInProgress.child;
9934 while (node !== null) {
9935 if (node.tag === HostComponent || node.tag === HostText) {
9936 appendChildToContainerChildSet(containerChildSet, node.stateNode);
9937 } else if (node.tag === HostPortal) {
9938 // If we have a portal child, then we don't want to traverse
9939 // down its children. Instead, we'll get insertions from each child in
9940 // the portal directly.
9941 } else if (node.child !== null) {
9942 node.child['return'] = node;
9943 node = node.child;
9944 continue;
9945 }
9946 if (node === workInProgress) {
9947 return;
9948 }
9949 while (node.sibling === null) {
9950 if (node['return'] === null || node['return'] === workInProgress) {
9951 return;
9952 }
9953 node = node['return'];
9954 }
9955 node.sibling['return'] = node['return'];
9956 node = node.sibling;
9957 }
9958 };
9959 updateHostContainer = function (workInProgress) {
9960 var portalOrRoot = workInProgress.stateNode;
9961 var childrenUnchanged = workInProgress.firstEffect === null;

Callers 1

ReactFiberCompleteWorkFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected