Skip to content

Demos#

Unchecked ToggleButton#

<ToggleButton label="Label" text="Toggle Me" />

Checked ToggleButton#

<ToggleButton
  label="Label"
  text="Checked ToggleButton"
  checked
  onChange={({ checked }) => {
    console.log('onChange', checked)
  }}
/>

Default ToggleButton group#

ToggleButton Group
<ToggleButton.Group
  label="ToggleButton Group"
  value="first"
  onChange={({ value }) => {
    console.log('onChange', value)
  }}
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" />
  <ToggleButton text="Third" value="third" />
</ToggleButton.Group>

Multi-select ToggleButton group#

Multi-select
<ToggleButton.Group
  label="Multi-select"
  multiselect={true}
  values={['first', 'third']}
  onChange={({ values }) => {
    console.log('onChange', values)
  }}
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" />
  <ToggleButton text="Third" value="third" />
</ToggleButton.Group>

Vertical aligned ToggleButton group with checkbox variant and multiselect#

Vertical Group
<ToggleButton.Group
  label="Vertical Group"
  layoutDirection="column"
  multiselect={true}
  variant="checkbox"
  onChange={({ values }) => {
    console.log('onChange', values)
  }}
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" />
  <ToggleButton text="Third" value="third" checked />
</ToggleButton.Group>

ToggleButton group as multiselect with a status message#

ToggleButton Group with statusError message
<ToggleButton.Group
  label="ToggleButton Group with status"
  status="Error message"
  multiselect={true}
  onChange={({ values }) => {
    console.log('onChange', values)
  }}
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" checked />
  <ToggleButton text="Third" value="third" checked={true} />
</ToggleButton.Group>

ToggleButton with status messages and a group variant as radio#

ToggleButtons with statusError messageInfo message
<ToggleButton.Group
  label="ToggleButtons with status"
  variant="radio"
  onChange={({ value }) => {
    console.log('onChange', value)
  }}
>
  <ToggleButton text="First" value="first" status="error" />
  <ToggleButton
    text="Second"
    value="second"
    checked
    status="Error message"
  />
  <ToggleButton
    text="Third"
    value="third"
    status="Info message"
    statusState="information"
  />
</ToggleButton.Group>

Disabled ToggleButton group#

Disabled Group
Disabled Radio Group
Disabled Group on dark
Disabled Radio Group on dark
<ToggleButton.Group
  label="Disabled Group"
  disabled
  value="first"
  variant="checkbox"
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" />
  <ToggleButton text="Third" value="third" checked />
</ToggleButton.Group>
<ToggleButton.Group
  label="Disabled Radio Group"
  disabled
  value="first"
  variant="radio"
  top
>
  <ToggleButton text="First" value="first" />
  <ToggleButton text="Second" value="second" />
</ToggleButton.Group>
<Section surface="dark" innerSpace top>
  <ToggleButton.Group
    label="Disabled Group on dark"
    disabled
    value="first"
    variant="checkbox"
  >
    <ToggleButton text="First" value="first" />
    <ToggleButton text="Second" value="second" />
  </ToggleButton.Group>
  <ToggleButton.Group
    label="Disabled Radio Group on dark"
    disabled
    value="first"
    variant="radio"
    top
  >
    <ToggleButton text="First" value="first" />
    <ToggleButton text="Second" value="second" />
  </ToggleButton.Group>
</Section>

ToggleButtons with a suffix#

With suffixesError message
<ToggleButton.Group
  label="With suffixes"
  suffix={<HelpButton title="Group suffix">Group suffix</HelpButton>}
>
  <ToggleButton text="First" value="first" />
  <ToggleButton
    text="Second"
    value="second"
    status="Error message"
    suffix={<HelpButton title="Button suffix">Button suffix</HelpButton>}
  />
  <ToggleButton text="Third" value="third" checked />
</ToggleButton.Group>

ToggleButtons with icons only#

Icons only
<ToggleButton.Group label="Icons only">
  <ToggleButton icon="bell" title="Notifications" value="first" checked />
  <ToggleButton icon="loupe" title="Search" value="second" />
  <ToggleButton icon="calendar" title="Calendar" value="third" />
</ToggleButton.Group>
Suggest an edit