/* @flow */ import * as React from 'react'; class SceneComponent extends React.PureComponent<*> { render() { const { component, ...rest } = this.props; return React.createElement(component, rest); } } export default function SceneMap<T: *>(scenes: { [key: string]: React.ComponentType<T>, }) { return ({ route, jumpTo }: T) => ( <SceneComponent key={route.key} component={scenes[route.key]} route={route} jumpTo={jumpTo} /> ); }