(returnFiber, instance)
| 12274 | } |
| 12275 | |
| 12276 | function deleteHydratableInstance(returnFiber, instance) { |
| 12277 | { |
| 12278 | switch (returnFiber.tag) { |
| 12279 | case HostRoot: |
| 12280 | didNotHydrateContainerInstance(returnFiber.stateNode.containerInfo, instance); |
| 12281 | break; |
| 12282 | case HostComponent: |
| 12283 | didNotHydrateInstance(returnFiber.type, returnFiber.memoizedProps, returnFiber.stateNode, instance); |
| 12284 | break; |
| 12285 | } |
| 12286 | } |
| 12287 | |
| 12288 | var childToDelete = createFiberFromHostInstanceForDeletion(); |
| 12289 | childToDelete.stateNode = instance; |
| 12290 | childToDelete['return'] = returnFiber; |
| 12291 | childToDelete.effectTag = Deletion; |
| 12292 | |
| 12293 | // This might seem like it belongs on progressedFirstDeletion. However, |
| 12294 | // these children are not part of the reconciliation list of children. |
| 12295 | // Even if we abort and rereconcile the children, that will try to hydrate |
| 12296 | // again and the nodes are still in the host tree so these will be |
| 12297 | // recreated. |
| 12298 | if (returnFiber.lastEffect !== null) { |
| 12299 | returnFiber.lastEffect.nextEffect = childToDelete; |
| 12300 | returnFiber.lastEffect = childToDelete; |
| 12301 | } else { |
| 12302 | returnFiber.firstEffect = returnFiber.lastEffect = childToDelete; |
| 12303 | } |
| 12304 | } |
| 12305 | |
| 12306 | function insertNonHydratedInstance(returnFiber, fiber) { |
| 12307 | fiber.effectTag |= Placement; |
no test coverage detected