1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4 |
|
5 | exports.__esModule = true;
|
6 | exports.default = void 0;
|
7 |
|
8 | var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9 |
|
10 | var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
11 |
|
12 | var _classnames = _interopRequireDefault(require("classnames"));
|
13 |
|
14 | var _react = _interopRequireDefault(require("react"));
|
15 |
|
16 | var _ThemeProvider = require("./ThemeProvider");
|
17 |
|
18 | var DEVICE_SIZES = ['xl', 'lg', 'md', 'sm', 'xs'];
|
19 |
|
20 | var Col = _react.default.forwardRef(
|
21 | function (_ref, ref) {
|
22 | var bsPrefix = _ref.bsPrefix,
|
23 | className = _ref.className,
|
24 | _ref$as = _ref.as,
|
25 | Component = _ref$as === void 0 ? 'div' : _ref$as,
|
26 | props = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["bsPrefix", "className", "as"]);
|
27 | var prefix = (0, _ThemeProvider.useBootstrapPrefix)(bsPrefix, 'col');
|
28 | var spans = [];
|
29 | var classes = [];
|
30 | DEVICE_SIZES.forEach(function (brkPoint) {
|
31 | var propValue = props[brkPoint];
|
32 | delete props[brkPoint];
|
33 | var span, offset, order;
|
34 |
|
35 | if (propValue != null && typeof propValue === 'object') {
|
36 | var _propValue$span = propValue.span;
|
37 | span = _propValue$span === void 0 ? true : _propValue$span;
|
38 | offset = propValue.offset;
|
39 | order = propValue.order;
|
40 | } else {
|
41 | span = propValue;
|
42 | }
|
43 |
|
44 | var infix = brkPoint !== 'xs' ? "-" + brkPoint : '';
|
45 | if (span != null) spans.push(span === true ? "" + prefix + infix : "" + prefix + infix + "-" + span);
|
46 | if (order != null) classes.push("order" + infix + "-" + order);
|
47 | if (offset != null) classes.push("offset" + infix + "-" + offset);
|
48 | });
|
49 |
|
50 | if (!spans.length) {
|
51 | spans.push(prefix);
|
52 | }
|
53 |
|
54 | return _react.default.createElement(Component, (0, _extends2.default)({}, props, {
|
55 | ref: ref,
|
56 | className: _classnames.default.apply(void 0, [className].concat(spans, classes))
|
57 | }));
|
58 | });
|
59 |
|
60 | Col.displayName = 'Col';
|
61 | var _default = Col;
|
62 | exports.default = _default;
|
63 | module.exports = exports["default"]; |
\ | No newline at end of file |