Skip to content

Commit 951cdd7

Browse files
fix: update label select
1 parent 39b4cce commit 951cdd7

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

src/components/Form/SingleSelect.tsx

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -111,11 +111,12 @@ function SingleSelect({
111111
if (option.disabled) return
112112

113113
const originalOption = optionsList.find((opt) => opt.value === option.value)
114+
const selectedOpt = originalOption || option
114115

115-
setSelectedOption(originalOption || option)
116+
setSelectedOption(selectedOpt)
116117
setIsOpen(false)
117118

118-
onChangeSelect?.(originalOption || option)
119+
onChangeSelect?.(selectedOpt)
119120
}
120121

121122
const optionsWithSelected = optionsList.map((opt) => ({
@@ -124,15 +125,12 @@ function SingleSelect({
124125
}))
125126

126127
const getInputLabel = () => {
127-
let inputLabel = label
128128
if (!isFilter && !selectedOption) return ''
129-
if (!selectedOption) return inputLabel
129+
if (!selectedOption) return label || ''
130130

131-
return selectedOption.value === ''
132-
? inputLabel
133-
: (inputLabel =
134-
optionsList.find((opt) => opt.value === selectedOption.value)
135-
?.label || label)
131+
if (selectedOption.value === '') return label || ''
132+
133+
return selectedOption.label || selectedOption.value.toString()
136134
}
137135

138136
useEffect(() => {
@@ -149,8 +147,12 @@ function SingleSelect({
149147
}, [])
150148

151149
useEffect(() => {
152-
const found = optionsList.find((opt) => opt.value === value)
153-
setSelectedOption(found || null)
150+
if (value !== undefined && value !== null) {
151+
const found = optionsList.find((opt) => opt.value === value)
152+
setSelectedOption(found || null)
153+
} else {
154+
setSelectedOption(null)
155+
}
154156
}, [value, optionsList])
155157

156158
return (

0 commit comments

Comments
 (0)