@bbl-digital/snorre 3.0.10 → 3.0.14
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/bundle.js +29 -19
- package/esm/core/Autocomplete/hooks/useAutocomplete.js +26 -17
- package/esm/core/Autocomplete/index.js +3 -2
- package/lib/core/Autocomplete/hooks/useAutocomplete.d.ts +1 -0
- package/lib/core/Autocomplete/hooks/useAutocomplete.d.ts.map +1 -1
- package/lib/core/Autocomplete/hooks/useAutocomplete.js +26 -17
- package/lib/core/Autocomplete/index.d.ts.map +1 -1
- package/lib/core/Autocomplete/index.js +3 -2
- package/package.json +1 -1
package/dist/bundle.js
CHANGED
@@ -31850,41 +31850,45 @@
|
|
31850
31850
|
const [inputDirty, setInputDirty] = React.useState(false);
|
31851
31851
|
const debouncedValue = useDebounce(value, props.debounceDelay ?? 0);
|
31852
31852
|
const [inputValues, setInputValues] = React.useState(props.values);
|
31853
|
+
const labelKey = props.labelFromValues ?? 'label';
|
31853
31854
|
|
31854
31855
|
const handleValueClick = value => {
|
31855
|
-
setShowValues(false);
|
31856
31856
|
props.onSelectItem?.(value);
|
31857
|
+
if (props.fuzzy) setValueChanged(value[labelKey]);
|
31858
|
+
setShowValues(false);
|
31857
31859
|
};
|
31858
31860
|
|
31859
31861
|
const clearSelectedItem = () => handleValueClick({
|
31860
|
-
[
|
31862
|
+
[labelKey]: '',
|
31861
31863
|
[props.keyFromValues ?? 'key']: ''
|
31862
31864
|
});
|
31863
31865
|
|
31864
31866
|
const onInputChange = e => {
|
31865
31867
|
setInputDirty(true);
|
31866
|
-
if (
|
31868
|
+
if (renderedValues) setHighlightedIndex(0);
|
31867
31869
|
setValueChanged(e.target.value); // Should not use onChange whenever we have fuzzy search on
|
31868
31870
|
|
31869
|
-
if (props.fuzzy)
|
31871
|
+
if (props.fuzzy) {
|
31872
|
+
setShowValues(Boolean(value));
|
31873
|
+
return;
|
31874
|
+
}
|
31875
|
+
|
31870
31876
|
if (props.onChange) props.onChange(e);
|
31871
31877
|
};
|
31872
31878
|
|
31873
31879
|
const handleOnInputClick = () => {
|
31874
|
-
if (
|
31880
|
+
if (renderedValues?.length) setHighlightedIndex(0);
|
31875
31881
|
setShowValues(true);
|
31876
31882
|
};
|
31877
31883
|
|
31878
31884
|
const onFuzzyBlur = e => {
|
31879
|
-
// If the value of the input is changed, and does not match the value of the values array,
|
31880
|
-
// we should revert back the input value to the original value
|
31881
31885
|
if (e.target.value === props.value) return; // If target value is the same as a value from the values array, we should set the value for the user
|
31882
31886
|
|
31883
31887
|
if (inputValues?.length) {
|
31884
|
-
const valueInInputValues = inputValues.find(item => item[
|
31888
|
+
const valueInInputValues = inputValues.find(item => item[labelKey].length && item[labelKey].toLowerCase() === e.target.value.toLowerCase());
|
31885
31889
|
|
31886
31890
|
if (valueInInputValues) {
|
31887
|
-
const val = valueInInputValues[
|
31891
|
+
const val = valueInInputValues[labelKey];
|
31888
31892
|
setValueChanged(val);
|
31889
31893
|
handleValueClick(valueInInputValues);
|
31890
31894
|
return;
|
@@ -31892,14 +31896,18 @@
|
|
31892
31896
|
}
|
31893
31897
|
};
|
31894
31898
|
|
31899
|
+
const onFuzzyFocus = () => {
|
31900
|
+
setValueChanged('');
|
31901
|
+
if (props.values?.length) setShowValues(true);
|
31902
|
+
};
|
31903
|
+
|
31895
31904
|
const renderedValues = React.useMemo(() => {
|
31896
31905
|
if (!props.values?.length) return [];
|
31897
31906
|
|
31898
31907
|
if (props.fuzzy) {
|
31899
31908
|
const fuzzyOptions = {
|
31900
|
-
keys: [
|
31909
|
+
keys: [labelKey]
|
31901
31910
|
};
|
31902
|
-
setShowValues(Boolean(value));
|
31903
31911
|
return matchSorter.matchSorter(props.values, value ?? '', fuzzyOptions);
|
31904
31912
|
}
|
31905
31913
|
|
@@ -31928,11 +31936,11 @@
|
|
31928
31936
|
});
|
31929
31937
|
}
|
31930
31938
|
|
31931
|
-
if (highlightedIndex === null || !
|
31939
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
31932
31940
|
return;
|
31933
31941
|
}
|
31934
31942
|
|
31935
|
-
const item =
|
31943
|
+
const item = renderedValues[highlightedIndex];
|
31936
31944
|
handleValueClick(item);
|
31937
31945
|
setShowValues(false);
|
31938
31946
|
};
|
@@ -31942,7 +31950,7 @@
|
|
31942
31950
|
e.stopPropagation();
|
31943
31951
|
if (!showValues) return;
|
31944
31952
|
|
31945
|
-
if (highlightedIndex === null || !
|
31953
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
31946
31954
|
return;
|
31947
31955
|
}
|
31948
31956
|
|
@@ -31962,13 +31970,13 @@
|
|
31962
31970
|
e.preventDefault();
|
31963
31971
|
e.stopPropagation();
|
31964
31972
|
|
31965
|
-
if (highlightedIndex === null || !
|
31973
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
31966
31974
|
return;
|
31967
31975
|
}
|
31968
31976
|
|
31969
31977
|
const newHighlightIndex = highlightedIndex + 1;
|
31970
31978
|
|
31971
|
-
if (newHighlightIndex ===
|
31979
|
+
if (newHighlightIndex === renderedValues.length) {
|
31972
31980
|
setHighlightedIndex(null);
|
31973
31981
|
setShowValues(false);
|
31974
31982
|
return;
|
@@ -31996,7 +32004,7 @@
|
|
31996
32004
|
key
|
31997
32005
|
} = e;
|
31998
32006
|
|
31999
|
-
if (showValues &&
|
32007
|
+
if (showValues && renderedValues?.length) {
|
32000
32008
|
setHighlightedIndex(0);
|
32001
32009
|
} else {
|
32002
32010
|
setHighlightedIndex(null);
|
@@ -32058,6 +32066,7 @@
|
|
32058
32066
|
handleCustomOnKeyDown,
|
32059
32067
|
handleOnInputClick,
|
32060
32068
|
onFuzzyBlur,
|
32069
|
+
onFuzzyFocus,
|
32061
32070
|
value,
|
32062
32071
|
highlightedIndex,
|
32063
32072
|
showValues,
|
@@ -32092,7 +32101,8 @@
|
|
32092
32101
|
handleOnKeyDown,
|
32093
32102
|
handleValueClick,
|
32094
32103
|
onInputChange,
|
32095
|
-
onFuzzyBlur
|
32104
|
+
onFuzzyBlur,
|
32105
|
+
onFuzzyFocus
|
32096
32106
|
} = useAutocomplete(props);
|
32097
32107
|
React.useEffect(() => {
|
32098
32108
|
const handleClickOutside = e => {
|
@@ -32137,7 +32147,7 @@
|
|
32137
32147
|
disabled: props.disabled,
|
32138
32148
|
autoFocus: props.focus,
|
32139
32149
|
onBlur: props.fuzzy ? onFuzzyBlur : props.onBlur,
|
32140
|
-
onFocus: props.onFocus,
|
32150
|
+
onFocus: props.fuzzy ? onFuzzyFocus : props.onFocus,
|
32141
32151
|
onChange: onInputChange,
|
32142
32152
|
onKeyDown: props.onKeyDown ? handleCustomOnKeyDown : handleOnKeyDown,
|
32143
32153
|
onClick: handleOnInputClick,
|
@@ -10,41 +10,45 @@ const useAutocomplete = props => {
|
|
10
10
|
const [inputDirty, setInputDirty] = useState(false);
|
11
11
|
const debouncedValue = useDebounce(value, props.debounceDelay ?? 0);
|
12
12
|
const [inputValues, setInputValues] = useState(props.values);
|
13
|
+
const labelKey = props.labelFromValues ?? 'label';
|
13
14
|
|
14
15
|
const handleValueClick = value => {
|
15
|
-
setShowValues(false);
|
16
16
|
props.onSelectItem?.(value);
|
17
|
+
if (props.fuzzy) setValueChanged(value[labelKey]);
|
18
|
+
setShowValues(false);
|
17
19
|
};
|
18
20
|
|
19
21
|
const clearSelectedItem = () => handleValueClick({
|
20
|
-
[
|
22
|
+
[labelKey]: '',
|
21
23
|
[props.keyFromValues ?? 'key']: ''
|
22
24
|
});
|
23
25
|
|
24
26
|
const onInputChange = e => {
|
25
27
|
setInputDirty(true);
|
26
|
-
if (
|
28
|
+
if (renderedValues) setHighlightedIndex(0);
|
27
29
|
setValueChanged(e.target.value); // Should not use onChange whenever we have fuzzy search on
|
28
30
|
|
29
|
-
if (props.fuzzy)
|
31
|
+
if (props.fuzzy) {
|
32
|
+
setShowValues(Boolean(value));
|
33
|
+
return;
|
34
|
+
}
|
35
|
+
|
30
36
|
if (props.onChange) props.onChange(e);
|
31
37
|
};
|
32
38
|
|
33
39
|
const handleOnInputClick = () => {
|
34
|
-
if (
|
40
|
+
if (renderedValues?.length) setHighlightedIndex(0);
|
35
41
|
setShowValues(true);
|
36
42
|
};
|
37
43
|
|
38
44
|
const onFuzzyBlur = e => {
|
39
|
-
// If the value of the input is changed, and does not match the value of the values array,
|
40
|
-
// we should revert back the input value to the original value
|
41
45
|
if (e.target.value === props.value) return; // If target value is the same as a value from the values array, we should set the value for the user
|
42
46
|
|
43
47
|
if (inputValues?.length) {
|
44
|
-
const valueInInputValues = inputValues.find(item => item[
|
48
|
+
const valueInInputValues = inputValues.find(item => item[labelKey].length && item[labelKey].toLowerCase() === e.target.value.toLowerCase());
|
45
49
|
|
46
50
|
if (valueInInputValues) {
|
47
|
-
const val = valueInInputValues[
|
51
|
+
const val = valueInInputValues[labelKey];
|
48
52
|
setValueChanged(val);
|
49
53
|
handleValueClick(valueInInputValues);
|
50
54
|
return;
|
@@ -52,14 +56,18 @@ const useAutocomplete = props => {
|
|
52
56
|
}
|
53
57
|
};
|
54
58
|
|
59
|
+
const onFuzzyFocus = () => {
|
60
|
+
setValueChanged('');
|
61
|
+
if (props.values?.length) setShowValues(true);
|
62
|
+
};
|
63
|
+
|
55
64
|
const renderedValues = useMemo(() => {
|
56
65
|
if (!props.values?.length) return [];
|
57
66
|
|
58
67
|
if (props.fuzzy) {
|
59
68
|
const fuzzyOptions = {
|
60
|
-
keys: [
|
69
|
+
keys: [labelKey]
|
61
70
|
};
|
62
|
-
setShowValues(Boolean(value));
|
63
71
|
return matchSorter(props.values, value ?? '', fuzzyOptions);
|
64
72
|
}
|
65
73
|
|
@@ -88,11 +96,11 @@ const useAutocomplete = props => {
|
|
88
96
|
});
|
89
97
|
}
|
90
98
|
|
91
|
-
if (highlightedIndex === null || !
|
99
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
92
100
|
return;
|
93
101
|
}
|
94
102
|
|
95
|
-
const item =
|
103
|
+
const item = renderedValues[highlightedIndex];
|
96
104
|
handleValueClick(item);
|
97
105
|
setShowValues(false);
|
98
106
|
};
|
@@ -102,7 +110,7 @@ const useAutocomplete = props => {
|
|
102
110
|
e.stopPropagation();
|
103
111
|
if (!showValues) return;
|
104
112
|
|
105
|
-
if (highlightedIndex === null || !
|
113
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
106
114
|
return;
|
107
115
|
}
|
108
116
|
|
@@ -122,13 +130,13 @@ const useAutocomplete = props => {
|
|
122
130
|
e.preventDefault();
|
123
131
|
e.stopPropagation();
|
124
132
|
|
125
|
-
if (highlightedIndex === null || !
|
133
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
126
134
|
return;
|
127
135
|
}
|
128
136
|
|
129
137
|
const newHighlightIndex = highlightedIndex + 1;
|
130
138
|
|
131
|
-
if (newHighlightIndex ===
|
139
|
+
if (newHighlightIndex === renderedValues.length) {
|
132
140
|
setHighlightedIndex(null);
|
133
141
|
setShowValues(false);
|
134
142
|
return;
|
@@ -156,7 +164,7 @@ const useAutocomplete = props => {
|
|
156
164
|
key
|
157
165
|
} = e;
|
158
166
|
|
159
|
-
if (showValues &&
|
167
|
+
if (showValues && renderedValues?.length) {
|
160
168
|
setHighlightedIndex(0);
|
161
169
|
} else {
|
162
170
|
setHighlightedIndex(null);
|
@@ -221,6 +229,7 @@ const useAutocomplete = props => {
|
|
221
229
|
handleCustomOnKeyDown,
|
222
230
|
handleOnInputClick,
|
223
231
|
onFuzzyBlur,
|
232
|
+
onFuzzyFocus,
|
224
233
|
value,
|
225
234
|
highlightedIndex,
|
226
235
|
showValues,
|
@@ -37,7 +37,8 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(({
|
|
37
37
|
handleOnKeyDown,
|
38
38
|
handleValueClick,
|
39
39
|
onInputChange,
|
40
|
-
onFuzzyBlur
|
40
|
+
onFuzzyBlur,
|
41
|
+
onFuzzyFocus
|
41
42
|
} = useAutocomplete(props);
|
42
43
|
useEffect(() => {
|
43
44
|
const handleClickOutside = e => {
|
@@ -82,7 +83,7 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(({
|
|
82
83
|
disabled: props.disabled,
|
83
84
|
autoFocus: props.focus,
|
84
85
|
onBlur: props.fuzzy ? onFuzzyBlur : props.onBlur,
|
85
|
-
onFocus: props.onFocus,
|
86
|
+
onFocus: props.fuzzy ? onFuzzyFocus : props.onFocus,
|
86
87
|
onChange: onInputChange,
|
87
88
|
onKeyDown: props.onKeyDown ? handleCustomOnKeyDown : handleOnKeyDown,
|
88
89
|
onClick: handleOnInputClick,
|
@@ -11,6 +11,7 @@ declare const useAutocomplete: (props: IProps) => {
|
|
11
11
|
handleCustomOnKeyDown: (e: React.KeyboardEvent<HTMLInputElement>) => void;
|
12
12
|
handleOnInputClick: () => void;
|
13
13
|
onFuzzyBlur: (e: React.FocusEvent<HTMLInputElement, Element>) => void;
|
14
|
+
onFuzzyFocus: () => void;
|
14
15
|
value: string;
|
15
16
|
highlightedIndex: number | null;
|
16
17
|
showValues: boolean;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useAutocomplete.d.ts","sourceRoot":"","sources":["../../../../src/packages/core/Autocomplete/hooks/useAutocomplete.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAE1D,QAAA,MAAM,eAAe,UAAW,MAAM;;;;;;
|
1
|
+
{"version":3,"file":"useAutocomplete.d.ts","sourceRoot":"","sources":["../../../../src/packages/core/Autocomplete/hooks/useAutocomplete.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAE1D,QAAA,MAAM,eAAe,UAAW,MAAM;;;;;;uBA2BV,MAAM,WAAW,CAAC,gBAAgB,CAAC;yBA6IjC,mBAAmB,CAAC,gBAAgB,CAAC;+BAZ/B,mBAAmB,CAAC,gBAAgB,CAAC;;qBA7G/C,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,CAAC;;;;;;CAuMpE,CAAA;AAED,eAAe,eAAe,CAAA"}
|
@@ -10,41 +10,45 @@ const useAutocomplete = props => {
|
|
10
10
|
const [inputDirty, setInputDirty] = useState(false);
|
11
11
|
const debouncedValue = useDebounce(value, props.debounceDelay ?? 0);
|
12
12
|
const [inputValues, setInputValues] = useState(props.values);
|
13
|
+
const labelKey = props.labelFromValues ?? 'label';
|
13
14
|
|
14
15
|
const handleValueClick = value => {
|
15
|
-
setShowValues(false);
|
16
16
|
props.onSelectItem?.(value);
|
17
|
+
if (props.fuzzy) setValueChanged(value[labelKey]);
|
18
|
+
setShowValues(false);
|
17
19
|
};
|
18
20
|
|
19
21
|
const clearSelectedItem = () => handleValueClick({
|
20
|
-
[
|
22
|
+
[labelKey]: '',
|
21
23
|
[props.keyFromValues ?? 'key']: ''
|
22
24
|
});
|
23
25
|
|
24
26
|
const onInputChange = e => {
|
25
27
|
setInputDirty(true);
|
26
|
-
if (
|
28
|
+
if (renderedValues) setHighlightedIndex(0);
|
27
29
|
setValueChanged(e.target.value); // Should not use onChange whenever we have fuzzy search on
|
28
30
|
|
29
|
-
if (props.fuzzy)
|
31
|
+
if (props.fuzzy) {
|
32
|
+
setShowValues(Boolean(value));
|
33
|
+
return;
|
34
|
+
}
|
35
|
+
|
30
36
|
if (props.onChange) props.onChange(e);
|
31
37
|
};
|
32
38
|
|
33
39
|
const handleOnInputClick = () => {
|
34
|
-
if (
|
40
|
+
if (renderedValues?.length) setHighlightedIndex(0);
|
35
41
|
setShowValues(true);
|
36
42
|
};
|
37
43
|
|
38
44
|
const onFuzzyBlur = e => {
|
39
|
-
// If the value of the input is changed, and does not match the value of the values array,
|
40
|
-
// we should revert back the input value to the original value
|
41
45
|
if (e.target.value === props.value) return; // If target value is the same as a value from the values array, we should set the value for the user
|
42
46
|
|
43
47
|
if (inputValues?.length) {
|
44
|
-
const valueInInputValues = inputValues.find(item => item[
|
48
|
+
const valueInInputValues = inputValues.find(item => item[labelKey].length && item[labelKey].toLowerCase() === e.target.value.toLowerCase());
|
45
49
|
|
46
50
|
if (valueInInputValues) {
|
47
|
-
const val = valueInInputValues[
|
51
|
+
const val = valueInInputValues[labelKey];
|
48
52
|
setValueChanged(val);
|
49
53
|
handleValueClick(valueInInputValues);
|
50
54
|
return;
|
@@ -52,14 +56,18 @@ const useAutocomplete = props => {
|
|
52
56
|
}
|
53
57
|
};
|
54
58
|
|
59
|
+
const onFuzzyFocus = () => {
|
60
|
+
setValueChanged('');
|
61
|
+
if (props.values?.length) setShowValues(true);
|
62
|
+
};
|
63
|
+
|
55
64
|
const renderedValues = useMemo(() => {
|
56
65
|
if (!props.values?.length) return [];
|
57
66
|
|
58
67
|
if (props.fuzzy) {
|
59
68
|
const fuzzyOptions = {
|
60
|
-
keys: [
|
69
|
+
keys: [labelKey]
|
61
70
|
};
|
62
|
-
setShowValues(Boolean(value));
|
63
71
|
return matchSorter(props.values, value ?? '', fuzzyOptions);
|
64
72
|
}
|
65
73
|
|
@@ -88,11 +96,11 @@ const useAutocomplete = props => {
|
|
88
96
|
});
|
89
97
|
}
|
90
98
|
|
91
|
-
if (highlightedIndex === null || !
|
99
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
92
100
|
return;
|
93
101
|
}
|
94
102
|
|
95
|
-
const item =
|
103
|
+
const item = renderedValues[highlightedIndex];
|
96
104
|
handleValueClick(item);
|
97
105
|
setShowValues(false);
|
98
106
|
};
|
@@ -102,7 +110,7 @@ const useAutocomplete = props => {
|
|
102
110
|
e.stopPropagation();
|
103
111
|
if (!showValues) return;
|
104
112
|
|
105
|
-
if (highlightedIndex === null || !
|
113
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
106
114
|
return;
|
107
115
|
}
|
108
116
|
|
@@ -122,13 +130,13 @@ const useAutocomplete = props => {
|
|
122
130
|
e.preventDefault();
|
123
131
|
e.stopPropagation();
|
124
132
|
|
125
|
-
if (highlightedIndex === null || !
|
133
|
+
if (highlightedIndex === null || !renderedValues?.length) {
|
126
134
|
return;
|
127
135
|
}
|
128
136
|
|
129
137
|
const newHighlightIndex = highlightedIndex + 1;
|
130
138
|
|
131
|
-
if (newHighlightIndex ===
|
139
|
+
if (newHighlightIndex === renderedValues.length) {
|
132
140
|
setHighlightedIndex(null);
|
133
141
|
setShowValues(false);
|
134
142
|
return;
|
@@ -156,7 +164,7 @@ const useAutocomplete = props => {
|
|
156
164
|
key
|
157
165
|
} = e;
|
158
166
|
|
159
|
-
if (showValues &&
|
167
|
+
if (showValues && renderedValues?.length) {
|
160
168
|
setHighlightedIndex(0);
|
161
169
|
} else {
|
162
170
|
setHighlightedIndex(null);
|
@@ -221,6 +229,7 @@ const useAutocomplete = props => {
|
|
221
229
|
handleCustomOnKeyDown,
|
222
230
|
handleOnInputClick,
|
223
231
|
onFuzzyBlur,
|
232
|
+
onFuzzyFocus,
|
224
233
|
value,
|
225
234
|
highlightedIndex,
|
226
235
|
showValues,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Autocomplete/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAa,YAAY,EAAE,MAAM,OAAO,CAAA;AAQtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,oBAAY,GAAG,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAA;AAEhD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/core/Autocomplete/index.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAa,YAAY,EAAE,MAAM,OAAO,CAAA;AAQtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,oBAAY,GAAG,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAA;AAEhD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAqLjC,CAAA;AAEF,eAAe,YAAY,CAAA"}
|
@@ -37,7 +37,8 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(({
|
|
37
37
|
handleOnKeyDown,
|
38
38
|
handleValueClick,
|
39
39
|
onInputChange,
|
40
|
-
onFuzzyBlur
|
40
|
+
onFuzzyBlur,
|
41
|
+
onFuzzyFocus
|
41
42
|
} = useAutocomplete(props);
|
42
43
|
useEffect(() => {
|
43
44
|
const handleClickOutside = e => {
|
@@ -82,7 +83,7 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(({
|
|
82
83
|
disabled: props.disabled,
|
83
84
|
autoFocus: props.focus,
|
84
85
|
onBlur: props.fuzzy ? onFuzzyBlur : props.onBlur,
|
85
|
-
onFocus: props.onFocus,
|
86
|
+
onFocus: props.fuzzy ? onFuzzyFocus : props.onFocus,
|
86
87
|
onChange: onInputChange,
|
87
88
|
onKeyDown: props.onKeyDown ? handleCustomOnKeyDown : handleOnKeyDown,
|
88
89
|
onClick: handleOnInputClick,
|