Spaces:
Paused
Paused
File size: 804 Bytes
a0fda44 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import { useState, useEffect } from "react";
import { useSelector } from "react-redux";
const useContactList = () => {
const contacts = useSelector((state) => state.contactsReducer);
const [searchedContacts, setSearchedContacts] = useState([]);
const [searchValue, setSearchValue] = useState("");
const handleSearchValue = (event) => {
setSearchValue(event.target.value);
};
useEffect(() => {
if (searchValue) {
setSearchedContacts(
contacts.filter((contact) =>
contact.name.toLowerCase().startsWith(searchValue.toLowerCase())
)
);
} else {
setSearchedContacts(contacts);
}
}, [searchValue, contacts]);
return {
contacts: searchedContacts,
handleSearchValue,
searchValue,
};
};
export default useContactList;
|