import { Dispatch, useEffect } from "react"; import { api } from "../API/API"; /** * Gets all usernames in the system and puts them in an array * @param props - A setStateAction for the array you want to put users in * @returns {void} Nothing * @example * const [users, setUsers] = useState([]); * GetAllUsers({ setUsersProp: setUsers }); */ function GetAllUsers(props: { setUsersProp: Dispatch>; }): void { const setUsers: Dispatch> = props.setUsersProp; useEffect(() => { const fetchUsers = async (): Promise => { try { const token = localStorage.getItem("accessToken") ?? ""; const response = await api.getAllUsers(token); if (response.success) { setUsers(response.data ?? []); } else { console.error("Failed to fetch users:", response.message); } } catch (error) { console.error("Error fetching users:", error); } }; void fetchUsers(); }, [setUsers]); } export default GetAllUsers;