UNPKG

@primer/components

Version:
55 lines (45 loc) 1.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _styledComponents = _interopRequireDefault(require("styled-components")); var _react = _interopRequireDefault(require("react")); var _sx = _interopRequireDefault(require("./sx")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } const StyledRadio = _styledComponents.default.input.withConfig({ displayName: "Radio__StyledRadio", componentId: "sc-1ak1fjg-0" })(["cursor:pointer;", " ", ""], props => props.disabled && `cursor: not-allowed;`, _sx.default); /** * An accessible, native radio component for selecting one option from a list. */ const Radio = /*#__PURE__*/_react.default.forwardRef(({ checked, disabled, sx: sxProp, required, validationStatus, value, name, ...rest }, ref) => { return /*#__PURE__*/_react.default.createElement(StyledRadio, _extends({ type: "radio", value: value, name: name, ref: ref, disabled: disabled, "aria-disabled": disabled ? 'true' : 'false', checked: checked, "aria-checked": checked ? 'true' : 'false', required: required, "aria-required": required ? 'true' : 'false', "aria-invalid": validationStatus === 'error' ? 'true' : 'false', sx: sxProp }, rest)); }); Radio.displayName = 'Radio'; var _default = Radio; exports.default = _default;