Revert "Quick fix for all usages of compare function in select."

This reverts commit b4be6daea6.
This commit is contained in:
Mel O'Hagan 2024-01-26 10:00:35 +00:00
parent 0c09d5878b
commit 8cb5e2b569
1 changed files with 5 additions and 10 deletions

View File

@ -33,20 +33,15 @@
$: fieldIcon = getFieldAttribute(getOptionIcon, value, options)
$: fieldColour = getFieldAttribute(getOptionColour, value, options)
function compareOptionAndValue(option, value) {
return typeof compare === "function"
? compare(option, value)
: option === value
}
const getFieldAttribute = (getAttribute, value, options) => {
// Wait for options to load if there is a value but no options
if (!options?.length) {
return ""
}
const index = options.findIndex((option, idx) =>
compare(getOptionValue(option, idx), value)
)
const index = options.findIndex((option, idx) => {
const opt = getOptionValue(option, idx)
return typeof compare === "function" ? compare(opt, value) : opt === value
})
return index !== -1 ? getAttribute(options[index], index) : null
}
@ -97,7 +92,7 @@
{tag}
isPlaceholder={value == null || value === ""}
placeholderOption={placeholder === false ? null : placeholder}
isOptionSelected={option => compareOptionAndValue(option, value)}
isOptionSelected={option => compare(option, value)}
onSelectOption={selectOption}
{loading}
/>