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

Function placeChild

code/composition/public/app.js:9114–9136  ·  view source on GitHub ↗
(newFiber, lastPlacedIndex, newIndex)

Source from the content-addressed store, hash-verified

9112 }
9113
9114 function placeChild(newFiber, lastPlacedIndex, newIndex) {
9115 newFiber.index = newIndex;
9116 if (!shouldTrackSideEffects) {
9117 // Noop.
9118 return lastPlacedIndex;
9119 }
9120 var current = newFiber.alternate;
9121 if (current !== null) {
9122 var oldIndex = current.index;
9123 if (oldIndex < lastPlacedIndex) {
9124 // This is a move.
9125 newFiber.effectTag = Placement;
9126 return lastPlacedIndex;
9127 } else {
9128 // This item can stay in place.
9129 return oldIndex;
9130 }
9131 } else {
9132 // This is an insertion.
9133 newFiber.effectTag = Placement;
9134 return lastPlacedIndex;
9135 }
9136 }
9137
9138 function placeSingleChild(newFiber) {
9139 // This is simpler for the single child case. We only need to do a

Callers 2

reconcileChildrenArrayFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected