update role

This commit is contained in:
hamid zarghami
2025-11-16 15:28:02 +03:30
parent 63e9a80bb6
commit ac5276dbfc
6 changed files with 152 additions and 9 deletions
+21
View File
@@ -1,5 +1,6 @@
import * as api from "../service/RolesService";
import { useQuery, useMutation, useQueryClient } from "@tanstack/react-query";
import type { CreateRoleType } from "../types/Types";
export const useGetRoles = (params?: api.GetRolesParams) => {
return useQuery({
@@ -8,6 +9,14 @@ export const useGetRoles = (params?: api.GetRolesParams) => {
});
};
export const useGetRoleDetails = (id: string) => {
return useQuery({
queryKey: ["roles", id],
queryFn: () => api.getRoleDetails(id),
enabled: !!id,
});
};
export const useDeleteRole = () => {
const queryClient = useQueryClient();
return useMutation({
@@ -27,3 +36,15 @@ export const useCreateRole = () => {
},
});
};
export const useUpdateRole = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: ({ id, params }: { id: string; params: CreateRoleType }) =>
api.updateRole(id, params),
onSuccess: (_, { id }) => {
queryClient.invalidateQueries({ queryKey: ["roles"] });
queryClient.invalidateQueries({ queryKey: ["roles", id] });
},
});
};