Skip to content

Commit eaa3f05

Browse files
sthurayvibbyg
authored andcommitted
Connect invite-user to Frontend
1 parent a613bb9 commit eaa3f05

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

frontend/src/APIClients/UserAPIClient.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ const get = async (): Promise<User[]> => {
1414
});
1515
return data;
1616
} catch (error) {
17-
throw new Error(`Failed to get entity: ${error}`);
17+
throw new Error(`Failed to get users. ${error instanceof Error ? error.message : "Unknown error occured."}`);
1818
}
1919
};
2020

@@ -33,4 +33,18 @@ const create = async (formData: CreateUserDTO): Promise<CreateUserDTO> => {
3333
}
3434
};
3535

36-
export default { get, create };
36+
const invite = async (email: string): Promise<void> => {
37+
const bearerToken = `Bearer ${getLocalStorageObjProperty(
38+
AUTHENTICATED_USER_KEY,
39+
"accessToken",
40+
)}`;
41+
try {
42+
await baseAPIClient.post("/auth/invite-user", { email }, {
43+
headers: { Authorization: bearerToken },
44+
});
45+
} catch (error) {
46+
throw new Error(`Failed to invite user with email '${email}'`)
47+
}
48+
}
49+
50+
export default { get, create, invite };

frontend/src/components/pages/UserManagementPage.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ const handleUserSubmit = async (formData: AddUserRequest) => {
3232
| "Staff"
3333
| "Volunteer",
3434
});
35+
await UserAPIClient.invite(formData.email);
3536
} catch (error) {
3637
throw error;
3738
}
@@ -50,7 +51,7 @@ const UserManagementPage = (): React.ReactElement => {
5051
setUsers(fetchedUsers);
5152
}
5253
} catch (error) {
53-
setErrorMessage(`Failed to get users: ${error}`);
54+
setErrorMessage(`${error}`);
5455
}
5556
};
5657

0 commit comments

Comments
 (0)