@helpscout/hsds-react
Version:
React component library for Help Scout's Design System
76 lines (56 loc) • 2.65 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _getValidProps = _interopRequireDefault(require("@helpscout/react-utils/dist/getValidProps"));
var _classnames = _interopRequireDefault(require("classnames"));
var _FormGroup = require("./FormGroup.css");
var _jsxRuntime = require("react/jsx-runtime");
var FormGroupChoice = /*#__PURE__*/function (_React$PureComponent) {
(0, _inheritsLoose2.default)(FormGroupChoice, _React$PureComponent);
function FormGroupChoice() {
return _React$PureComponent.apply(this, arguments) || this;
}
var _proto = FormGroupChoice.prototype;
_proto.render = function render() {
var _this$props = this.props,
className = _this$props.className,
children = _this$props.children,
isResponsive = _this$props.isResponsive,
maxWidth = _this$props.maxWidth,
style = _this$props.style,
rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, ["className", "children", "isResponsive", "maxWidth", "style"]);
var componentClassName = (0, _classnames.default)('c-FormGroupChoice', isResponsive && 'is-responsive', className);
var componentStyle = (0, _extends2.default)({
maxWidth: maxWidth
}, style);
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormGroup.FormGroupChoiceUI, (0, _extends2.default)({}, (0, _getValidProps.default)(rest), {
className: componentClassName,
style: componentStyle,
children: children
}));
};
return FormGroupChoice;
}(_react.default.PureComponent);
FormGroupChoice.defaultProps = {
'data-cy': 'FormGroupChoice',
isResponsive: false,
style: {}
};
FormGroupChoice.propTypes = {
/** Custom class names to be added to the component. */
className: _propTypes.default.string,
/** Max-width for the component. */
maxWidth: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/** Enables responsive styling. */
isResponsive: _propTypes.default.bool,
/** Data attr for Cypress tests. */
'data-cy': _propTypes.default.string
};
var _default = FormGroupChoice;
exports.default = _default;