misc: moved the rest of project group methods to IDs

This commit is contained in:
Sheen Capadngan
2024-09-23 17:59:10 +08:00
parent 2352e29902
commit 839f0c7e1c
13 changed files with 175 additions and 192 deletions
+19 -18
View File
@@ -10,23 +10,24 @@ export const useAddGroupToWorkspace = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({
groupSlug,
projectSlug,
groupId,
projectId,
role
}: {
groupSlug: string;
projectSlug: string;
groupId: string;
projectId: string;
role?: string;
}) => {
const {
data: { groupMembership }
} = await apiRequest.post(`/api/v2/workspace/${projectSlug}/groups/${groupSlug}`, {
} = await apiRequest.post(`/api/v2/workspace/${projectId}/groups/${groupId}`, {
role
});
return groupMembership;
},
onSuccess: (_, { projectSlug }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectSlug));
onSuccess: (_, { projectId }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectId));
}
});
};
@@ -34,17 +35,17 @@ export const useAddGroupToWorkspace = () => {
export const useUpdateGroupWorkspaceRole = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({ groupSlug, projectSlug, roles }: TUpdateWorkspaceGroupRoleDTO) => {
mutationFn: async ({ groupId, projectId, roles }: TUpdateWorkspaceGroupRoleDTO) => {
const {
data: { groupMembership }
} = await apiRequest.patch(`/api/v2/workspace/${projectSlug}/groups/${groupSlug}`, {
} = await apiRequest.patch(`/api/v2/workspace/${projectId}/groups/${groupId}`, {
roles
});
return groupMembership;
},
onSuccess: (_, { projectSlug }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectSlug));
onSuccess: (_, { projectId }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectId));
}
});
};
@@ -53,20 +54,20 @@ export const useDeleteGroupFromWorkspace = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({
groupSlug,
projectSlug
groupId,
projectId
}: {
groupSlug: string;
projectSlug: string;
groupId: string;
projectId: string;
username?: string;
}) => {
const {
data: { groupMembership }
} = await apiRequest.delete(`/api/v2/workspace/${projectSlug}/groups/${groupSlug}`);
} = await apiRequest.delete(`/api/v2/workspace/${projectId}/groups/${groupId}`);
return groupMembership;
},
onSuccess: (_, { projectSlug, username }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectSlug));
onSuccess: (_, { projectId, username }) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceGroupMemberships(projectId));
if (username) {
queryClient.invalidateQueries(userKeys.listUserGroupMemberships(username));
+3 -3
View File
@@ -535,14 +535,14 @@ export const useGetWorkspaceIdentityMemberships = (
});
};
export const useListWorkspaceGroups = (projectSlug: string) => {
export const useListWorkspaceGroups = (projectId: string) => {
return useQuery({
queryKey: workspaceKeys.getWorkspaceGroupMemberships(projectSlug),
queryKey: workspaceKeys.getWorkspaceGroupMemberships(projectId),
queryFn: async () => {
const {
data: { groupMemberships }
} = await apiRequest.get<{ groupMemberships: TGroupMembership[] }>(
`/api/v2/workspace/${projectSlug}/groups`
`/api/v2/workspace/${projectId}/groups`
);
return groupMemberships;
},
+2 -2
View File
@@ -127,8 +127,8 @@ export type TUpdateWorkspaceIdentityRoleDTO = {
};
export type TUpdateWorkspaceGroupRoleDTO = {
groupSlug: string;
projectSlug: string;
groupId: string;
projectId: string;
roles: (
| {
role: string;