Skip to content

Commit da667eb

Browse files
committed
fix: update handleChange so it opens Downshift automatically
1 parent 97969f4 commit da667eb

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

ui/src/tag/TagFilterSelector.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react';
2-
import Downshift from 'downshift';
2+
import Downshift, {ControllerStateAndHelpers} from 'downshift';
33
import {makeStyles, Theme} from '@material-ui/core/styles';
44
import TextField from '@material-ui/core/TextField';
55
import Paper from '@material-ui/core/Paper';
@@ -67,11 +67,17 @@ export const TagFilterSelector: React.FC<TagFilterSelectorProps> = ({value: sele
6767
setInputValue(event.target.value);
6868
}
6969

70-
function handleChange(item: TagSelectorEntry) {
70+
function handleChange(item: TagSelectorEntry, state: ControllerStateAndHelpers<TagSelectorEntry>) {
71+
if (!item) {
72+
return;
73+
}
74+
7175
if (!item.value) {
7276
setInputValue(item.tag.key + ':');
77+
state.setState({isOpen: true});
7378
return;
7479
}
80+
7581
let newSelectedItem = [...selectedItem];
7682
if (newSelectedItem.indexOf(item) === -1) {
7783
newSelectedItem = [...newSelectedItem, item];
@@ -90,7 +96,7 @@ export const TagFilterSelector: React.FC<TagFilterSelectorProps> = ({value: sele
9096
<Downshift
9197
id="downshift-multiple"
9298
inputValue={inputValue}
93-
onChange={handleChange}
99+
onChange={handleChange(item, state)}
94100
itemToString={(item) => (item ? label(item) : '')}
95101
defaultIsOpen={false}>
96102
{({getInputProps, getItemProps, getLabelProps, isOpen, highlightedIndex}) => {

0 commit comments

Comments
 (0)