in src/focus-zone.ts [439:461]
function endFocusManagement(...elements: HTMLElement[]) {
for (const element of elements) {
const focusableElementIndex = focusableElements.indexOf(element)
if (focusableElementIndex >= 0) {
focusableElements.splice(focusableElementIndex, 1)
}
const savedIndex = savedTabIndex.get(element)
if (savedIndex !== undefined) {
if (savedIndex === null) {
element.removeAttribute('tabindex')
} else {
element.setAttribute('tabindex', savedIndex)
}
savedTabIndex.delete(element)
}
// If removing the last-focused element, move focus to the first element in the list.
if (element === currentFocusedElement) {
const nextElementToFocus = getFirstFocusableElement()
updateFocusedElement(nextElementToFocus)
}
}
}