Skip to content

Releases: radix-ng/primitives

primitives@1.0.8

25 Jun 16:02
cee36a0

Choose a tag to compare

1.0.8 (2026-06-25)

🚀 Features

  • forms: add validation display modes for signal forms (4cfd80cb)
  • forms: validation state for editable (de78cbb4)
  • forms: validation state for date-field & time-field (3448d12b)
  • combobox,autocomplete: Signal Forms validation state (f6ff3878)
  • slider: signal Forms validation state via RdxFormUiControlBase (d37b5ea8)
  • forms: reusable Signal Forms state surface (base/helper/host-directive) (f437cf65)
  • select: added signal forms adapter (600253c1)
  • forms: signal forms adapter + control validation state + Field.Item (95b8e52a)

🩹 Fixes

  • forms: form data-invalid respects per-field validationMode override (07185c59)
  • forms: dedupe field error messages from dual Signal Forms adapters (c73351d2)
  • forms: robust Signal Forms adapter teardown + nested-path errorsFor (2a7016ea)

primitives@1.0.7

20 Jun 19:09
33dbe6c

Choose a tag to compare

1.0.7 (2026-06-20)

🩹 Fixes

  • number-field: read-only disables steppers; drop invalid aria-readonly (bf076fe3)
  • progress: only set aria-labelledby while a label is mounted (498cf5bb)
  • field: gate aria-required/disabled to non-native controls; explicit context interface; SSR ids (733c791b)
  • checkbox: mark form control touched on toggle; explicit root context interface (7caa27a5)
  • accordion: wire trigger aria-controls to its panel; type equality helper as unknown (b881f7b0)

Refactors

  • toolbar: input conveys disabled via aria-disabled only; guard pointer while disabled (544eecfc)
  • ⚠️ progress: drop data-state; keep min/max; aria-hidden value; SSR ids (190fce46)
  • toggle: item supplies nextPressed to the group; Space activates on keyup (8a3dab8b)
  • ⚠️ toggle: remove unused RdxToggleVisuallyHiddenInputDirective (1a2a91c1)

⚠️ Breaking Changes

  • progress: drop data-state; keep min/max; aria-hidden value; SSR ids (190fce46)
    data-state removed from all Progress parts — style with the boolean
    data-complete / data-progressing / data-indeterminate attributes instead. The root no longer
    sets aria-describedby (the value part is now aria-hidden).
  • toggle: remove unused RdxToggleVisuallyHiddenInputDirective (1a2a91c1)
    RdxToggleVisuallyHiddenInputDirective
    (selector input[rdxToggleVisuallyHiddenInput])
    is removed. It had no consumers and contradicted Base UI's Toggle,
    which never participates in form
    validation. For a form-submitting toggle,
    use Checkbox or Switch (both ship hidden form inputs).

primitives@1.0.6

20 Jun 16:38
eb6c108

Choose a tag to compare

1.0.6 (2026-06-20)

🩹 Fixes

  • popover: scope aria-controls to active trigger, align data-instant (11fbde4b)

primitives@1.0.5

20 Jun 05:49
64430cb

Choose a tag to compare

1.0.5 (2026-06-20)

🩹 Fixes

  • composite: match Base UI native-input handling in composite root (f3aa7690)

primitives@1.0.4

19 Jun 20:21
181234f

Choose a tag to compare

1.0.4 (2026-06-19)

🚀 Features

  • ⚠️ accordion: align with Base UI part set (5d922145)

⚠️ Breaking Changes

  • accordion: align with Base UI part set (5d922145)
    data-state replaced by data-open/data-panel-open;
    RdxAccordionContentDirective →
    RdxAccordionPanelDirective ([rdxAccordionContent] → [rdxAccordionPanel]);
    onValueChange/onOpenChange now
    emit { value|open, eventDetails }; CSS vars --radix-accordion-content-* → --accordion-panel-*; type,
    collapsible and id inputs removed (use multiple).

primitives@1.0.3

19 Jun 18:39
6a28d83

Choose a tag to compare

1.0.3 (2026-06-19)

🚀 Features

  • ⚠️ collapsible: align panel lifecycle with Base UI (07ca554b)

⚠️ Breaking Changes

  • collapsible: align panel lifecycle with Base UI (07ca554b)
    onOpenChange now emits { open, eventDetails } instead of boolean.
    BREAKING CHANGE: RdxCollapsiblePanelPresenceDirective was removed.
    BREAKING CHANGE: RdxAccordionContentPresenceDirective was removed.

primitives@1.0.2

19 Jun 17:26
79a599f

Choose a tag to compare

1.0.2 (2026-06-19)

🚀 Features

  • ⚠️ checkbox: align with Base UI state API (e16a671b)

🩹 Fixes

  • tabs: align behavior (4b024278)
  • menu: clear trigger mouseup grace timer (7dc7d9f4)

⚠️ Breaking Changes

  • checkbox: align with Base UI state API (e16a671b)

primitives@1.0.1

19 Jun 06:45
6f2764b

Choose a tag to compare

1.0.1 (2026-06-19)

🩹 Fixes

primitives@1.0.0

19 Jun 06:28
5e60220

Choose a tag to compare

1.0.0 (2026-06-19)

🚀 Features

  • added composite navigation for roving tabindex (240a7521)
  • drawer: add virtual keyboard provider (5caa55ad)
  • slider: align with Base UI event and thumb positioning (fd3cac7c)
  • primitives: add cancelable value change events (e02f16b0)
  • tooltip: align nested trigger hover behavior (e0b1298e)
  • primitives: add floating focus portal bridge and shared trigger interaction (e4ef0fd6)
  • direction-provider: add RTL direction context and docs (4972395c)
  • combobox: document cancellable open change flow (03f4bd53)
  • select: add cancelable change details and interaction state (2752dae7)
  • core: add shared floating tree (#420)
  • core: dev-mode diagnostics helpers + tag-aware misuse checks (ADR 0013) (5c9a5c79)
  • ⚠️ popper: thin positioners — single-source inputs, unified CSS vars, z-index decoupling (ADR 0012) (#419)
  • presence: subtree-aware WAAPI exit detection (ADR 0011) (#418)
  • select: finish ADR 0010 §6 restructure — keyboard a11y + scroll fixes, object-values story (b4030f54)
  • select: finish §6 restructure — popup owns RdxPopperContent (ADR 0010) (9ac4d430)
  • portal: structural *rdxXxxPortal merging portal + presence (ADR 0010) (19dc851c)
  • autocomplete: add Autocomplete primitive (modes, grid, virtualized, async, forms) (f243c924)
  • core: link missing-context errors to the primitive docs page (bd6ed1b2)
  • ng-add: write AI agent instructions to AGENTS.md/CLAUDE.md, add common-mistakes skill ref (862bc13e)
  • added Form top layer (2cee1571)
  • combobox: add external list virtualization (virtualized, items, filteredItems) (cb9091fc)
  • ⚠️ select: migrate to Base UI (highlight nav, renamed parts, modal) (2515f193)
  • added Combobox (#414)
  • input: upd Signal Forms FormUiControl surface (47e4d608)
  • cropper: disabled, SSR safety, keyboard zoom, and signals cleanup (9c413fc9)
  • menu: keep submenu open across diagonal hover via safe polygon (#413)
  • scroll-area: add headless Scroll Area primitive (b6864ac5)
  • skills: serve LLM docs (llms.txt) from Storybook on the main domain (d633c9cb)
  • toast: add headless Toast primitive ported from Base UI (b42be9e9)
  • ⚠️ number-field: rewrite over Base UI architecture (8c386b84)
  • ⚠️ checkbox, switch: add Signal Forms control interfaces and split indeterminate/value (fcc4e139)
  • slider: rewrite over Base UI architecture (#411)
  • ⚠️ switch: rewrite over Base UI architecture (#6)
  • ⚠️ toggle, toggle-group, toolbar: rewrite over Base UI architecture (a011a68a)
  • ⚠️ tabs: rewrite over Base UI architecture (18875d8a)
  • ⚠️ collapsible: rewrite over Base UI architecture (bd741efe)
  • ⚠️ navigation-menu: rewrite over Base UI architecture (419fdb7f)
  • drawer: add Drawer primitive over declarative Dialog (35446a45)
  • alert-dialog: rewrite over Dialog with variant profile (2db2e2db)
  • dialog: add handle, multiple triggers, viewport, nested (4f05865f)
  • dialog: rewrite off CDK to declarative Base UI compound on shared primitives (aea5a7bf)
  • accordion: align with Base UI, add keepMounted, fix single-mode flicker (319f1c52)
  • accordion: align with Base UI API, fix data-disabled bugs, refactor stories (c2435c08)
  • checkbox: add checkbox group with select-all parent and aria-controls (ddbe5c84)
  • ⚠️ primitives: rewrite Context Menu on the owned Menu/Floating UI (26e73ecb)
  • primitives: rewrite Menu and Menubar on the owned Floating UI stack (fc128e7b)
  • primitives: add Meter primitive (2930d8a4)
  • progress: align primitive with Base UI API (73071a25)
  • primitives: add fieldset primitive (e365bbef)
  • input: add primitive with field integration and stories (79b72a02)
  • primitives: improve install schematic and align radio with Base UI (0fbcc706)
  • primitives: improve Angular CLI installation schematic (b85f51fd)
  • add Field primitive (7cbc0a7b)
  • separator: remove decorative input and upd docs (aaee58bb)
  • preview-card: added new primitive and remove old hover-card (819d5ac4)
  • popover: updated Lifecycle API, grace-area and Base UI parity (877d5950)
  • popover: add controlled multiple-trigger API (447e3ae7)
  • popover: add hover opening and animated viewport (b391ddbe)
  • tooltip: per-trigger disabled and Base UI positioner defaults (e6103539)
  • tooltip: added per-trigger delay/closeDelay and data-uncentered (2a5770e6)
  • checkbox: review fixes, tests, form examples + Storybook full-source code panel (4d416f0b)
  • button: add headless button primitive and centralized demo styles (ed74fa38)
  • arrow: hide decorative svg from a11y tree, theme via currentColor (325a26eb)
  • portal: reactive container move with flexible container input (19cfa48e)

🩹 Fixes

  • accordion: remove roving focus behavior w3c 3434 (8349ba40)
  • menubar: restore arrow-down activation after composite focus moves (46c9aaa3)
  • navigation-menu: align nested submenu keyboard behavior (26e3cf71)
  • focus navigation (8dadcf96)
  • popover: align focus and accessibility (7699f78e)
  • scroll-area: support Angular CSP nonce for injected styles (381780a9)
  • toggle-group: align toolbar disabled and grouped toggle diagnostics (8fff2502)
  • primitives: align group events and slider docs (06c315fb)
  • align floating focus and open-change contracts (063b5ff9)
  • align select ids and trigger focus guards (f9ba1a4e)
  • menu: safe polygon between trigger and popup (386a1a49)
  • menu: radioGroup API and GroupLabel disabled state ([c61d45e](...
Read more

primitives@1.0.0-beta.5

18 Jun 15:57
cd701de

Choose a tag to compare

Pre-release

1.0.0-beta.5 (2026-06-18)

🚀 Features

  • slider: align with Base UI event and thumb positioning (fd3cac7c)
  • primitives: add cancelable value change events (e02f16b0)
  • tooltip: align nested trigger hover behavior (e0b1298e)
  • primitives: add floating focus portal bridge and shared trigger interaction (e4ef0fd6)

🩹 Fixes

  • align floating focus and open-change contracts (063b5ff9)
  • align select ids and trigger focus guards (f9ba1a4e)