/* @flow */ import * as React from 'react'; import type { Context } from 'create-react-context'; type ThemeProviderProps = { children?: any, theme: T, }; export type ThemeProviderType = React.ComponentType>; function createThemeProvider( defaultTheme: T, ThemeContext: Context ): ThemeProviderType { return class ThemeProvider extends React.PureComponent< ThemeProviderProps > { static defaultProps = { theme: defaultTheme, }; render() { return ( {this.props.children} ); } }; } export default createThemeProvider;