How Routeveil morphs elements between React Router routes while handling async rendering, lazy routes, scrolling, interruptions, and cleanup.

Route transitions usually treat navigation as two completely separate moments:

The current page disappears.

The destination page appears.

But what if the element a user clicked did not disappear?