UNPKG

@bootstrap-styled/ra-ui

Version:
63 lines (47 loc) 1.91 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.Responsive = void 0; var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _withWidth = _interopRequireDefault(require("../extendMui/withWidth")); var Responsive = function Responsive(_ref) { var xsmall = _ref.xsmall, small = _ref.small, medium = _ref.medium, large = _ref.large, width = _ref.width, rest = (0, _objectWithoutProperties2.default)(_ref, ["xsmall", "small", "medium", "large", "width"]); var element; switch (width) { case 'xs': element = typeof xsmall !== 'undefined' ? xsmall : typeof small !== 'undefined' ? small : typeof medium !== 'undefined' ? medium : large; break; case 'sm': element = typeof small !== 'undefined' ? small : typeof medium !== 'undefined' ? medium : large; break; case 'md': element = typeof medium !== 'undefined' ? medium : typeof large !== 'undefined' ? large : small; break; case 'lg': case 'xl': element = typeof large !== 'undefined' ? large : typeof medium !== 'undefined' ? medium : small; break; default: throw new Error("Unknown width ".concat(width)); } return element ? _react.default.cloneElement(element, rest) : null; }; exports.Responsive = Responsive; Responsive.propTypes = { xsmall: _propTypes.default.element, small: _propTypes.default.element, medium: _propTypes.default.element, large: _propTypes.default.element, width: _propTypes.default.string }; var _default = (0, _withWidth.default)()(Responsive); exports.default = _default;