UNPKG

@material-ui/core

Version:

React components that implement Google's Material Design.

18 lines (16 loc) 765 B
import _extends from "@babel/runtime/helpers/extends"; import React from 'react'; import hoistNonReactStatics from 'hoist-non-react-statics'; import FormControlContext from './FormControlContext'; import { getDisplayName } from '@material-ui/utils'; export default function withFormControlContext(Component) { const EnhancedComponent = React.forwardRef((props, ref) => React.createElement(FormControlContext.Consumer, null, context => React.createElement(Component, _extends({ muiFormControl: context, ref: ref }, props)))); if (process.env.NODE_ENV !== 'production') { EnhancedComponent.displayName = `WithFormControlContext(${getDisplayName(Component)})`; } hoistNonReactStatics(EnhancedComponent, Component); return EnhancedComponent; }