in src/select/select.tsx [618:642]
private _getActiveIndex(items: SelectItem<T>[]): number | null {
const {selected, lastInteractedKey} = this.state;
const isNonOptionItem = (item: SelectItem<T>) =>
item.isResetItem || List.isItemType(List.ListProps.Type.SEPARATOR, item);
if (lastInteractedKey !== null && lastInteractedKey !== undefined) {
const index = items.findIndex(item => item.key === lastInteractedKey && !isNonOptionItem(item));
if (index >= 0) return index;
}
let selectedItems: SelectItem<T>[] = [];
if (Array.isArray(selected)) {
selectedItems = selected;
} else if (selected) {
selectedItems = [selected];
}
if (selectedItems.length > 0) {
const lastSelected = selectedItems[selectedItems.length - 1];
const index = items.findIndex(item => item.key === lastSelected.key);
if (index >= 0) return index;
}
return null;
}