refactor(ComboBox): simplified code in case of typed value and fallback value, resolve #1222

This commit is contained in:
István Pató 2022-08-04 10:40:34 +02:00
commit f3f9b753ce
No known key found for this signature in database
GPG key ID: 3A842123BFF8E969

View file

@ -299,25 +299,17 @@
}
} else {
// searching typed value in text list with lowercase
const matchedItem = filteredItems.find(
(e) =>
e.text.toLowerCase() === value?.toLowerCase() && !e.disabled
);
const matchedItem =
filteredItems.find(
(e) =>
e.text.toLowerCase() === value?.toLowerCase() && !e.disabled
) ?? filteredItems.find((e) => !e.disabled);
if (matchedItem) {
// typed value has matched
// typed value has matched or fallback to first enabled item
open = false;
selectedItem = matchedItem;
value = selectedItem.text;
selectedId = selectedItem.id;
} else {
open = false;
// find first enabled item
const matchedItem = filteredItems.find((e) => !e.disabled);
if (matchedItem) {
value = itemToString(matchedItem);
selectedItem = matchedItem;
selectedId = matchedItem.id;
}
}
}
highlightedIndex = -1;