fix: 🐛
This commit is contained in:
parent
1a58e54ed0
commit
8655fd1840
2 changed files with 12 additions and 6 deletions
|
|
@ -168,18 +168,18 @@ const SearchBar = forwardRef<
|
||||||
}, [input, debouncedInput, profiles])
|
}, [input, debouncedInput, profiles])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (list) {
|
setDisplayList(searching && !!input)
|
||||||
|
}, [searching, input])
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (displayList && list) {
|
||||||
modalManager.register(id, () => {
|
modalManager.register(id, () => {
|
||||||
setDisplayList(false)
|
setDisplayList(false)
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
modalManager.unregister(id)
|
modalManager.unregister(id)
|
||||||
}
|
}
|
||||||
}, [list])
|
}, [displayList, list])
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
setDisplayList(searching && !!input)
|
|
||||||
}, [searching, input])
|
|
||||||
|
|
||||||
const handleKeyDown = useCallback(
|
const handleKeyDown = useCallback(
|
||||||
(e: React.KeyboardEvent) => {
|
(e: React.KeyboardEvent) => {
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,12 @@ class ModalManagerService {
|
||||||
}
|
}
|
||||||
|
|
||||||
register(id: string, cb: () => void) {
|
register(id: string, cb: () => void) {
|
||||||
|
const modal = this.modals.find((m) => m.id === id)
|
||||||
|
if (modal) {
|
||||||
|
// already registered, update callback
|
||||||
|
modal.cb = cb
|
||||||
|
return
|
||||||
|
}
|
||||||
this.modals.push({ id, cb })
|
this.modals.push({ id, cb })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue