(workInProgress, renderTime)
| 12406 | } |
| 12407 | |
| 12408 | function resetExpirationTime(workInProgress, renderTime) { |
| 12409 | if (renderTime !== Never && workInProgress.expirationTime === Never) { |
| 12410 | // The children of this component are hidden. Don't bubble their |
| 12411 | // expiration times. |
| 12412 | return; |
| 12413 | } |
| 12414 | |
| 12415 | // Check for pending updates. |
| 12416 | var newExpirationTime = getUpdateExpirationTime(workInProgress); |
| 12417 | |
| 12418 | // TODO: Calls need to visit stateNode |
| 12419 | |
| 12420 | // Bubble up the earliest expiration time. |
| 12421 | var child = workInProgress.child; |
| 12422 | while (child !== null) { |
| 12423 | if (child.expirationTime !== NoWork && (newExpirationTime === NoWork || newExpirationTime > child.expirationTime)) { |
| 12424 | newExpirationTime = child.expirationTime; |
| 12425 | } |
| 12426 | child = child.sibling; |
| 12427 | } |
| 12428 | workInProgress.expirationTime = newExpirationTime; |
| 12429 | } |
| 12430 | |
| 12431 | function completeUnitOfWork(workInProgress) { |
| 12432 | // Attempt to complete the current unit of work, then move to the |
no test coverage detected