Add several endpoints

This commit is contained in:
Alex Holliday
2024-08-18 12:20:28 -07:00
parent 5beb0684a7
commit f78e5ca94c
5 changed files with 29 additions and 9 deletions

View File

@@ -52,10 +52,7 @@ const TeamPanel = () => {
useEffect(() => {
const fetchTeam = async () => {
try {
const response = await axiosInstance.get("/auth/users", {
headers: { Authorization: `Bearer ${authToken}` },
});
const response = await axiosInstance.getAllUsers(authToken);
setMembers(response.data.data);
} catch (error) {
createToast({

View File

@@ -8,7 +8,7 @@ const withAdminCheck = (WrappedComponent) => {
useEffect(() => {
axiosInstance
.get("/auth/users/admin")
.doesAdminExist()
.then((response) => {
if (response.data.data === true) {
navigate("/login");

View File

@@ -249,7 +249,7 @@ const Login = () => {
useEffect(() => {
axiosInstance
.get("/auth/users/admin")
.doesAdminExist()
.then((response) => {
if (response.data.data === false) {
navigate("/register");

View File

@@ -397,9 +397,7 @@ const Register = ({ isAdmin }) => {
const fetchInvite = async () => {
if (token !== undefined) {
try {
const res = await axiosInstance.post(`/auth/invite/verify`, {
token,
});
const res = await axiosInstance.verifyInvitationToken(token);
const { role, email } = res.data.data;
console.log(role);
setForm({ ...form, email, role });

View File

@@ -151,4 +151,29 @@ axiosInstance.setNewPassword = async (recoveryToken, form) => {
});
};
// **********************************
// Check for admin user
// **********************************
axiosInstance.doesAdminExist = async () => {
return axiosInstance.get("/auth/users/admin");
};
// **********************************
// Get all users
// **********************************
axiosInstance.getAllUsers = async (authToken) => {
return axiosInstance.get("/auth/users", {
headers: { Authorization: `Bearer ${authToken}` },
});
};
// **********************************
// Verify Invitation Token
// **********************************
axiosInstance.verifyInvitationToken = async (token) => {
return axiosInstance.post(`/auth/invite/verify`, {
token,
});
};
export default axiosInstance;