1
0
Fork 0
mirror of synced 2024-07-19 13:15:49 +12:00

Quick fix for all usages of compare function in select.

This commit is contained in:
mike12345567 2024-01-25 08:46:59 +00:00
parent a8c5588f15
commit b4be6daea6

View file

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