UNPKG

admin-on-rest-fr05t1k

Version:

A frontend Framework for building admin applications on top of REST services, using ES6, React and Material UI

30 lines (26 loc) 791 B
import React, { PropTypes } from 'react'; import withWidth from 'material-ui/utils/withWidth'; export const Responsive = ({ small, medium, large, width, ...rest }) => { let component; switch (width) { case 1: component = small ? small : (medium ? medium : large); break; case 2: component = medium ? medium : (large ? large : small); break; case 3: component = large ? large : (medium ? medium : small); break; default: throw new Error(`Unknown width ${width}`); } return React.cloneElement(component, rest); }; Responsive.propTypes = { small: PropTypes.element, medium: PropTypes.element, large: PropTypes.element, width: PropTypes.number, }; export default withWidth()(Responsive);