bugfix: invitation link copy option disapearing fixed. route problem for unauthorizrd users opening invitation link fixed.
This commit is contained in:
@@ -15,6 +15,17 @@ export const apiClient = axios.create({
|
||||
timeout: 10000,
|
||||
});
|
||||
|
||||
/** Invitation preview/accept must work with no cookies (public API, no JWT). */
|
||||
function isPublicInvitationRequest(url: string | undefined): boolean {
|
||||
if (!url) return false;
|
||||
return (
|
||||
url.includes('/staff/invitations/preview') ||
|
||||
url.includes('/staff/invitations/accept') ||
|
||||
url.includes('/organizations/invitations/preview') ||
|
||||
url.includes('/organizations/invitations/accept')
|
||||
);
|
||||
}
|
||||
|
||||
// ❌ REMOVE request interceptor completely (no Authorization header)
|
||||
|
||||
// ✅ Response interceptor
|
||||
@@ -23,7 +34,11 @@ apiClient.interceptors.response.use(
|
||||
async (error: AxiosError) => {
|
||||
const originalRequest = error.config as CustomAxiosRequestConfig;
|
||||
|
||||
if (error.response?.status === 401 && !originalRequest._retry) {
|
||||
if (
|
||||
error.response?.status === 401 &&
|
||||
!originalRequest._retry &&
|
||||
!isPublicInvitationRequest(originalRequest.url)
|
||||
) {
|
||||
originalRequest._retry = true;
|
||||
|
||||
try {
|
||||
|
||||
@@ -63,6 +63,21 @@ export const staffApi = {
|
||||
return response.data;
|
||||
},
|
||||
|
||||
getInvitationLink: async (
|
||||
membershipId: string,
|
||||
): Promise<{
|
||||
success: boolean;
|
||||
data: {
|
||||
membershipId: string;
|
||||
invitationId: string;
|
||||
email: string;
|
||||
invitationUrl: string;
|
||||
};
|
||||
}> => {
|
||||
const response = await apiClient.post(`/staff/members/${membershipId}/invitation-link`);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
previewInvite: async (token: string): Promise<PreviewInviteResponse> => {
|
||||
const response = await apiClient.get(`/staff/invitations/preview?token=${encodeURIComponent(token)}`);
|
||||
return response.data;
|
||||
|
||||
Reference in New Issue
Block a user