UNPKG

@flexis/ui

Version:

Styleless React Components

95 lines (84 loc) 6.48 kB
import _extends from "@babel/runtime-corejs3/helpers/extends"; import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty"; import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/objectWithoutProperties"; import _classCallCheck from "@babel/runtime-corejs3/helpers/classCallCheck"; import _createClass from "@babel/runtime-corejs3/helpers/createClass"; import _possibleConstructorReturn from "@babel/runtime-corejs3/helpers/possibleConstructorReturn"; import _getPrototypeOf from "@babel/runtime-corejs3/helpers/getPrototypeOf"; import _inherits from "@babel/runtime-corejs3/helpers/inherits"; import React from 'react'; var _createElement = React.createElement; var PureComponent = React.PureComponent, Children = React.Children, cloneElement = React.cloneElement; import PropTypes from 'prop-types'; import { AlignSideVariant, AlignSideValues } from '../common/types'; import { style, classes } from './FormGroup.st.css'; var FormGroup = /** @class */ function () { var FormGroup = /*#__PURE__*/function (_PureComponent) { _inherits(FormGroup, _PureComponent); function FormGroup() { _classCallCheck(this, FormGroup); return _possibleConstructorReturn(this, _getPrototypeOf(FormGroup).apply(this, arguments)); } _createClass(FormGroup, [{ key: "render", value: function render() { var _style2; var _this$props = this.props, className = _this$props.className, idProp = _this$props.id, flex = _this$props.flex, label = _this$props.label, description = _this$props.description, icon = _this$props.icon, alignIcon = _this$props.alignIcon, children = _this$props.children, props = _objectWithoutProperties(_this$props, ["className", "id", "flex", "label", "description", "icon", "alignIcon", "children"]); var child = Children.only(children); var childProps = child.props; var id = idProp || childProps.id; var withIcon = typeof icon !== 'undefined'; var inputIcon = null; if (withIcon) { inputIcon = cloneElement(icon, { className: style(classes.icon, _defineProperty({}, "".concat(alignIcon, "Align"), Boolean(alignIcon)), icon.props.className) }); } return _createElement("div", _extends({}, props, { className: style(classes.root, { withIcon: withIcon }, className) }), cloneElement(child, { id: id, className: style(classes.input, (_style2 = {}, _defineProperty(_style2, "".concat(alignIcon, "Icon"), withIcon), _defineProperty(_style2, "flex", flex), _style2), childProps.className) }), inputIcon, label && _createElement("label", { className: classes.label, htmlFor: id }, label), description && _createElement("label", { className: classes.description, htmlFor: id }, description)); } }]); return FormGroup; }(PureComponent); process.env.NODE_ENV !== "production" ? FormGroup.propTypes = { id: PropTypes.string, flex: PropTypes.bool, label: PropTypes.oneOfType([PropTypes.string, PropTypes.element]), description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]), icon: PropTypes.element, alignIcon: PropTypes.oneOf(AlignSideValues), children: PropTypes.node.isRequired } : void 0; FormGroup.defaultProps = { flex: true, alignIcon: AlignSideVariant.Left }; return FormGroup; }(); export default FormGroup; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0Zvcm1Hcm91cC9Gb3JtR3JvdXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFQLE1BTU8sT0FOUDs7Ozs7QUFPQSxPQUFPLFNBQVAsTUFBc0IsWUFBdEI7QUFJQSxTQUVDLGdCQUZELEVBR0MsZUFIRCxRQUlPLGlCQUpQO0FBS0EsU0FDQyxLQURELEVBRUMsT0FGRCxRQUdPLG9CQUhQOztBQW9CQSxJQUFBLFNBQUE7QUFBQTtBQUFBLFlBQUE7QUFBQSxNQUFxQixTQUFyQjtBQUFBOztBQUFBO0FBQUE7O0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUEsK0JBdUJPO0FBQUE7O0FBQUEsMEJBWUQsS0FBSyxLQVpKO0FBQUEsWUFHSixTQUhJLGVBR0osU0FISTtBQUFBLFlBSUEsTUFKQSxlQUlKLEVBSkk7QUFBQSxZQUtKLElBTEksZUFLSixJQUxJO0FBQUEsWUFNSixLQU5JLGVBTUosS0FOSTtBQUFBLFlBT0osV0FQSSxlQU9KLFdBUEk7QUFBQSxZQVFKLElBUkksZUFRSixJQVJJO0FBQUEsWUFTSixTQVRJLGVBU0osU0FUSTtBQUFBLFlBVUosUUFWSSxlQVVKLFFBVkk7QUFBQSxZQVdELEtBWEM7O0FBYUwsWUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQVQsQ0FBYyxRQUFkLENBQWQ7QUFiSyxZQWVHLFVBZkgsR0FnQkQsS0FoQkMsQ0FlSixLQWZJO0FBaUJMLFlBQU0sRUFBRSxHQUFHLE1BQU0sSUFBSSxVQUFVLENBQUMsRUFBaEM7QUFDQSxZQUFNLFFBQVEsR0FBRyxPQUFPLElBQVAsS0FBZ0IsV0FBakM7QUFDQSxZQUFJLFNBQVMsR0FBc0IsSUFBbkM7O0FBRUEsWUFBSSxRQUFKLEVBQWM7QUFDYixVQUFBLFNBQVMsR0FBRyxZQUFZLENBQ3ZCLElBRHVCLEVBRXZCO0FBQ0MsWUFBQSxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFULGdDQUNYLFNBRFcsWUFDUSxPQUFPLENBQUMsU0FBRCxDQURmLEdBRWIsSUFBSSxDQUFDLEtBQUwsQ0FBVyxTQUZFO0FBRGpCLFdBRnVCLENBQXhCO0FBUUE7O0FBRUQsZUFDQyxtQ0FDSyxLQURMO0FBRUMsVUFBQSxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFULEVBQWU7QUFDOUIsWUFBQSxRQUFRLEVBQVI7QUFEOEIsV0FBZixFQUViLFNBRmE7QUFGakIsWUFNRSxZQUFZLENBQ1osS0FEWSxFQUVaO0FBQ0MsVUFBQSxFQUFFLEVBQUYsRUFERDtBQUVDLFVBQUEsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBVCxvREFDWCxTQURXLFdBQ08sUUFEUCxvQ0FFZixJQUZlLGFBR2IsVUFBVSxDQUFDLFNBSEU7QUFGakIsU0FGWSxDQU5kLEVBZ0JFLFNBaEJGLEVBaUJFLEtBQUssSUFDTDtBQUNDLFVBQUEsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQURwQjtBQUVDLFVBQUEsT0FBTyxFQUFFO0FBRlYsV0FJRSxLQUpGLENBbEJGLEVBeUJFLFdBQVcsSUFDWDtBQUNDLFVBQUEsU0FBUyxFQUFFLE9BQU8sQ0FBQyxXQURwQjtBQUVDLFVBQUEsT0FBTyxFQUFFO0FBRlYsV0FJRSxXQUpGLENBMUJGLENBREQ7QUFvQ0E7QUEzRkY7O0FBQUE7QUFBQSxJQUF1QyxhQUF2Qzs7QUFFUSwwQ0FBQSxTQUFBLENBQUEsU0FBQSxHQUFZO0FBQ2xCLElBQUEsRUFBRSxFQUFXLFNBQVMsQ0FBQyxNQURMO0FBRWxCLElBQUEsSUFBSSxFQUFTLFNBQVMsQ0FBQyxJQUZMO0FBR2xCLElBQUEsS0FBSyxFQUFRLFNBQVMsQ0FBQyxTQUFWLENBQW9CLENBQ2hDLFNBQVMsQ0FBQyxNQURzQixFQUVoQyxTQUFTLENBQUMsT0FGc0IsQ0FBcEIsQ0FISztBQU9sQixJQUFBLFdBQVcsRUFBRSxTQUFTLENBQUMsU0FBVixDQUFvQixDQUNoQyxTQUFTLENBQUMsTUFEc0IsRUFFaEMsU0FBUyxDQUFDLE9BRnNCLENBQXBCLENBUEs7QUFXbEIsSUFBQSxJQUFJLEVBQVMsU0FBUyxDQUFDLE9BWEw7QUFZbEIsSUFBQSxTQUFTLEVBQUksU0FBUyxDQUFDLEtBQVYsQ0FBZ0IsZUFBaEIsQ0FaSztBQWFsQixJQUFBLFFBQVEsRUFBSyxTQUFTLENBQUMsSUFBVixDQUFlO0FBYlYsR0FBWjtBQWdCQSxFQUFBLFNBQUEsQ0FBQSxZQUFBLEdBQWU7QUFDckIsSUFBQSxJQUFJLEVBQU8sSUFEVTtBQUVyQixJQUFBLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQztBQUZQLEdBQWY7QUEwRVIsU0FBQSxTQUFBO0FBQUMsQ0E1RkQsRUFBQTs7ZUFBcUIsUyIsInNvdXJjZVJvb3QiOiIifQ==