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

Function ReactFiberCompleteWork

code/styling/public/app.js:10548–10981  ·  view source on GitHub ↗
(config, hostContext, legacyContext, newContext, hydrationContext)

Source from the content-addressed store, hash-verified

10546};
10547
10548var ReactFiberCompleteWork = function (config, hostContext, legacyContext, newContext, hydrationContext) {
10549 var createInstance = config.createInstance,
10550 createTextInstance = config.createTextInstance,
10551 appendInitialChild = config.appendInitialChild,
10552 finalizeInitialChildren = config.finalizeInitialChildren,
10553 prepareUpdate = config.prepareUpdate,
10554 mutation = config.mutation,
10555 persistence = config.persistence;
10556 var getRootHostContainer = hostContext.getRootHostContainer,
10557 popHostContext = hostContext.popHostContext,
10558 getHostContext = hostContext.getHostContext,
10559 popHostContainer = hostContext.popHostContainer;
10560 var popLegacyContextProvider = legacyContext.popContextProvider,
10561 popTopLevelLegacyContextObject = legacyContext.popTopLevelContextObject;
10562 var popProvider = newContext.popProvider;
10563 var prepareToHydrateHostInstance = hydrationContext.prepareToHydrateHostInstance,
10564 prepareToHydrateHostTextInstance = hydrationContext.prepareToHydrateHostTextInstance,
10565 popHydrationState = hydrationContext.popHydrationState;
10566
10567
10568 function markUpdate(workInProgress) {
10569 // Tag the fiber with an update effect. This turns a Placement into
10570 // an UpdateAndPlacement.
10571 workInProgress.effectTag |= Update;
10572 }
10573
10574 function markRef(workInProgress) {
10575 workInProgress.effectTag |= Ref;
10576 }
10577
10578 function appendAllReturns(returns, workInProgress) {
10579 var node = workInProgress.stateNode;
10580 if (node) {
10581 node['return'] = workInProgress;
10582 }
10583 while (node !== null) {
10584 if (node.tag === HostComponent || node.tag === HostText || node.tag === HostPortal) {
10585 invariant(false, 'A call cannot have host component children.');
10586 } else if (node.tag === ReturnComponent) {
10587 returns.push(node.pendingProps.value);
10588 } else if (node.child !== null) {
10589 node.child['return'] = node;
10590 node = node.child;
10591 continue;
10592 }
10593 while (node.sibling === null) {
10594 if (node['return'] === null || node['return'] === workInProgress) {
10595 return;
10596 }
10597 node = node['return'];
10598 }
10599 node.sibling['return'] = node['return'];
10600 node = node.sibling;
10601 }
10602 }
10603
10604 function moveCallToHandlerPhase(current, workInProgress, renderExpirationTime) {
10605 var props = workInProgress.memoizedProps;

Callers 1

ReactFiberSchedulerFunction · 0.70

Calls 6

markUpdateFunction · 0.70
invariantFunction · 0.70
appendAllChildrenFunction · 0.70
getRootHostContainerFunction · 0.70
getHostContextFunction · 0.70

Tested by

no test coverage detected