MCPcopy Create free account
hub / github.com/primer/react / getElementState

Function getElementState

packages/react/src/TreeView/useRovingTabIndex.ts:126–139  ·  view source on GitHub ↗
(element: HTMLElement)

Source from the content-addressed store, hash-verified

124}
125
126export function getElementState(element: HTMLElement): 'open' | 'closed' | 'end' {
127 if (element.getAttribute('role') !== 'treeitem') {
128 throw new Error('Element is not a treeitem')
129 }
130
131 switch (element.getAttribute('aria-expanded')) {
132 case 'true':
133 return 'open'
134 case 'false':
135 return 'closed'
136 default:
137 return 'end'
138 }
139}
140
141export function getVisibleElement(element: HTMLElement, direction: 'next' | 'previous'): HTMLElement | undefined {
142 const root = element.closest('[role=tree]')

Callers 1

getNextFocusableElementFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected