UNPKG

@hackoregon/component-library

Version:

Official repo for Hack Oregon React component library

93 lines (78 loc) 2.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _core = require("@emotion/core"); var _propTypes = _interopRequireDefault(require("prop-types")); var _FormLabel = _interopRequireDefault(require("@material-ui/core/FormLabel")); var _FormControlLabel = _interopRequireDefault(require("@material-ui/core/FormControlLabel")); var _Radio = _interopRequireDefault(require("@material-ui/core/Radio")); var _RadioGroup = _interopRequireDefault(require("@material-ui/core/RadioGroup")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _templateObject() { var data = _taggedTemplateLiteral(["\n cursor: pointer;\n"]); _templateObject = function _templateObject() { return data; }; return data; } function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); } var radioButtonGroupClass = (0, _core.css)(_templateObject()); var RadioButtonGroup = function RadioButtonGroup(_ref) { var labels = _ref.labels, onChange = _ref.onChange, disabled = _ref.disabled, value = _ref.value, grpLabel = _ref.grpLabel, labelPlacement = _ref.labelPlacement, row = _ref.row; return (0, _core.jsx)(_RadioGroup["default"], { "aria-label": grpLabel, name: grpLabel, onChange: onChange, value: value, row: row, inputProps: { "aria-labelledby": { grpLabel: grpLabel } } }, (0, _core.jsx)(_FormLabel["default"], null, grpLabel), labels.map(function (label) { return (0, _core.jsx)(_FormControlLabel["default"], { key: label.id, value: label, control: (0, _core.jsx)(_Radio["default"], { disabled: disabled, css: radioButtonGroupClass, inputProps: { "aria-label": { label: label } } }), label: label, labelPlacement: labelPlacement }); })); }; RadioButtonGroup.displayName = "RadioButtonGroup"; RadioButtonGroup.propTypes = { labels: _propTypes["default"].arrayOf(_propTypes["default"].string), value: _propTypes["default"].string, grpLabel: _propTypes["default"].string, labelPlacement: _propTypes["default"].string, row: _propTypes["default"].bool, disabled: _propTypes["default"].bool, onChange: _propTypes["default"].func }; RadioButtonGroup.defaultProps = { labels: ["Label 1", "Label 2", "Label 3"], value: "Label 1", grpLabel: "GroupLabel", labelPlacement: "end", row: false, disabled: false }; var _default = RadioButtonGroup; exports["default"] = _default;