Skip to main content
cngx-src documentation

createAccordionKeyboardNav

Functioncommon/interactive/accordionv0.1.0

projects/common/interactive/accordion/accordion-keyboard-nav.ts

Description#

Level-2 factory implementing the WAI-ARIA APG accordion keyboard model over a registration model rather than contentChildren roving. Registration is immune to component-view boundaries, so any accordion skin - the @cngx/ui/accordion organism, or a future one that renders each header in its own view - gets working Arrow/Home/End nav.

Pillar 1 (Ableitung statt Verwaltung): the tab stop is derived from the coordinator's rovingActiveId, not managed as a second index. Focus movement is a DOM concern the factory owns - the coordinator only records which header should be the stop; it never touches the DOM.

Signature#

createAccordionKeyboardNav(opts: CngxAccordionKeyboardNavOptions)

Parameters#

Returns#

CngxAccordionKeyboardNav