diff --git a/src/api/getAdminUser.tsx b/src/api/getAdminUser.tsx new file mode 100644 index 00000000..77923356 --- /dev/null +++ b/src/api/getAdminUser.tsx @@ -0,0 +1,39 @@ +import { useEffect, useState } from 'react'; +import axios from 'axios'; + +const BASE_URL = import.meta.env.VITE_API_URL; + +export const getAllUsers = async () => { + const accessToken = localStorage.getItem('accessToken'); + const refreshToken = localStorage.getItem('refreshToken'); + + return axios.get(`${BASE_URL}/api/v1/admin/users/all`, { + headers: { + Authorization: `Bearer ${accessToken}`, + Authorization_refresh: `Bearer ${refreshToken}`, + }, + }); +}; + +export const useGetAllUsers = () => { + const [allUsers, setAllUsers] = useState([]); + const [error, setError] = useState(null); + + useEffect(() => { + const fetchUsers = async () => { + try { + const response = await getAllUsers(); + setAllUsers(response.data.data); + setError(null); + } catch (err: any) { + setError(err.response?.data?.message); + } + }; + + fetchUsers(); + }, []); + + return { allUsers, error }; +}; + +export default useGetAllUsers;