npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@8x8/oxygen-radio

v3.0.0

Published

Oxygen - Radio

Readme

8x8 Oxygen - Radio

Installation

$ yarn add @8x8/oxygen-radio
$ npm install @8x8/oxygen-radio

Usage

import Radio, { RadioGroup } from '@8x8/oxygen-radio';
<Radio name="value0name" value="value0" label="Example Label" isChecked />

RadioGroup using fieldset and legend

It is recommended to use native HTML elements fieldset and legend as it is a more robust solution.

<RadioGroup value="value1">
  // RadioGroup is a fieldset HTML element // add a legend here in order to name
  the Radio group // which aids people using Assistive Technology // by
  announcing the group name on Radio focus
  <legend>Checkbox group title</legend>
  <Radio label="Example label 0" value="value0" name="value0name" />
  <Radio label="Example label 1" value="value1" name="value1name" />
  // As the component is not handling long words(strings without spaces)
  overflow, these should be sent as a custom component and then handled
  correspondingly
  <Radio
    label={<span>Looooooooooooooooooooooooooong label</span>}
    value="value2"
    name="valu2name"
  />
</RadioGroup>

RadioGroup using heading, and aria-labelledby

If you do NOT or cannot use the above fieldset and legend pattern you can set the RadioGroup as=div and use the role=radiogroup and aria-labelledby pattern

<h3 id="radio-group-title">Checkbox group title</h3>
<RadioGroup as="div" role="radiogroup" aria-labelledby="radio-group-title" value="value1">
  <Radio label="Example label 0" value="value0" name="value0name" />
  <Radio label="Example label 1" value="value1" name="value1name" />
  // As the component is not handling long words(strings without spaces) overflow, these should be sent as a custom
  component and then handled correspondingly
  <Radio label={<span>Looooooooooooooooooooooooooong label</span>} value="value2" name="valu2name" />
</RadioGroup>

Props

Radio

| Name | Type | Default | Description | | ------------------ | -------------------------------------------------------------------------------------------------------------------------- | --------- | ----------------------------------------------------------------------------------- | | theme | Partial<RadioTheme> | | Overrides applied on top of the light or dark settings resolved by OxygenProvider | | testId | string | 'RADIO' | Radio test id | | label | node | '' | Specifies the label content for the radio input | | value | oneOfType([ number, string, bool, shape({ id: string.isRequired, })]) | '' | Radio input value (used to match with the selected value of the group) | | name | string | undefined | Specifies the name prop for the radio input | | infoBoxText | node | undefined | Shows info icon and renders text inside Tooltip | | infoBoxButtonLabel | string | undefined | Adds accessible aria-label to info button | | isChecked | bool | false | Specifies if the input is checked | | isDisabled | bool | false | Disabled state of the radio input | | onChange | func | noop | Callback for the radio input |

RadioGroup

| Name | Type | Default | Description | | ------------ | --------------------------------------------------------------------------------------------------------------------------- | ------- | ----------------------------------------------------------------------------------- | | children | oneOfType([array, node]) | null | Radio inputs to be rendered | | isHorizontal | bool | false | Specifies if the group should be displayed horizontally or vertically | | name | string | '' | Name prop to be passed to the radio inputs | | onChange | func | noop | Callback function to be passed to the radio inputs | | theme | Partial<RadioGroupTheme> | | Overrides applied on top of the light or dark settings resolved by OxygenProvider | | value | oneOfType([ number, string, bool, shape({ id: string.isRequired, }),]) | '' | Specifies the selected value from the radio group |