Skip to content
Inputs

RadioGroup

A group of radio buttons with keyboard navigation. The group handles arrow key navigation and value management.

LlmRadioGroup + LlmRadio
WCAG AA0 deps

Demo

Live PreviewReact
html
<llm-radio-group name="plan" [(value)]="plan">
  <llm-radio radioValue="free">Free</llm-radio>
  <llm-radio radioValue="pro">Pro</llm-radio>
  <llm-radio radioValue="enterprise">Enterprise</llm-radio>
</llm-radio-group>

API (Angular)

PropTypeDefaultDescription
valuestring''Currently selected value
onValueChange(value: string) => voidCalled when selection changes
disabledbooleanfalseDisables all radios in the group
readonlybooleanfalseMakes all radios in the group read-only
invalidbooleanfalseApplies invalid/error styling
requiredbooleanfalseMarks field as required
namestring''HTML name attribute (propagated to radios)

Composition parts

RadioGroup is composed from the parts below. Each part is its own component — drop the ones you don't need.

LlmRadio

An individual radio button. Place inside LlmRadioGroup — the group manages the checked state.

PropTypeDefaultDescription
radioValuestringValue this radio contributes when selected (required).
disabledbooleanfalseDisable this radio only.

Import

ts
import { LlmRadioGroup, LlmRadio } from '@atelier-ui/angular';

Accessibility

ARIA roleradiogroup

KeyAction
TabMove focus into the group (to the checked radio, or the first radio if none is checked).
Arrow Up / LeftSelect the previous radio, wrapping to the last.
Arrow Down / RightSelect the next radio, wrapping to the first.
SpaceSelect the focused radio.
  • Only the currently selected radio is in the tab sequence (roving tabindex) — the whole group is one tab stop.
  • If you supply a label via <label> or aria-labelledby on the group, screen readers announce it when focus enters.