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

Function placeChild

code/dependency-injection/public/app.js:9069–9091  ·  view source on GitHub ↗
(newFiber, lastPlacedIndex, newIndex)

Source from the content-addressed store, hash-verified

9067 }
9068
9069 function placeChild(newFiber, lastPlacedIndex, newIndex) {
9070 newFiber.index = newIndex;
9071 if (!shouldTrackSideEffects) {
9072 // Noop.
9073 return lastPlacedIndex;
9074 }
9075 var current = newFiber.alternate;
9076 if (current !== null) {
9077 var oldIndex = current.index;
9078 if (oldIndex < lastPlacedIndex) {
9079 // This is a move.
9080 newFiber.effectTag = Placement;
9081 return lastPlacedIndex;
9082 } else {
9083 // This item can stay in place.
9084 return oldIndex;
9085 }
9086 } else {
9087 // This is an insertion.
9088 newFiber.effectTag = Placement;
9089 return lastPlacedIndex;
9090 }
9091 }
9092
9093 function placeSingleChild(newFiber) {
9094 // 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