Re-implement transitionViewer to a Transition React component