UNPKG

mdc-react

Version:

Material Components for the web implemented in React

36 lines (30 loc) 925 B
import { forwardRef } from 'react'; import PropTypes from 'prop-types'; import classnames from 'classnames'; import { cssClasses } from './constants'; const LayoutGrid = forwardRef(({ align, fixedColumnWidth = false, element = 'div', component = element, className, children, ...props }, ref) => { const Element = component; const classNames = classnames(cssClasses.ROOT, { [`${cssClasses.ALIGN}-${align}`]: align, [cssClasses.FIXED_COLUMN_WIDTH]: fixedColumnWidth }, className); return ( <Element ref={ref} className={classNames} {...props}> <div className={cssClasses.INNER}>{children}</div> </Element> ); }); LayoutGrid.displayName = 'MDCLayoutGrid'; LayoutGrid.propTypes = { align: PropTypes.oneOf(['left', 'right']), fixedColumnWidth: PropTypes.bool }; export default LayoutGrid;