UNPKG

@coreui/react-pro

Version:

UI Components Library for React.js

78 lines (74 loc) 2.64 kB
'use strict'; var tslib_es6 = require('../../node_modules/tslib/tslib.es6.js'); var React = require('react'); var PropTypes = require('prop-types'); var index = require('../../node_modules/classnames/index.js'); var BREAKPOINTS = [ 'xxl', 'xl', 'lg', 'md', 'sm', 'xs', ]; var CCol = React.forwardRef(function (_a, ref) { var children = _a.children, className = _a.className, rest = tslib_es6.__rest(_a, ["children", "className"]); var repsonsiveClassNames = []; BREAKPOINTS.forEach(function (bp) { var breakpoint = rest[bp]; delete rest[bp]; var infix = bp === 'xs' ? '' : "-".concat(bp); if (typeof breakpoint === 'number' || typeof breakpoint === 'string') { repsonsiveClassNames.push("col".concat(infix, "-").concat(breakpoint)); } if (typeof breakpoint === 'boolean') { repsonsiveClassNames.push("col".concat(infix)); } if (breakpoint && typeof breakpoint === 'object') { if (typeof breakpoint.span === 'number' || typeof breakpoint.span === 'string') { repsonsiveClassNames.push("col".concat(infix, "-").concat(breakpoint.span)); } if (typeof breakpoint.span === 'boolean') { repsonsiveClassNames.push("col".concat(infix)); } if (typeof breakpoint.order === 'number' || typeof breakpoint.order === 'string') { repsonsiveClassNames.push("order".concat(infix, "-").concat(breakpoint.order)); } if (typeof breakpoint.offset === 'number') { repsonsiveClassNames.push("offset".concat(infix, "-").concat(breakpoint.offset)); } } }); return (React.createElement("div", tslib_es6.__assign({ className: index.default(repsonsiveClassNames.length > 0 ? repsonsiveClassNames : 'col', className) }, rest, { ref: ref }), children)); }); var span = PropTypes.oneOfType([ PropTypes.bool, PropTypes.number, PropTypes.string, PropTypes.oneOf(['auto']), ]); var col = PropTypes.oneOfType([ span, PropTypes.shape({ span: span, offset: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), order: PropTypes.oneOfType([ PropTypes.oneOf(['first', 'last']), PropTypes.number, PropTypes.string, ]), }), ]); CCol.propTypes = { children: PropTypes.node, className: PropTypes.string, xs: col, sm: col, md: col, lg: col, xl: col, xxl: col, }; CCol.displayName = 'CCol'; exports.CCol = CCol; //# sourceMappingURL=CCol.js.map