it able t taking tag from any device
This commit is contained in:
parent
bc657eebca
commit
3e61a9959e
@ -77,6 +77,27 @@ useEffect(() => {
|
|||||||
setTags((prev) => prev.slice(0, -1));
|
setTags((prev) => prev.slice(0, -1));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const handleInputKey = (e) => {
|
||||||
|
const key = e.key?.toLowerCase();
|
||||||
|
|
||||||
|
if ((key === "enter" || key === " " || e.code === "Space") && input.trim() !== "") {
|
||||||
|
e.preventDefault();
|
||||||
|
const existing = options.find(
|
||||||
|
(opt) => opt.name.toLowerCase() === input.trim().toLowerCase()
|
||||||
|
);
|
||||||
|
const newTag = existing
|
||||||
|
? existing
|
||||||
|
: {
|
||||||
|
id: null,
|
||||||
|
name: input.trim(),
|
||||||
|
description: input.trim(),
|
||||||
|
};
|
||||||
|
addTag(newTag);
|
||||||
|
} else if ((key === "backspace" || e.code === "Backspace") && input === "") {
|
||||||
|
setTags((prev) => prev.slice(0, -1));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
const handleSuggestionClick = (suggestion) => {
|
const handleSuggestionClick = (suggestion) => {
|
||||||
addTag(suggestion);
|
addTag(suggestion);
|
||||||
@ -122,6 +143,7 @@ useEffect(() => {
|
|||||||
value={input}
|
value={input}
|
||||||
onChange={(e) => setInput(e.target.value)}
|
onChange={(e) => setInput(e.target.value)}
|
||||||
onKeyDown={handleInputKeyDown}
|
onKeyDown={handleInputKeyDown}
|
||||||
|
onKeyUp={handleInputKey}
|
||||||
placeholder={placeholder}
|
placeholder={placeholder}
|
||||||
style={{
|
style={{
|
||||||
border: "none",
|
border: "none",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user