@hackoregon/component-library
Version:
Official repo for Hack Oregon React component library
93 lines (78 loc) • 2.73 kB
JavaScript
;
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;