UNPKG

antd

Version:

An enterprise-class UI design language and React-based implementation

82 lines (74 loc) 3.31 kB
import _extends from 'babel-runtime/helpers/extends'; import _defineProperty from 'babel-runtime/helpers/defineProperty'; import _classCallCheck from 'babel-runtime/helpers/classCallCheck'; import _createClass from 'babel-runtime/helpers/createClass'; import _possibleConstructorReturn from 'babel-runtime/helpers/possibleConstructorReturn'; import _inherits from 'babel-runtime/helpers/inherits'; var __rest = this && this.__rest || function (s, e) { var t = {}; for (var p in s) { if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; }if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]]; }return t; }; import React from 'react'; import { Children, cloneElement } from 'react'; import classNames from 'classnames'; import PropTypes from 'prop-types'; var Row = function (_React$Component) { _inherits(Row, _React$Component); function Row() { _classCallCheck(this, Row); return _possibleConstructorReturn(this, (Row.__proto__ || Object.getPrototypeOf(Row)).apply(this, arguments)); } _createClass(Row, [{ key: 'render', value: function render() { var _classNames; var _a = this.props, type = _a.type, justify = _a.justify, align = _a.align, className = _a.className, gutter = _a.gutter, style = _a.style, children = _a.children, _a$prefixCls = _a.prefixCls, prefixCls = _a$prefixCls === undefined ? 'ant-row' : _a$prefixCls, others = __rest(_a, ["type", "justify", "align", "className", "gutter", "style", "children", "prefixCls"]); var classes = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls, !type), _defineProperty(_classNames, prefixCls + '-' + type, type), _defineProperty(_classNames, prefixCls + '-' + type + '-' + justify, type && justify), _defineProperty(_classNames, prefixCls + '-' + type + '-' + align, type && align), _classNames), className); var rowStyle = gutter > 0 ? _extends({ marginLeft: gutter / -2, marginRight: gutter / -2 }, style) : style; var cols = Children.map(children, function (col) { if (!col) { return null; } if (col.props && gutter > 0) { return cloneElement(col, { style: _extends({ paddingLeft: gutter / 2, paddingRight: gutter / 2 }, col.props.style) }); } return col; }); return React.createElement( 'div', _extends({}, others, { className: classes, style: rowStyle }), cols ); } }]); return Row; }(React.Component); export default Row; Row.defaultProps = { gutter: 0 }; Row.propTypes = { type: PropTypes.string, align: PropTypes.string, justify: PropTypes.string, className: PropTypes.string, children: PropTypes.node, gutter: PropTypes.number, prefixCls: PropTypes.string };