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

Function placeChild

code/one-direction-data-flow/public/app.js:8849–8871  ·  view source on GitHub ↗
(newFiber, lastPlacedIndex, newIndex)

Source from the content-addressed store, hash-verified

8847 }
8848
8849 function placeChild(newFiber, lastPlacedIndex, newIndex) {
8850 newFiber.index = newIndex;
8851 if (!shouldTrackSideEffects) {
8852 // Noop.
8853 return lastPlacedIndex;
8854 }
8855 var current = newFiber.alternate;
8856 if (current !== null) {
8857 var oldIndex = current.index;
8858 if (oldIndex < lastPlacedIndex) {
8859 // This is a move.
8860 newFiber.effectTag = Placement;
8861 return lastPlacedIndex;
8862 } else {
8863 // This item can stay in place.
8864 return oldIndex;
8865 }
8866 } else {
8867 // This is an insertion.
8868 newFiber.effectTag = Placement;
8869 return lastPlacedIndex;
8870 }
8871 }
8872
8873 function placeSingleChild(newFiber) {
8874 // 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