1.0.0 • Published 11 months ago

@element-public/react-radio v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

Radio

Description

Radio Buttons are selection controls that enable users to choose a single option from among multiple onscreen options. Selection controls are found where users are asked to make decisions or declare preferences.

See live demos on storybook

Storybook Radio Demos

Install bundle from npm-e

npm i @element-public/react-components @element-public/themes

Optional: install the component individually

npm i @element-public/react-radio @element-public/themes

Open ~/.npmrc in an editor and add the following line to enable the @element-public scope:

@element-public:registry=https://npm.platforms.engineering

Troubleshooting

See below if you have never installed a package from Bayer's npm-enterprise or run into the following error:

npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR!     npm login

Setup an access token

See the devtools npm-e guide to learn how to create an access token if this is the first time you are using a npm-e package at Bayer or you do not have a line that starts with the following in your ~/.npmrc file:

//npm.platforms.engineering/:_authToken=

Notes

Radios are one of several selection controls. A Radio gives the user two, or usually more, options when taking input. A few notable props for Radio include alignEnd, which changes the alignment of the label and the Radio, checked, which shows the Radio as selected due to either user input or being programmatically set, and hideLabel, which causes the label not be displayed, although it will still be available to screen readers.

Usage

Since many selection inputs exist, Radio is a good choice for scenarios when a few options are presented to a user. When many options exist, Select may be a better option. Checkbox and Switch offer other alternatives for taking user input when only two options are available. Examples and demos of this functionality is included under the corresponding Storybook tabs.

Radio Props

NameTypeDefaultRequiredDescription
alignEndbooleanfalsefalseAligns radio to the right of the label.
checkedstring | booleannullfalseApplies selected state when checked equals value or when checked is set to true.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
disabledbooleanfalsefalsePrevents user for interacting with component.
hideLabelbooleanfalsefalseThe label not be displayed, but will still be available to screen readers. This should only be used when the context of the radio button is clear and understandable. An example use-case could be as a column in a table where the column header specifies the action.
idstringundefinedfalseRandomly generated id. May be overwritten.
labelstringnulltrueDisplay label. The label should always be set even when using hideLabel - it will be used by screen readers.
namestringnulltrueName of the radio button group.
themeColorstring'primary'falseOverride the default (primary) color with the secondary color. Most commonly used when the control is placed on a darker surface.Accepted Values: primary, secondary, danger, success
valuestring|numbernullfalseA custom value will be returned as the second parameter of the change handler.

Radio Deprecated Render Props

NameTypeDefaultRequiredDeprecatedDescription
childrenReact.ReactNodeundefinedfalseUse label instead.Content to be rendered as the radio label. Can be used instead of label to provide more flexibility. Accepts any valid markup. Warning, if label is set, it will be used instead of child content.

Radio Events

NameDefaultRequiredParamsDescription
onChangenullfalseFired when value of the radio button is changed.