Radio

Radios are used to select a single state from multiple options.

The difference from Select is that Radio is visible to the user and can facilitate the comparison of choice, which means there shouldn't be too many of them.

Simple Radios

Sizes

To have the larger or smaller radios, use the size property.

Controlled Radios

You can use the checked, and onChange properties to control the behaviour of the radio.

With RadioGroup

RadioGroup is a helpful wrapper used to group and manage radio controls with an easier API. RadioGroup can also be controlled/uncontrolled like the radios.
To learn more about RadioGroup's API, read it's documentation.

API

Learn more about the properties and the customization points.

Usage

import Radio from "@sonnat/ui/Radio";
//or
import { Radio } from "@sonnat/ui";

Properties

Note that the documentation avoids mentioning all the native props (there are a lot) in this section of the components.

Radio Properties
NameTypeDefaultDescription
classNamestring-Append to the class names applied to the component so you can override or extend the styles.
labelstring-If label was provided, a <label> element will be rendered next to the radio.
namestring-The name of the radio.
valuestring-The value of the radio. The DOM API casts this to a string.
The browser uses "on" as the default value.
size"large"
| "medium"
| "small"
"medium"The size of the radio.
autoFocusbooleanfalseIf true, the radio will be focused automatically.
fluidbooleanfalseIf true, the radio will fill the entire width of the parent.
readOnlybooleanfalseIf true, the radio will be read-only.
checkedboolean-If true, the radio will be checked.
defaultCheckedboolean-The default state of checked. Use when the component is not controlled.
disabledbooleanfalseIf true, the radio will be disabled.
requiredbooleanfalseIf true, the radio will be required.
hasErrorbooleanfalseIf true, the radio will indicate invalid input.
inputPropsobject-The properties applied to the input element.
labelPropsobject-The properties applied to the label element.
onChangefunction-The callback fires when the state has changed.
Signature: function(checkedState: boolean) => void
  • The ref is forwarded to the root element.
  • Any other properties supplied will be provided to the root element.